串口发送的是ASCII值
所以当串口接收到时要转化成10进制数时,需要一位一位的进行转换,比如接收到的是123,就需要减去48 (0x30)
接收的字符以ascii码形式存储,要减去字符‘0’,对应ascii码就是数字48
LCD_ShowString(10,130,240,24,24,USART_RX_BUF);
x=(USART_RX_BUF[0]-48)*100+(USART_RX_BUF[1]-48)*10+(USART_RX_BUF[2]-48);
y=(USART_RX_BUF[3]-48)*100+(USART_RX_BUF[4]-48)*10+(USART_RX_BUF[5]-48);
串口助手发送的也是ASCII值,转成16进制时,也需要对应ASCII表来转换。ASCII表。
本文介绍了串口通信中ASCII值如何转换为10进制数,通过减去ASCII码的'0'(48)进行转化。以接收字符123为例,通过逐位转换并组合得到实际数值。同时提到了串口助手发送的ASCII值转换为16进制时同样需要参照ASCII表进行转换。
1204

被折叠的 条评论
为什么被折叠?



