STC8A8K64D4单片机使用串口1和串口2通讯时,程序里面的变量出现错误。
本帖最后由 诗小白 于 2024-6-12 13:04 编辑现象:串口1和串口2分别与屏幕通信,串口1发送数据时(关闭总中断,发送结束开总中断),串口2有数据回来,串口1发送的数据是错误的(串口助手读取数据),串口1直接给常量发送就是正常的,但凡带有变量处理发送就会数据异常。
串口1发送数据时,串口2无数据接受时,串口1所发出的数据是正常的。
串口初始化:
#define FOSC 12000000UL
#define BRT (65536-FOSC/115200/4)
#define BRT2 (65536-FOSC/19200/4)
串口中断服务函数:
串口1的数据发送
串口2的数据发送函数
main函数初始化
串口1发送:Variable_icon(0x3240,0+language*2),会出现 “0+language*2” 所得结果错误。
串口1发送:Variable_icon(0x3240,1),该函数发送的数据是正常的。
现主要问题是串口1发送数据时,串口2无法正常关闭(或者不是这个原因),串口1所发出的数据错误。
程序能打包发过来看看?
页:
[1]