原创 EDN51实验板实现多点测温(1)——总体方案

2008-6-9 19:25 4384 13 22 分类: MCU/ 嵌入式

      


       EDN51实验板实现多点测温(1)——总体方案


       终于完成多点测温的毕业设计了,十分感谢EDN提供这么好的学习板,也感谢老王的热心。由于整个毕业设计的程序太大了,一时半会也贴不完,所以决定有空就和大家分享一点,也不知道会写多少。今天先分享总体方案和hex格式的程序供大家测试。


        EDN51板要实现多点测温需要进行改造。首先DS18B20不能焊在板子上,在板子上焊接一个三线的插座,然后把多个DS18b20连在一条线上再接到板子上。改造方法在前面的博文里已经介绍过,有兴趣大家可以去看看。http://blog.ednchina.com/will666/91892/message.aspx建议大家用插座连接18B20,不要直接焊。


        整个系统有四种工作方式:自动模式、手动模式、ID模式和报警设置模式。自动模式下,单片机循环从每个DS18B20读取温度值,经过报警处理后显示在LCD上。手动模式下,可以人工选择要观测的测温点,单片机只从被选择的DS18B20读取温度,报警处理后显示。ID模式可以显示每个DS18B20的序列号,并可以替换总线上的DS18B20以方便系统维护。报警设置模式允许为每个总线上的DS18B20设置报警的上下限温度THTL,设置完毕后单片机将信息存入DS18B20的片上E2PROM中使该信息在掉电后得以保存。共支持5个DS18B20,其实只需稍加修改就可以达到8个。


    键盘布局如下图


7c2cb070-ed72-4886-9ed6-c19bce2219fe.JPG


 


    在第一次使用时,需要进行必要的配置,方法如下。


    1、系统第一次上电后会报警,此时长按Menue键两秒钟会进入模式选择菜单,按Down键选择ID Mode,按SET键进入。此时会发现器件ID号都是0,因为我们还没有将DS18b20的序列号存入单片机。选择NO1,在总线上只有一个DS18B20情况下按Change键,单片机会读出该DS18b20的序列号并显示在LCD1602上。再按Down键选择NO2,用同样的办法可依次读出5个器件的序列号。如果没有5个传感器,就将后续几个读入同一个传感器的序列号。总之就是保证在每个编号下都有一个序列号。DS18B20的序列号后两位是28,我们可以依此大体判断序列号的正误。


    2、配置完毕按Quit键退出,系统会进入默认模式,自动循环处理五个DS18B20的温度并显示。


    3、在默认模式下,长按Menue会进入系统菜单,第一项就是“Hand Mode”该模式可以手动选择器件,单片机只处理选择的器件。第二项就是上面提到的“ID Mode”,可以查看器件序列号,可以替换总线上的DS18b20。第三项是“Alarm Set”模式,可以更改报警上下限。注意,只有在默认模式下菜单功能才有效,在其他模式下只需按Quit即可进入默认模式。默认模式在屏幕右上角有“Auto”显示。


    一般在屏幕的第二行会显示当前有效按键,大家可以自己尝试操作。


    系统菜单处理流程见下图


点击看大图


从图中可以看到每个按键的功能。


    系统默认的自动模式流程图如下


c71fea66-ae44-4700-b7f0-4cc08f905767.JPG


    主程序流程也十分简单


07f114f7-d86e-4ce6-b7fb-86a519181bbb.JPG


当初编程难点其实就是前面那个实现菜单操作的大图,很是费劲。


    本程序实现多点测温并没用使用搜索ROM指令,而是利用了读ROM指令,读出的ID号被保存在STC单片机内部提供的EEPROM中,掉电不会丢失。


    闲话少说,把程序先给大家,供大家测试。由于还没有完成毕业设计,所以只能给大家Hex文件,源程序会在后面分别与大家分享。程序有什么问题还请各位留言指出,感谢大家的热心。还注意一点,单片机使用的是STC89C52,不能换用其他型号,STC89C51都不可以,因为他们内部EEPROM地址不一样。


完整程序rar


感觉好别忘了支持一下哦......


2abe6bb8-3c83-4801-b3ec-70d73377b73d.gif

文章评论9条评论)

登录后参与讨论

用户172003 2009-4-28 20:52

楼主可以把电路原理发过我吗?小弟正需要!谢谢!nieminhua61@yahoo.com

用户227895 2009-4-28 13:19

你太有才了!

用户198475 2009-3-10 11:12

木有源程序

用户1364249 2008-6-27 23:06

已经把源程序发上了,大家看看吧。

用户152939 2008-6-26 10:50

这个家伙不错的,等待中

用户1364249 2008-6-20 00:46

不能实现多点测温呀。

用户132862 2008-6-16 13:41

为啥我的显示30度??没那么高的温度啊。。 焊在板子上面有什么不好?我焊在板子上面的?有问题吗?

用户1364249 2008-6-11 08:14

供大家下载测试。具体程序还是一点一点的讲吧。

用户80602 2008-6-10 09:01

就给了HEX文件有什么用!
相关推荐阅读
用户1364249 2009-12-30 11:40
好久没来EDN了
        想当年本科毕业时,是在EDN众多网友的支持下才完成了毕业设计,并且毕业设计所用的工具就是老王设计的EDN51实验板。如今作为控制专业的研二学生,接触最多的就是PLC,单片机早已被尘封。...
用户1364249 2009-03-13 22:16
EDN主页又改版了
        一天没来EDN就发现面目一新了。主页大体格局还与原来差不多,就是信息量比原来大了,整个页面显得紧凑了,还换了好多新栏目,看来EDN还真怕我们审美疲劳呀?...
用户1364249 2009-03-06 20:57
国际集成电路展会归来
国际集成电路展会归来        今天去参加了所谓的“国际集成电路研讨会暨展览会”,累了一天,回来跟大家分享点感受。        北京的展会地点在国贸中心,早上坐地铁赶到国贸中心,在那个到处都是名...
用户1364249 2009-03-03 21:24
搞定DKU-5仿制数据线
搞定DKU-5仿制数据线并在3100手机上成功安装飞信        好久以前买了一条二手的仿制的诺基亚手机DKU-5数据线,记得就成功连接一次,后来电脑重新装过系统后就再也连接不上了,以至于尘封箱底...
用户1364249 2009-01-26 10:42
牛年大吉
鼠年过去,迎来牛年。祝大家在新的一年里牛气冲天。看帖的一路飘红,回复的股票涨停;关注的工资暴涨,留言的彩票中奖;点击的工作顺利,拍手的步步高升;鼓励的牛年大吉,“顶”我的一生平安!...
用户1364249 2009-01-15 12:53
免费印刷版杂志申请攻略
 免费印刷版杂志申请攻略        以前发过一个关于申请免费芯片的帖子,到现在还有网友回复讨论。其实对于初学者和学生来说,网络上免费的东西还有很多,今天我就讲讲我申请免费印刷版杂志的经历,同时欢迎...
我要评论
9
13
关闭 站长推荐上一条 /5 下一条