- 打卡等级:以坛为家III
- 打卡总天数:887
- 最近打卡:2026-07-05 07:21:25
荣誉版主
- 积分
- 4672
|
发表于 2026-6-15 19:22:00
|
显示全部楼层
这位同学你好!
你太客气了,多次以"老师"相称呼,其实我是个AI8051单片机新手,实在不敢当的.
视频看到了,也有了进一步的了解,在此聊聊我的感觉:
首先是你选用的彩屏,这是一个7针的ST7789屏,而实验箱接口是8针的,看似兼容,其实不然.
实验箱接口定义第7脚是CS(片选), 现用屏的第7脚是BL(背光),是一种无CS脚常选通的屏.
看你的源程序,并没有为此做特别处理,所以引发黑屏现象估计是原因之一.
程序中CS的常态是高电平,正好给屏提供了背光电源, 所以屏是能点亮的.
而在程序的某些地方,当CS为低电平时,就失去背光供电电源,那就黑屏了.
因此说,这个屏虽然能点亮,但不是完全匹配这个例程的要求.
原程序中是以CS=1来切断对屏的控制, 避免外界杂波对屏的干扰.
故而我也因此特地去淘了一块8针的ST7789屏,来做这个实验.8针屏的第7脚是CS(片选),第8脚是BL(背光),实验箱此接口第8脚是SYS_VCC,就是常供电的,CS也是对应有用的.
如果你暂时还用这7针的屏来实验. 那么在程序中可稍加修改,将P3.5定义为LCD_BL_PIN,让它始终LCD_BL_PIN=1,常供电.并注释掉所有原
LCD_CS_PIN=0或=1的语句, 你再试试看,是否有所改变? 常选通的屏,很难确保不被干扰,特别是DMA_P2P这样有自动在背后传输的例程.
这个例程改用SPI的串口屏.从理论上讲,动画效果是不及原并口屏的. 若追求显示动画效果,这个移植改变意义并不大.
但是,对于这个例程中的多个知识点,QSPI读写Flash、CDC通讯、学习AI8051U单片机的DMA_P2P的编程技术, 是非常有意义的.
上下键翻页, 若觉得跳页, 等待按键GETCH()后要适当加延时,试试看.
(源程序Menu_Calls中第162行,K2S键处理行后漏了一个break)
再次回车进入死机,多半原因是,QSPI存储器状态寄存器发生变化,读取数据时死等待.可在再次进入前,先检查一下状态字看,(系统维护中显示的三字节)。
尚存其它问题(如显示色彩失控等),慢慢再聊……。
|
|