标题: 51单片机串口接收一组16进制的整数 用十进制显示在12864屏上 [打印本页]

作者: zcwjzwd    时间: 2023-12-28 18:15
标题: 51单片机串口接收一组16进制的整数 用十进制显示在12864屏上
求教老师们小白感激不尽
51单片机串口接收一组16进制的整数,用十进制显示在12864屏上,还需要16进制转换为十进制吗?怎样转换?
望不吝赐教!

作者: 治世逍遥    时间: 2023-12-28 22:25
不需要转十进制,你在接收数据时是按位接收的,接收到的数在C语言中不加特别标注就是十进制表示。
你要注意的是如果是一个多位数,可能由几个字节组成,要注意符号和高低字节,另外在显示时要把各个位单独分离出来。

作者: zhuls    时间: 2023-12-28 22:34
比如你收到的是FF,
如果要显示“FF”,就要把变量值 0xFF 转换成字符串“0xFF”
如果要显示“255”,就要把变量值 0xFF 拆分成百十个位的“255”字符串
作者: csmyldl    时间: 2023-12-28 22:58
用表达式求出万位、千位、百位、十位、个位后,再把这些数一一对应显示数字的数组(不带字符)或ASCII码值(带字符),如:万位=该数/10000;千位=(该数/1000)%10;




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1