向1602电子钟写数据时(+0x30)是什么意思?如 :01秒+0x30不是变成:0a了吗?

2020-01-25 15:19发布

正常时向1602写入数据时只要这样: 写数据函数(要显示的数)
可在不少高人写的时钟程序中为何要+0x30呢,我试过不加0x30还不好用???
如:
Lcd_WriteData(0x30+ge);
可是01秒+0x30不是变成0a了吗?
请高人指点下
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
12条回答
aozima
2020-01-26 07:45
引用:向1602写入字符时编译器会自动转成ASCII码

非也! 并不是转成了ASCII 而是本来就是ASCII码....
a  = '8';   // a = 0x38 字符 按字符的ASCII码的值进行操作 8的ASCII码是0x38
aa =  8 ;   // a = 0x08 数字 直接赋值
aa[] = "2A";// aa = {'2','A',0x0}

这里讲得不错:http://myweb.yzu.edu.cn/toby88/c/cstudy/rumen/shuzu/Rshz_zifu.htm

一周热门 更多>