STM32项目开发遇见问题解决2024.6.4

1、引脚接错线

调试迪文屏的界面切换方法,查看迪文使用手册找到界面切换的指令,然后在之前程序代码的基础上修改程序。并找来一个按键板,接好线到单片机,查看之前的按键程序,移植过来并修改。使用迪文软件制作两个背景图片0和1编号,生成文件,用SD卡下载到屏幕上。测试单片机程序,一开始按键不起作用,单步调试不能检测到按键的变量,就开始用万用表检测按键按下时电压是否变化,按键引脚不按下时是高电平,按下后变为低电平,没有问题,再检查单片机程序发现切屏指令的数组编号最后两个还是6、7,修改后不行,再查看程序,按键按下后没有串口发送数据代码,修改后,测试,历史数据界面没有弹出,查看按键接线PC1接到了PC10上,改正后可以弹出历史数据。

2、按键需要按多次才起作用

因为主程序中使用了500ms延时,按键按下是查询检测,导致程序运行的时候有时候不能检测到按键按下,解决方法是将按键检测改成中断输入检测的方式。

3、多级菜单弄清楚menu结构体

调试多级菜单程序,参考之前 的多级菜单程序,移植到项目程序后,比较费劲,一直在看程序的含义,最后的使用落在menu结构体数组中索引号的使用上面,忘记了之前的使用方法,程序也没有完善备注,移植后,初始菜单不是想要的界面,后面的菜单基本能切换。

4、按键扫描代码缺失

程序初步编写完成后运行,按下增加、减小、切换按键没有反应,单步调试查看不了按键的值,查看变量值没有改变,后来又把增加减小按键代码放在while循环中也不行,经过排查,调试程序观察按键扫描函数的返回值,让程序一直全速运行,按下增加、减小按键后返回值一直是0,说明按键扫描函数有问题,进入按键扫描函数,发现keyscan()函数中新增加的4个按键的对应的代码没有添加,修改后,下载程序,可以正常运行,可以增加、减小。

相关推荐
国科安芯5 小时前
航天器多路并联大功率电源系统设计与ASP4644均流特性分析
单片机·嵌入式硬件·fpga开发·安全性测试
茯苓gao7 小时前
嵌入式开发笔记:CANopen相关移位运算与通信协议术语详解
网络·嵌入式硬件·学习·信息与通信
梁朝辉10 小时前
STM32H750VBT6中ADCINP与INN什么区别
stm32·单片机·嵌入式硬件
省四收割者11 小时前
一文详解信号完整性(1)
python·嵌入式硬件·数学建模·信息与通信·信号处理·智能硬件
崇山峻岭之间11 小时前
单片机无感FOC驱动之ADC
单片机·嵌入式硬件
Ligocious12 小时前
1.点亮一颗小小的LED
单片机·嵌入式硬件
KaifuZeng16 小时前
通信与接口协议面试八、CAN通信
单片机·嵌入式硬件·面试·通信与接口协议
智源单片机设计17 小时前
基于单片机的直流电机双闭环调速系统设计
单片机·嵌入式硬件
kebidaixu17 小时前
两轮车换电 BMS 的模拟前端中颖 SH367306 AFE 芯片详解
stm32
kebidaixu18 小时前
两轮车换电 BMS 的模拟前端中颖 SH367306 AFE 芯片调试实录:四个关键问题与解决方案
stm32