维普资讯 http://www.cqvip.com
第4期 马云峰:单片机与数字温度传感器DS18B20的接口设计 .279. R1、R0决定温度转换的精度位数:RIR0一“00”, 9位精度,最大转换时间93、75ras;R1RO一“01” 10 位精度,最大转换时间187.5ms}R1RO一“10”,jj位 精度,最大转换时间375ms;R1R0一 11”,12位精 度,最大转换时间750ms;未编程时默认为12位精度 高速暂存器是一个9字节的存储器 开始两个字节包 含被测温度的数字量信息;第3、4、5字节分别是TH、 TI 、配置寄存器的临时拷贝,每一次上电复位时被刷 新;第6 7 8字节未用,表现为全逻辑l#第9字节 读出的是前面所有8个字节的CRC码,可用来保证通 信正确 卜 : — [二二二二 二二二二_ IlL 圈1 L 圈从_ 一l5lIs s+ lI s— H5 -- ̄lS 3 s— i二1机诚“ 0 时 ————0 [ L机谜 l 时 I _ :一1 5 —_ 卜 s—+一3 s一i: ]、一[S US ._ “ 圈2 DS18B20的工作时序图 2 DS18B20的工作时序 DS18B20的一线工作协议流程是:初始化一 ROM操作指令一存储器操作指令一数据传输。其工 作时序包括初始化时序、写时序和读时序,如图2 (a)(b)(c)所示 3 DSI8B20与单片机的典型接口设计 图3以MCS一51系列单片机为例,画出了 DS18B20与微处理器的典型连接 图3(a)中DSlgB2O 采用寄生电源方式,其VDD和GNG端均接地,图3 (b)中DS18B20采用外接电源方式,其VDD端用3~ 5.5V电源供电。 假设单片机系统所用的晶振频率为12MHz,根据 DS18B20的初始化时序、写时序和读时序,分别编写 了3个子程序 INIT为初始化子程序,WRITE为写 (命令或数据)子程序,READ为读数据子程序,所有 接其它的 吐装置 图3 DS18B2O与微处理器的典型连接图 的数据读写均由最低位开始。 DAT EQU Pl o L一'_一一——~—一…~一 INIT: CLR EA 1 l1o: SETB DAT M0V R2, 200 INIl1: CLR DA D1NZ R2,INI11;主机发复位脉冲持续3bLs×900 600,us SETB DAT }主机释放总线,口搜改为输 入 M0V R2, #30 INI12:功NZ R2,INI12;DS18B20等待2bLs×30=60fts CLR C ORL C,DAT;DS18B20数据线变低(存在脉 冲)吗? JC INI10  ̄DS18B20未准备好,重新初始化 M0V R6, #80 lNI13: 0RL C, DAT JC INI14 ;DS18B20数据线变高,初始化成 功 DJNZ R6, INI13;数据线低电平可持续3bLS×80 —240bLs SJMP INI10 }初始化失败,重来 INI14 MOV R2. #240 INI15:功NZ R2,INI15;DS18B ̄0应答最少2bLs×240 一_480 ̄s RET 一~——……——…一——~一—— WRlTE: CLR EA MOV R3, #8:循环8次,写一个字节 WR¨: SETB DAT M0V R4, #8 RRC A {写入位从A中移到CY CLR DAT 维普资讯 http://www.cqvip.com
・280・ 计算机测量与控制 第lO卷 WR12:DJNZ R4, WR12:等待l 6ps MUV A. #44H MOV DAT, c }命令字按位依披逑给 LcALL WRITE ;发启动转换命令 DS18B20 LCALL INIT MoV R4, #20 Mov A, #0CCH,发跳过ROM命令 WR13:DJNZ R4, WR13;保证写过程持续60#s LCALL WRITE 叫NZ R3, WR11;未送完一十字节继续 MOV A, #0BEH;发读存储器命令 SETB DAT LCAI L WRITE RET LCALL READ ‘————————————————————————————————————————————————一—— MOV WDLSB,A ;温度值低位字节送 READ: CLR EA WDLSB MOV R6 #8÷循环8次,凄一个字节 LCALL READ RD11 CLR DAT MOV WDMSB,A ;温度值高位字节迭 M0V R4, #4 WDMSB NOP :低电平持续2gs RET SETB DAT ;口线设为输入 子程序GETWD读取的温度值高位字节送 RD12:DJNZ R4, RD12;等待8 s WDMSB单元,低位字节送WDI SB单元,再按照温 Mov C,DAT:主机按位依次读人DS18B20的 数据 度值字节的表示格式及萁符号位,经过简单的变换即 RRC A ;读取的数据移人A 可得到实际温度值。 MOV R5, #30 如果一线上挂接多个DS18B20、采用寄生电源连 RDI3:DJNZ R5, RD13}保证读过程持续6O s 接方式、需要进行转换精度配置、高低限报警等,则 DJNZ R6, RDll;读完一个字节的数据,存入A 由 子程序GETWD的编写就要复杂一些,限于篇幅,这 一SETB DAT 部分不再详述,请参阅文献E1]的相关内容, RET 我们已成功地将DS1 8B20应用于所开发的“家用 主机控制DS18B20完成温度转换必须经过3个 采暖洗浴器”控制系统中,其转换速度快,转换精度 步骤:韧始化、RoM操作指令、存储器操作指令。必 高,与微处理器的接口简单,给硬件设计工作带来了 须先启动DS18B20开始转换,再读出温度转换值 假 极大的方便,有效地降低成本,缩短开发周期。 设一线仅挂接一个芯片,使用默认的l2位转换精度, 参考文献: 外接供电电源,可写出完成一次转换并读取温度值子 :1]DSIBB20.PDF[EB]http //www.da[semi corn/--./ 程序GETWD Dal[as Semiconductor,200l 1 14. GETWD:LCALL INIT 凹]汪吉鹏.马云峰 等.微机原理与接口技术[M]北京 MOV A. #OCCH 高等教育出妪社.2001 LCALL wRITE ;发跳过ROM命夸 (上接第271页) 电要求,可装备于电子装备修理方舱和相应修理机构, 0.01 ~0.1 ,我们产品实际达到0.1 ~0.5 尽 也可用于民用电子设备供电 管上述两项指标低于国外同类产品,但仍高于被测装备 该电源的研制,对提高新型雷达装备的修理能力, 技术条件中对供电电源的要求。 提高装备的战备完好性和可用度,具有十分重要的意 5基本评价 义。可 预见,交直流程控综合电源具有重大的军事、 交直流程控综合电源研制成功后,经基本性能试 经济效益。 验、试用试验,战技指标达到r科研任务书规定的 参考文献; 要求。 [1]何立民.单片机高级教程应用与设计[M] 北京:北京航 电源可靠性高,环境适应性好,通用化、自动化程 空航天大学出版社,1999. 度高,稳定性好,操作方便,非常适合于各种自动测试 r2一曲学基,等.稳定电源实用手册[M].北京:电子工业出 系统。 版社,1994 电源设计有程控和手动两种工作方式,除了和自动 [3]R.F.格拉夫,等.电子电路百科全书(4)卷[M]・北京:科 学出版社.1997. 测试系统配套之外,还可做为一般的通用电源使用,应 [4]总装军械技术研究所.交直流程控综合电源技术报告_R]. 用领域广泛.具有广阔的市场前景 20O】. 电源能满足陆军通用雷达装备组合级的交直流供
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- fupindai.com 版权所有 赣ICP备2024042792号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务