在进行日历实验的过程中,因各种原因,单片机中的日期与当前的日期经常会出现不一致的现象,免不了要进行更新日期的操作。我采取是的通过串口发送DYYYYMMDDhhmmss格式的字符串,首字符‘D’表示之后的是日期时间信息,串口中断处理中收到这个信息则进行更新日期的操作。代码截图如下:
代码看起来是没有问题的,串口中断中也能识别出数组首字符的值,但就是不执行后面更新日期的代码。我考虑会不会是在中断回调函数中执行了过多的代码引起的,于是便设置了一个更新标志,在中断回调函数中只负责修改标志,然后再到主循环里通过识别标志来执行:
测试结果仍然没有达到目的,这个标志的值并未改变,因此日期也没有得到更新。 后来转变思路,直接在主循环里对接收缓存区首字符进行判断并处理更新,这才达到了目的:
|
这块STM32G071 UBS TypeC Discovery Kit该如何玩?
翻找出来一块老板子
ADC实验终于完成了
如何解决cannot open source file的问题?
如何排除这两个编译错误?
【2026.11.07】每日签到:STM32H735G-DK评测、Coremark跑分结果显示在LCD
请教HAL_I2C_MASTER_MemWrite()函数的参数应该如何写?
摸鱼的时候,跑个小游戏
一个小疏忽影响到汉字正常显示
【2026.10.31】每日签到:STM32H735G-DK评测.TouchGFX在LCD—text中显示动态字符
微信公众号
手机版