微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > STM32的FSMC初始化LCD的奇葩问题

STM32的FSMC初始化LCD的奇葩问题

时间:10-02 整理:3721RD 点击:

现在在做一个智能家居工程项目,使用了ucgui,项目做的差不多了(此时ucgui正常使用),然后对项目代码进行优化,这是发现一个奇怪的问题,就是在主函数while(1)里屏蔽一个sprintf()调试打印信息,却导致ucgui对LCD初始化不成功,不屏蔽是正常的

void LCD_WriteReg(u8 LCD_Reg, u16 LCD_RegValue)

{        
1.        _LCD->LCD_REG = LCD_Reg;                //写入要写的寄存器序号         
2.        _LCD->LCD_RAM = LCD_RegValue;//写入数据                             
}
就死在这个函数里,正常_LCD->LCD_REG读取的数据是0x9325,可是出问题后是0xaaaa,有谁遇见过这样奇葩的问题没。

是不是你的串口发数据太慢了?
你是用中断发的吗?
没加液晶的时候出现问题没?
你现在开始的时候把总中断关掉,然后把所有的器件初始化之后再把总中断打开试试

现在问题解决了,是STM32库里的FSMC文件的版本太低了。

    好在解决了

决定加入一个STM32学习,有圈子才有分享和动力

加油

多谢  小编的分享

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top