




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
51单片机AT89S52与DS18B20接口电路硬件电路原理图图 AT89S52与DS18B20组成的测温系统原理图51单片机AT89S52与DS18B20接口C语言源程序:#includecode unsigned char seg7code11=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f,0x40; /显示段码void Delay(unsigned int tc) /显示延时程序while( tc != 0 )unsigned int i; for(i=0; i100; i+); tc-;sbit TMDAT =P31; /DS18B20的数据输入/输出脚DQ,根据情况设定unsigned int sdata;/测量到的温度的整数部分unsigned char xiaoshu1;/小数第一位unsigned char xiaoshu2;/小数第二位unsigned char xiaoshu;/两位小数bit fg=1; /温度正负标志void dmsec (unsigned int count) /延时部分 unsigned char i;while(count-)for(i=0;i115;i+); void tmreset (void) /发送复位 unsigned char i;TMDAT=0; for(i=0;i103;i+); TMDAT = 1; for(i=0;i4;i+); bit tmrbit (void) /读一位/ unsigned int i; bit dat; TMDAT = 0; i+; TMDAT = 1; i+; i+; /微量延时 / dat = TMDAT; for(i=0;i8;i+); return (dat); unsigned char tmrbyte (void) /读一个字节 unsigned char i,j,dat; dat = 0; for (i=1;i=8;i+) j = tmrbit(); dat = (j 1); return (dat); void tmwbyte (unsigned char dat) /写一个字节 unsigned char j,i; bit testb; for (j=1;j 1; if (testb) TMDAT = 0; /写0 i+; i+; TMDAT = 1; for(i=0;i8;i+); else TMDAT = 0; /写0 for(i=0;i0x7f) /最高位为1时温度是负a=a; b=b+1; /补码转换,取反加一 fg=0; /读取温度为负时fg=0 sdata = a/16+b*16; /整数部分xiaoshu1 = (a&0x0f)*10/16; /小数第一位xiaoshu2 = (a&0x0f)*100/16%10;/小数第二位xiaoshu=xiaoshu1*10+xiaoshu2; /小数两位 void DS18B20PRO(void) tmstart(); /dmsec(5); /如果是不断地读取的话可以不延时 / tmrtemp(); /读取温度,执行完毕温度将存于TMP中 / void Led() if(fg=1) /温度为正时显示的数据 P2=P2&0xef; P0=seg7codesdata/10; /输出十位数 Delay(8); P2=P2|0xf0; P2=P2&0xdf; P0=seg7codesdata%10|0x80; /输出个位和小数点 Delay(8); P2=P2|0xf0; P2=P2&0xbf; P0=seg7codexiaoshu1; /输出小数点后第一位 Delay(8); P2=P2|0xf0; P2=P2&0x7f; P0=seg7codexiaoshu2; /输出小数点后第二位 Delay(4); P2=P2|0xf0; if(fg=0) /温度为负时显示的数据 P2=P2&0xef; P0=seg7code11; /负号 Delay(8); P2=P2|0xf0; P2=P2&0xdf; P0=seg7codesdata/10|0x80; /输出十位数 Delay(8); P2=P2|0xf0; P2=P2&0xbf; P0=seg7codesdata%10; /输出个位和小数点 Delay(8); P2=P2|0xf0; P2=P2&0x7f; P0=seg7codexiaoshu1; /输出小数点后第一位 Delay(4); P2=P2|0xf0; main()fg=1;while(1) DS18B20PRO(); Led();RS232串口原理图2.1 DS18B20的内外结构DS18B20的外部结构如图1所示。其中,VDD为电源输入端,DQ为数字信号输入输出端,GND为电源地。DS18B20内部结构主要包括4部分:64位光刻ROM、温度传感器、非易失的温度报警触发器TH和TL、配置寄存器,如图2所示。64位ROM中,在产品出厂前就被厂家通过光刻刻录好了64位序列号。该序列号可以看作是DS18B20的地址序列码,用来区分每一个DS18B20,从而更好地实现对现场温度的多点测量。图2中的暂存器是DS18B20中最重要的寄存器。暂存器由9个字节组成,各字节定义如表1所列。配置寄存器用于用户设置温度传感器的转换精度,其各位定义如下:TM位是测试模式位,用于设置DS18B20是工作模式(0)还是测试模式(1),其出厂值为0。R1、R0用于设置温度传感器的转换精度:00,分辨率为9位,转换时间为93.75ms;01,分辨率为10位,转换时间为187.5 ms;10,分辨率为11位,转换时间为375 ms;11,分辨为12位,转换时间为750 ms。R1、R0的出厂值为11。其余5位值始终为1。第0和第1字节为16位转换后的温度二进制值,其中前4位为符号位,其余12位为转换后的数据位(分辨率为12位)。如果温度大于0,则前4位值为0,只要将测到的数值乘上0.062 5即可得到实际温度值;如果温度小于0,则前4位为1,需将测得的数值取反加1后,再乘上0.062 5。第0和第1字节各位的二进制值如下:2.2 DS18B20的应用电路结构按DS18B20的供电方式,其应用电路结构可分为如下3种:寄生电源供电方式;寄生电源强上拉供电方式;外部电源供电方式。实际应用中,以外部电源供电方式为主。其应用原理图如图3所示。2.3 DS18B20的工作原理根据DS18B20的通信协议,MCU对其操作主要有如下3个步骤:读写之前,对DS18B20发送约500 s的低电平进行复位;复位成功,发送ROM指令;发送RAM指令。MCU对DS18B20的具体操作流程如图4所示。3 Linux的DS18B20驱动程序实现选取mini2440开发板为硬件平台(主芯片为Samsung公司的S3C2440),选取Linux的最新内核Linux2.6.29为软件平台。通过mini2440的扩展接口引出GPIO口(GPBl)为数据线DQ。DS18B20为单总线器件,因此对其操作的时序比较严格。DS18B20驱动最终能否得以正常运行,获得实时温度值,关键在于能否正确地编写复位程序、位写程序和位读程序。3.1 复位程序对DS18B20进行读写之前要对其复位初始化,以检测DS18B20的存在。复位要求MCU将数据线下拉480960 s,再释放数据线,等待约60 s。若MCU接收到DS18B20发出的存在低电平,则表示复位成功。下面是复位程序代码:3.2写1字节子程序发送ROM和RAM指令,需向DS18B20写入数据。写1字节子程序如下:3.3读N字节子程序当温度转换完毕,需
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 城市更新电动汽车充电桩建设方案
- 劳务派遣加盟协议书3篇
- 设备经营租赁合同
- 2025云南省曲靖市麒麟区珠街街道社区卫生服务中心招聘编外专业技术人员(7人)备考练习试题及答案解析
- 2025年趣味数学情景题目及答案
- 装饰公司员工劳动合同
- 私人房屋装修合同
- 2025年绥化绥棱县公开招聘急需紧缺专业工作人员2人考试参考试题及答案解析
- 2025西安三博脑科医院招聘(10人)考试参考试题及答案解析
- 2025年柳河县总工会公开招聘工会社会工作者(2人)备考练习题库及答案解析
- 台球厅合伙协议合同范本
- 女装销售店长培训课件
- 服装厂质检知识培训内容课件
- 2025年潍坊市中考物理真题卷(含答案)
- 酒管专业导论考试题及答案
- 2025外研社小学英语四年级上册单词表(带音标)
- 2025至2030中国体育赛事行业市场发展分析及发展前景与投资报告
- 重点金融政策解读
- 工贸行业安全管理和企业现场常见隐患排查解读(1)精
- 2025年注册核安全工程师执业资格考试(核安全专业实务·核技术)历年参考题库含答案详解(5套)
- 2025上海市中学生行为规范
评论
0/150
提交评论