我用串口字符转换调试助手里面選择16进制发送发送一个数据0,在串口字符转换中断里面接收之后用//串口字符转换接收中断函数voidSerial_INT()interrupt4{ucharc;if(RI==0)return;ES=0;//关闭串口字符转换中断RI=0;/... 我用串口字符转換调试助手里面选择16进制发送,发送一个数据0在串口字符转换中断里面接收之后,用
ps:把字符串分成字节循环发送
[主要參考ALIENTEK 战舰STM32的开发教程因商业上的应用引起的纠纷与本人无关.这里用到的芯片为STM32F103,使用中断进行串口字符转换的接受和发送数据这里使鼡直接操作寄存器的
如果在串口字符转换助手上发送字符数据
那么在单爿机上接收的就可以用该字符对应的十六进制码进行判断
比如你的数据 0以字符形式发送0,换成十六进制就是 30
单片机用0x表示十六进制数据所以就是 0x30
具体的字符与十六进制码对换,可以参考下表
你对这个回答的评价是
因为字符‘0’转化为16进制不是0x00,而是0x30(十进制为48)
本回答被提问者和网友采纳
你对这个回答的评价是
本回答由常州市希尔斯电子有限公司提供