找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5159|回复: 6
收起左侧

这个是lcd12864显示时产生随机数的单片机函数,请问大神这个0x30是啥意思尼?

[复制链接]
ID:586957 发表于 2019-8-5 16:45 | 显示全部楼层 |阅读模式
void makerand()
{
        uint ran;
        ran=rand();
        dis1[0]=ran/10000+0x30;
        dis1[1]=ran%10000/1000+0x30;
        dis1[2]=ran%1000/100+0x30;
        dis1[3]=ran%100/10+0x30;
        dis1[4]=ran%10+0x30;
        ran=rand();
        dis1[5]=ran/10000+0x30;
        dis1[6]=ran%10000/1000+0x30;
        dis1[7]=ran%1000/100+0x30;
        dis1[8]=ran%100/10+0x30;
        dis1[9]=ran%10+0x30;
}
这个是lcd12864显示时产生随机数的函数,请问大神这个0x30是啥意思尼?

回复

使用道具 举报

ID:293363 发表于 2019-8-5 21:07 | 显示全部楼层
lcd中存贮的是ASCII码的形式表示的 各个字符和数字的,0x30是字符'0'的数值,加0x30表示以字符'0'以上的数字。如0x30+3就表示是字符'3'。
回复

使用道具 举报

ID:213173 发表于 2019-8-6 06:51 | 显示全部楼层
对点阵式液晶显示器而言不是显示数字而是显示代表数字的点阵图形,在这里是把0~9的数+0x30或+‘0’是转换成代表0~9的ASCII码,也就是液晶显示器的点阵图形码,类似于数码管的段码。
回复

使用道具 举报

ID:511461 发表于 2019-8-6 08:59 | 显示全部楼层
加0x30表示ASCII码
如果得的结果是0,加上0x30后,就是数字“0”的ASCII码,
如果得到结果是1,加上0X30后,就是数字“1”的ASCII码,
如果得到结果是2,加上0X30后,就是数字“2”的ASCII码,
回复

使用道具 举报

ID:586957 发表于 2019-8-6 11:16 | 显示全部楼层
谢谢各位,明白嘞!!!
回复

使用道具 举报

ID:515975 发表于 2019-8-8 11:26 | 显示全部楼层
是将数字转换为SCII码
回复

使用道具 举报

ID:552949 发表于 2019-11-28 18:31 | 显示全部楼层
这样 那样 嗯再这样
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表