找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2387|回复: 10
收起左侧

DS18B20测温代码问题

[复制链接]
ID:244281 发表于 2018-1-18 00:09 | 显示全部楼层 |阅读模式
DS18B20测温和超声波测距程序中的问题
DS18B20测温中,测得的数据需要加0x30
超声波测距程序中不需要加
用的同一个液晶,
为什么,谢谢

4610b912c8fcc3ce6effeeea9945d688d43f202f.jpg
e824b899a9014c086f2b0f7c017b02087af4f4d2.jpg

评分

参与人数 1黑币 +10 收起 理由
白鹤859 + 10 赞一个!

查看全部评分

回复

使用道具 举报

ID:84283 发表于 2018-1-18 09:56 | 显示全部楼层
1+0X30=0X31  即 ASCII 对应的 1
2+0x30=0x32  即 ASCII对应的2
在程序里,我们得到的是BYTE 数组,需要把它转换成十进制,即07D0H转换为+125(℃)。
在LCD中,字库是ASCII值,因此需要+0x30,
即 125/100=1+0x30  对应ASCII  1  LCD显示百位 ‘1’
    125/10%10=2+0x30  对应ASCII  2  LCD显示百位 ‘2’
    125%10=5+0x30  对应ASCII  1  LCD显示百位 ‘5’
℃可由° 和字母C两个字符的ASCII码来显示,分别为° (0XDF)和 C(0X43)
回复

使用道具 举报

ID:7485 发表于 2018-1-18 10:00 | 显示全部楼层
本帖最后由 ahshmj 于 2018-1-18 10:02 编辑

是将数值转换成显示字符的代码,就是“ASCII”码。
ACSII码的从0x30~0x39是0~10 。也可以是 +48(十进制),和+0x30一样。
你可以网上搜索“ASCII”有详细的解释。
因为操作显示部分时,LCD的内部使用的是ACSII码,所以需要转换,而单片机内部处理18b20的数据是不需要转换的。
回复

使用道具 举报

ID:248754 发表于 2018-1-18 10:02 | 显示全部楼层
这个和=与==在程序中和实际中的状态不一致时一个道理
回复

使用道具 举报

ID:244281 发表于 2018-1-18 10:41 | 显示全部楼层
ahshmj 发表于 2018-1-18 10:00
是将数值转换成显示字符的代码,就是“ASCII”码。
ACSII码的从0x30~0x39是0~10 。也可以是 +48(十进制) ...

同样的写液晶程序,为什么超声波模块测得的数据就不需要转换呢
回复

使用道具 举报

ID:258566 发表于 2018-1-18 11:12 | 显示全部楼层
需要看看lcd12864_SCharDisplay的函数。
有可能在其他地方加。
回复

使用道具 举报

ID:84283 发表于 2018-1-18 11:28 | 显示全部楼层
有可能直接定义数组   
unsigned char code disbuff[30] =    {'0','1','2','3','4','5','6','7','8','9','.','-','M','C','D','I','S','T','A','N','C','E','T','H','E',':'};
或者在别的地方转换  
自己认真看看把
回复

使用道具 举报

ID:244281 发表于 2018-1-19 20:32 | 显示全部楼层
qq1105424012 发表于 2018-1-18 09:56
1+0X30=0X31  即 ASCII 对应的 1
2+0x30=0x32  即 ASCII对应的2
在程序里,我们得到的是BYTE 数组,需要 ...

非常感谢!!!!
回复

使用道具 举报

ID:277930 发表于 2018-1-20 03:55 | 显示全部楼层
应该还是要加0x30的,要么就是12864显示函数里面另有设置识别数字然后加0x30,而且感觉这两个代码不是同一个程序啊
回复

使用道具 举报

ID:277904 发表于 2018-1-20 11:17 | 显示全部楼层
DS18B20 温度不太温度 数据精度不行 换其他传感器吧
回复

使用道具 举报

ID:86884 发表于 2018-1-25 11:52 | 显示全部楼层
+0x30就变成了对应数字的的ASCII码,也就是数字9变成了字符'9'
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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