初级会员

- 积分
- 66
- 金钱
- 66
- 注册时间
- 2015-3-30
- 在线时间
- 5 小时
|
5金钱
最近处理串口数据是出现一个问题,如图:串口实验例程我想知道串口往上位机中发的数据是什么形式的。因为我做的一个东西要用到串口往上位机中发的数据,不知道数据是什么形式的不好处理。
还有,我用USART_SendData函数直接往上位机中发数字1,不显示数字1;然后我发‘1’,就显示数字1了(如果我发更大的数字比如50呢,发的数字超过9的话,这种方式就不行了,求解)。此外,
USART_SendData(USART1, 1+'0'); //向串口1发送数据
while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待发送结束
USART_SendData(USART1, 1+'0'); //向串口1发送数据
while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待发送结束
加入这些代码后,理论上应该是在串口中显示两个1,结果只有1个,怎么回事,求解。
|
-
串口实验例程
最佳答案
查看完整内容[请看2#楼]
弄懂ASCII码,HEX十六进制,上位机显示方式等等再来思考这个问题。
提示一下,单纯的1只是0x01,而字符'1'是0x31。ASCII码有一部分是不可显示的,用上位机的文本查看方式自然显示不出来,要切换到16进制显示方式才行。
|