STM32F407+OV5640+3.5寸TFTLCD遇到的奇怪问题

2019-07-20 00:39发布

按照原子哥探索版的电路图做了一个电路板,用LCD屏显示摄像头内容,用的原子哥的源程序,就修改成横屏、修改成30帧和直接使用摄像头功能。程序在探索者开发板能正常运行,在我画的电路板上执行LCD初始化的时候就一直进入HardFault_Handler,LCD黑屏,偶尔能正常运行,一步一步调试的话也能正常运行(直接烧原程序也会出现这种情况)。经过测试,发现在这个函数出了问题,u16 LCD_RD_DATA(void),执行这个函数后就进入HardFault_Handler。然后我在u16 LCD_RD_DATA(void)中ram=LCD->LCD_RAM后面的加了个delay_us(5),file:///C:Users80996AppDataRoamingTencentUsers809965167QQWinTempRichOle2I_~@9}7}QE5E_{Z`IAB%71.pngLCD屏便能在我画的电路板上运行,若不加便会经常开机后进入HardFault_Handler,无法运行。LCD调好后,又出现新的问题,在执行OV5640的程序u8 SCCB_WR_Byte(u8 dat)中的SCCB_SDA_IN();完后,[img]file:///C:Users80996AppDataRoamingTencentUsers809965167QQWinTempRichOleQ)T~@E~1KJ8MQ%EY_[%K70V.png[/img]又经常会进入HardFault_Handler,大神们帮帮忙[img]file:///C:Users80996AppDataRoamingTencentUsers809965167QQWinTempRichOle1(V74ZC[JQ@1]1SI9AA3VX4.png[/img]file:///C:Users80996AppDataRoamingTencentUsers809965167QQWinTempRichOleI0}CN)(2~AN~2W$R(1AL_K2.png
[img]file:///C:Users80996AppDataRoamingTencentUsers809965167QQWinTempRichOleQ{V$O$JI(U[P6Q76TC366G5.png[/img]




友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
11条回答
你还没媳妇呢
2019-07-21 11:49
mvvm 发表于 2019-7-16 09:12
产生硬错误可能的原因栈溢出,所以你把MCU的栈空间加大一些试试,因为有时候LCD或OV5640使用时可能开辟了很 ...

我使用的是原子哥的原程序,电路图也是。开发板能正常运行,自己做的电路板经常进入HardFault_Handler,偶尔出现一次能正常传输摄像头数据。Stack_Size      EQU     0x00000400,Heap_Size       EQU     0x00000200,这样设置的。液晶屏进入HardFault_Handler的问题我在u16 LCD_RD_DATA(void)这个函数里加了个延时就解决了,现在延时        delay_us(1);        也能用。摄像头的话我不知道什么原因,然后我重新将定时器例程和LCD例程结合起来,再把OV5640模块的程序加进去,现在摄像头能横屏显示30帧的画面,但运行一会儿后还是会进入HardFault_Handler,LCD显示不受影响

一周热门 更多>