板子DIY中的说明。自己感觉还是挺有才的。
5月23日有更新,电容电阻,按键又添加了很多,所用到的基本补全。未采购的器件CAN没有焊接,其它除少量去耦电容未焊接,其它都喊上了。0欧电阻嫌麻烦没焊接的直接用焊锡短路了。
XiLiHuTu_template.rar
后期的工程文件都是基于此模板编写的程序。
详细的工程建立工程在此不再赘述,参照以上三大教程就可以自主建立模板。
中断方式的USART程序调试成功,部分代码如下:
main.C中的相关代码:
int main (void)
{
GPIO_InitTypeDef gpioInit;
USART_InitTypeDef USART_InitStructure;
NVIC_InitTypeDef NVIC_InitStructure;
char *string;
//----- RCC initialization -------
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOE | RCC_APB2Periph_AFIO |
RCC_APB2Periph_USART1 , ENABLE);
//RCC_GetClockFreq(&RCC_ClockFreq);
//----- IO initialization -----
gpioInit.GPIO_Pin = led1|led2|led3|led4;
gpioInit.GPIO_Mode = GPIO_Mode_Out_PP;
gpioInit.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(led , &gpioInit); //initialiazate gpio
GPIO_SetBits(led , gpioInit.GPIO_Pin); //Set pin
//GPIO_ResetBits(led , gpioInit.GPIO_Pin); //Reset pin
// Configure USART1 Tx (PA.09) as alternate push-pull --------
gpioInit.GPIO_Pin = GPIO_Pin_9;
gpioInit.GPIO_Speed = GPIO_Speed_50MHz;
gpioInit.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_Init(GPIOA, &gpioInit);
// Configure USART1 Tx (PA.10) as alternate push-pull --------
gpioInit.GPIO_Pin = GPIO_Pin_10;
gpioInit.GPIO_Speed = GPIO_Speed_50MHz;
gpioInit.GPIO_Mode = GPIO_Mode_IN_FLOATING;
GPIO_Init(GPIOA, &gpioInit);
//----- NVIC initialization -----
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0); // 抢占式优先级别
NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn;//指定中断源
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;// 指定响应优先级别1
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
//----- UART initialization ----
//0-----串口参数配置------
USART_InitStructure.USART_BaudRate = 19200; //设置波特率为19200
USART_InitStructure.USART_WordLength = USART_WordLength_8b; //设置数据位为8位
USART_InitStructure.USART_StopBits = USART_StopBits_1; //设置停止位为1位
USART_InitStructure.USART_Parity = USART_Parity_No; //无奇偶校验
USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; //没有硬件流控
USART_InitStructure.USART_Mode = USART_Mode_Tx | USART_Mode_Rx; //send and receive mode
//0-----------------------
USART_Init(USART1, &USART_InitStructure); //initialization USART1
USART_Cmd(USART1 , ENABLE); //enable USART1 modulation
USART_ITConfig(USART1, USART_IT_RXNE, ENABLE); //enable USART1 interruption
//查询方式发送数据
string = "www.hi.baidu.com/th152210\n";
GPIO_ResetBits(led , led1|led2); //Reset pin
putString(string,0); //send string
GPIO_SetBits(led , led1|led2); //Set pin
while(1)
{
}
}
STM32文件中的相关代码:
void USART1_IRQHandler(void)
{
if(USART_GetFlagStatus(USART1,USART_IT_RXNE)==SET)
{
USART_ClearITPendingBit(USART1,USART_IT_RXNE);//清除中断标志
USART_SendData(USART1 , USART_ReceiveData(USART1));
}
}
TIM_OCStructInit(& TIM_OCInitStructure); //默认参数
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; //工作状态
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;//设定为输出
TIM_OCInitStructure.TIM_Pulse = 0x2000; //占空长度
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;//高电平
TIM_OC4Init(TIM3, &TIM_OCInitStructure); //通道初始化
TIM_Cmd(TIM3, ENABLE); //启动TIM3
半个月前,我就开始了我的lcd调试,结果一无所获,原因1是我们单位大学生辞职的辞职,偷懒的偷懒,很多工作都压到我的身上了,所以,我只能在抽自己睡觉的时间开始我的设计和arm学习。2是我没有能够从基础出发,脑子没有条理的头绪。
今天晚上趁着休班的空,我又开始在eepw上开始我的帖子回复,发帖求工程。静下心来,想想是什么地方出了问题。
我自己建的程序文件是从别人那复制粘贴的,但错误很多。逐一排查后,将hex下载到的的开发板中,结果屏幕一片白色,没反应。一开始是从fsmc上改程序,怀疑是自己配置的问题。结果愣是把程序改正确后还是没有起色。然后,我才开始从我的驱动部分开始分析问题。
终于,我开始充满激情的搜我的lcd资料,还是从我买lcd地方看到,我的lcd驱动芯片是ssd1289,一块大石头开始从心里瓦解。因为我的工程文件中的lcd驱动不是ssd1289的。于是乎从其他工程文件"GLCD(show chinese)"中找到了我需要的配置设置,仍然是复制粘贴(我懒的自己编写,太多了,我lcd的资料又没有看全)。结果编译链接下载后,发现屏幕由白色变化成黑色白色各一半的画面。兴奋啊。终于能驱动了。
以下是我的工程文件。不断更新中,欢迎大家下载使用,仅供测试奥,亲。
th152210-eepw-lcd.rar
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
与电子爱好者谈读图四被打赏50分 | |
与电子爱好者谈读图二被打赏50分 | |
【FRDM-MCXN947评测】Core1适配运行FreeRtos被打赏50分 | |
【FRDM-MCXN947评测】双核调试被打赏50分 | |
【CPKCORRA8D1B评测】---移植CoreMark被打赏50分 | |
【CPKCORRA8D1B评测】---打开硬件定时器被打赏50分 | |
【FRDM-MCXA156评测】4、CAN loopback模式测试被打赏50分 | |
【CPKcorRA8D1评测】--搭建初始环境被打赏50分 | |
【FRDM-MCXA156评测】3、使用FlexIO模拟UART被打赏50分 | |
【FRDM-MCXA156评测】2、rt-thread MCXA156 BSP制作被打赏50分 |