原创 CH452L显示DS18B20测量温度

2008-12-16 10:40 3803 8 9 分类: MCU/ 嵌入式

https://static.assets-stash.eet-china.com/album/old-resources/2008/12/16/3fd29f6a-9532-4251-8444-5ab4e84d6797.rarDS18B20测量正负温度,即-55~+125,使用单总线对DS18B20操作,总线上可以挂接若干个DS18B20实现多点测温,硬件连接简单,时序却很严格,若用数码管显示,数码管驱动必须要带锁存功能,否则不能动态显示。于是使用DS18B20和CH452L实现温度的测量和显示,这里只用到了一个DS18B20,还可扩展为多个DS18B20测温,一个DS18B20的测温完整测温资料在附件中,MCU使用ATMEGA8,时钟频率是8MHZ,编译环境是ICC6.31A,实现的功能如下:


(1)    使用DS18B20测温并显示在数码管上;


(2)    通过串口发送一个字节的数据来设定测温的阈值,实测温度超过阈值触发报警(这里是向串口发送报警标志的字符串)


说明:(1)报警功能也可以在程序中修改为声光报警。


            (2)我用的是8位数码管,2*8按键,硬件全部在万用板上实现,数码管的连线很多,很容易接触不良,时好时坏(这是接触不良,而不是硬件原理的缺陷哦),最低位的数码管有一段显示不正常,所以程序中用高四位数码管显示温度。


 

PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户1398279 2008-12-16 10:51

由于DS18B20时序严格,转换温度时有延时时间,直接用IO口接数码管显示,将不能动态显示,一种办法是使用带锁存的数码管驱动芯片,如164等,另外一种是使用具有所存功能的数码管专用驱动芯片,考虑到4个164和一个CH452L的成本和功能,选择CH452L。我硬件上是8位数码管,可任意显示1到8位,这样易于使用。
相关推荐阅读
用户1398279 2010-07-08 00:12
C语言共享库的制作
C语言共享库的制作0推荐 作者:杨硕,华清远见嵌入式学院讲师。1)基本概念共享库也是.o文件的集合,但是这些文件由编译器按照一种特殊的方式生成(Linux中,共享库文件为"ELF"格式,共享库已经具备...
用户1398279 2010-07-04 22:37
Linux 2.6.11 MTD驱动情景分析
Linux 2.6.11 MTD驱动情景分析最近几天为了熟悉linux的驱动开发,我选择了其MTD驱动做了一些研究。我能找到的文章中我觉得有些部分不够细致,所以我还是自己写了一部分分析,希望对别人也能...
用户1398279 2010-05-05 14:25
automake使用及库和头文件的链接
automake使用及库和头文件的链接关于automake的实践今天弄了很久的automake,自动生成Makefile,这样写程序时就会方便很多。之前也花时间看过一次,但当时只是对着一个hello....
用户1398279 2010-05-05 11:33
HP总裁退休时的信件
HP总裁退休时的信件<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />我有个有趣的观察...
用户1398279 2010-04-23 18:04
VMWare的NAT配置(包括DHCP和固定IP配置)
NAT的DHCP配置:这个网上别人写过,自己实验了下,没有问题。1 .最重要的是你的两个服务必须开启:VMware DHCP Service 和VMware NAT Service。具体操作如下: 开...
用户1398279 2010-04-23 10:48
gcc命令objdump用法
gcc命令objdump用法2009年03月29日 星期日 23:49gcc命令之 objdump ---------------objdump是用查看目标文件或者可执行的目标文件的构成的GCC工具-...
EE直播间
更多
我要评论
1
8
关闭 站长推荐上一条 /3 下一条