




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、接口技术课程设计报告 姓名:罗正鸿 学号: 李帅 张文彬 基于单片机点对点通信设计摘要 随着现代信息技术的飞速发展和传统工业改造的逐步实现,能够独立工作的温度检测和显示系统应用于诸多领域。传统的温度检测以热敏电阻为温度敏感元件。热敏电阻的成本低,但需后续信号处理电路,而且可靠性相对较差,测温准确度低,检测系统也有一定的误差,这里设计的数字温度计具有读数方便,测温范围广,测温精确,数字显示,适用范围宽等特点。本设计选用AT89C51单片机作为主控制器件,DS18B20作为测温传感器,通过LM016L实现温度显示。通过DS18B20直接读取被测温度值,进行数据转换,该器件的物理化学性能稳定,线性度
2、较好,在0100最大线性偏差小于0.01。该器件可直接向单片机传输数字信号,便于单片机处理及控制。另外,该温度计还能直接采用测温器件测量温度,从而简化数据传输与处理过程。关键词:DS18B20,数字式,温度测量,点对点通信一、 方案论证与比较方案一:热电偶型电路由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。优点:测量温度精度高。缺点:电路复杂,不利于硬件连线。总结:从电路设计方向来看,不选用该方案。方
3、案二:TC1047电路采用AT89S52作为系统处理器对采集的温度信号进行处理,温度的范围是0100度。温度传感器TC1047首先将温度信号转化成电压信号,再经过信号处理,最后送到TLC5510进行A/D转换,最后将结果通过数码管显示出来。优点:测量温度精度高、消耗低,电路比方案一简单。缺点:成本价太高。 结论:从成本方面考虑,该方案不合适。方案三:DS18B20电路采用数字温度传感器DS18B20采集温度,温度测量范围为-55125,通过AT89S52处理信号,不需要进行A/D转换,其自身可将模拟信号转化成数字信号,然后再通过数码管输出结果。优点:无需进行A/D转换,且DS18B20芯片的管
4、脚简单,无需外围硬件设备即可进行温度测量,与单片机交换信息仅需一根I/O口线,占用微处理器的端口较少,可以节省大量的引线和逻辑电路。缺点:测量温度精度适中。总结:综合考虑,该方案能很好的实现题目的要求。二、 系统设计与分析1、设计要求基本要求 采用DS18B20实现温度的采集; 通过数码管显示温度; 能用键盘输入预设数值,并进行操作。发挥部分 能实现甲乙机之间的通信。改进: 提高温度测量精度。2、总体设计系统框图,如图所示MAX485通信收发器 AT89C51时钟电路复位电路DS18B20数字温度传感器显示电路测温物体按键电路 系统采用数字温度芯片DS18B20测量温度,输出信号全数字化。采用
5、了单总线的数据传输,由数字温度计DS18B20和AT89C51单片机构成的温度测量装置,DS18B20的DQ与AT89C51的P1.1口相连,与它直接输出温度的数字信号,采用AT89C51单片机控制。温度显示由74LS164和数码管配合完成。3、 模块说明该系统有以下几部分组成: (1)显示模块 (2)控制模块 (3)测量模块 (4)按键模块 (5)通信模块3.1、显示模块在74LS164中,RXD、TXD都是当作IO口使用的,每个74LS164在收到一个时钟后,D0(A/B)、Q0Q6顺次移到Q0Q7 中,而前两个芯片的Q7分别接到后两个的A/B端,由于它们的时钟都是共用的,所以在时钟输入时
6、,前一个芯片的Q7就通过后一芯片的A/B端锁存到其Q0了,而各芯片原来的Q0Q6移到Q1Q7。这样只要连续发送24个时钟就可以把24位数据分别移到3个芯片的24个输出脚上。3.2、控制模块本系统中采用AT89C51系列单片机完成整个数控部分的功能,同时,AT89C51作为一个智能化的可编程器件,便于系统功能的扩展。VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,
7、P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口
8、输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外
9、部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如
10、想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电
11、源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.3、测量模块在该系统中,测量模块采用温度传感器DSl8820。DSl8820是美国达拉斯(DALLAS)半导体公司推出的应用可组网的数字温度传感器,不需AD转换电路,直接将温度值转换成数字量。(1) DQ为数字信号输入输出端(2) GND为电源地(3) VDD为外接供电电源输入端温度寄存器(0和1字节) DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:16位符号扩展的二进制补码读数形式提供,以0.0625/LSB形式表达,其中S为符号位。 这是12位转化后得到的12位
12、数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。 DS18B20 的温度操作是使用16 位,也就是说分辨率是0.0625。BIT15BIT11 是符号位,为了就是表示转换的值是正数还是负数。3.4、键盘模块矩阵键盘又称为行列式键盘,它是用4条I/O线作为行线,4条I/O线作为列线组成的键盘。在行线和列线的每一个交叉点上,设置一个按键。这样键盘中按键的个数是44个。这种行列式键盘结构能够有效地提高单片机
13、系统中I/O口的利用率。3.5、通信模块MAX485是用于RS-485与RS-422通信的低功耗收发器。MAX485的驱动器摆率不受限制,可以实现最高2.5Mbps的传输速率。这些收发器在驱动器禁用的空载或满载状态下,吸取的电源电流在120A至500A之间。所有器件都工作在5V单电源下。驱动器具有短路电流限制,并可以通过热关断电路将驱动器输出置为高阻状态。接收器输入具有失效保护特性,当输入开路时,可以确保逻辑高电平输出。具有较高的抗干扰性能。三、 系统软件设计1、程序框图: 2、程序代码:CP BIT P1.1 ;数码管CPMR BIT P1.2 ;数码管MRSDB BIT P1.3 ;数码管
14、LED BIT P1.0;最小系统灯DQ BIT P1.4 ;18B20接口M485 BIT P1.5 ;485接口读写控制线FLAG1 BIT 22H.7;18B20存在标志位 a_BIT EQU 35H b_BIT EQU 36H ;温度转换结果存放地址 GNBJEQU55H ;功能标记 TEMPEQU33H ;EEROM传送入口KEYBUF EQU 30H ;键盘值 ORG 0000H SJMP MAIN ;ORG 0023H ;LJMP TXXY ORG 0030HMAIN: MOV SP,#60H CLR 20H.7 ;是否有键按下的标志位 CLR 21H.7 ;温度测量位 MOV
15、50H,#00H MOV 51H,#00H MOV 52H,#00H MOV R0,#50H ;R0初值 LCALL displaySTART: LCALL delay LCALL delay LCALL SCAN JB 21H.7,WDXDIS: LCALL display LCALL ZSD JMP START WDX: LCALL WDXS JMP DIS;-最小系统指示灯-ZSD: CPL LED RET;- ;-数码管的写操作-W08: ;入口为A CLR C MOV R7,#8 W1:CLR CP RRC A MOV SDB,C SETB CP DJNZ R7,W1 CLR CP
16、RET;-;-数码管显示-display: ;入口为50H,51H,52H;输出显示,入口50HPUSHACC ; MOV 50H,KEYBUF ;MOV 51H,50H;MOV 52H,51HMOV DPTR,#TABMOVA,52HANLA,#0FH MOVC A,A+DPTRLCALLW08MOVA,51HMOV DPTR ,#TAB1ANLA,#0FH ; SWAP AMOVC A,A+DPTRLCALLW08MOV DPTR ,#TABMOVA,50HANLA,#0FHMOVC A,A+DPTRLCALLW08POPACCRET ;-;-键盘SCAN-SCAN: MOV P3,#0F
17、FH CLR P3.4 MOV A,P3 ANL A,#0FH XRL A,#0FH JZ NOKEY1 LCALL DELY10MS MOV A,P3 ANL A,#0FH XRL A,#0FH JZ NOKEY1 MOV A,P3 ANL A,#0FHSETB 20H.7 CJNE A,#0EH,NK1 MOV KEYBUF,#0 LJMP DK1ANK1: CJNE A,#0DH,NK2 MOV KEYBUF,#4 LJMP DK1ANK2: CJNE A,#0BH,NK3 MOV KEYBUF,#8 LJMP DK1ANK3: CJNE A,#07H,DK1A MOV KEYBUF,#
18、12 ;SETB 21H.7DK1A: MOV A,P3 ;等待释放 ANL A,#0FH XRL A,#0FH JNZ DK1ANK4: LJMP SCANOKEY1: MOV P3,#0FFH CLR P3.5 MOV A,P3 ANL A,#0FH XRL A,#0FH JZ NOKEY2 LCALL DELY10MS MOV A,P3 ANL A,#0FH XRL A,#0FH JZ NOKEY2 MOV A,P3 ANL A,#0FHSETB 20H.7 CJNE A,#0EH,NK5 MOV KEYBUF,#1 LJMP DK1ANK5: CJNE A,#0DH,NK6 MOV K
19、EYBUF,#5 LJMP DK1ANK6: CJNE A,#0BH,NK7 MOV KEYBUF,#9 LJMP DK1ANK7: CJNE A,#07H ,DK1A MOV KEYBUF,#13 ;CLR 21H.7 ; LJMP DK1ANOKEY2: MOV P3,#0FFH CLR P3.6 MOV A,P3 ANL A,#0FH XRL A,#0FH JZ NOKEY3 LCALL DELY10MS MOV A,P3 ANL A,#0FH XRL A,#0FH JZ NOKEY3 MOV A,P3 ANL A,#0FHSETB 20H.7 CJNE A,#0EH,NK9 MOV K
20、EYBUF,#2 LJMP DK1ANK9: CJNE A,#0DH,NK10 MOV KEYBUF,#6 LJMP DK1ANK10: CJNE A,#0BH,NK11 MOV KEYBUF,#10 LJMP DK1ANK11: CJNE A,#07H,SCA MOV KEYBUF,#14 LJMP DK1ANOKEY3: MOV P3,#0FFH CLR P3.7 MOV A,P3 ANL A,#0FH XRL A,#0FH JZ SCA LCALL DELY10MS MOV A,P3 ANL A,#0FH XRL A,#0FH JZ SCA MOV A,P3 ANL A,#0FHSETB
21、 20H.7 CJNE A,#0EH,NK13 MOV KEYBUF,#3 LJMP DK1ANK13: CJNE A,#0DH,NK14 MOV KEYBUF,#7 LJMP DK1ANK14: CJNE A,#0BH,NK15 MOV KEYBUF,#11 LJMP DK1ANK15: CJNE A,#07H,SCA MOV KEYBUF,#15 LJMP DK1ASCA: JNB 20H.7,L1 ; 判断是否有键按下 CLR 20H.7 ; 有键按下MOV R5,KEYBUF ;把键值存入R5中CJNE R5,#10,SCAN1 ;清零键MOV 50H,#00H MOV 51H,#00
22、HMOV 52H,#00HMOV R0,#50HCLR 21H.7 ;显示键值LJMP L1SCAN1: CJNE R5,#11,SCAN2;发送数据给乙机键 LCALL TXXYLJMP L1SCAN2: CJNE R5,#12,KEY;显示温度 SETB 21H.7LJMP L1;SCAN3: CJNE R5,#13,KEY;显示键值 ; CLR 21H.7;LJMP L1 KEY: MOV R0,KEYBUF ;键值存到50HINC R0CJNE R0,#53H ,L1MOV R0,#50H L1: RET;-延时子程序5ms-DELY10MS: MOV R6,#5D1: MOV R7,
23、#248 DJNZ R7,$ DJNZ R6,D1 RET;-;-延时- delay: mov r7,#0FFH; DE2: mov r6,#0FFH DE1: djnz r6,DE1 djnz r7,DE2 ret ;-;-发送数据子程序(甲机通信协议)-TXXY: ;查询法 MOV SCON,#50H MOV TMOD,#20H MOV TH1,#232 ;1200bit/s MOV TL1,#232 SETB TR1LOOP1:MOV A,#11H MOV SBUF,A JNB TI,$ CLR TI JNB RI,$ CLR RI MOV A,SBUF XRL A,#11H JNZ L
24、OOP1LOOP3:MOV R7,#3 MOV R1,#50H MOV R6,#00HLOOP: MOV A,R1 MOV SBUF,A ADD A,R6 MOV R6,A JNB TI,$ CLR TI INC R1 DJNZ R7,LOOP JNB RI,$ CLR RI MOV A,SBUF XRL A,R6 JNZ LOOP2 MOV A,#22H MOV SBUF,A JNB TI,$ CLR TI SJMP $LOOP2:MOV A,#33H MOV SBUF,A JNB TI,$ CLR TI LJMP LOOP3 RET;-;-温度显示子程序- ;*18B20程序*WD_18B
25、20: CLRP3.6 LCALL INIT_18B20 LCALL GET_TEMPER AJMP CHANGE ret;-;-读出转换后的温度值GET_TEMPER: LCALL INIT_1820 ;初始化程序SETB DQ ; 定时入口BCD:JB FLAG1,S22LJMP BCD ; 若DS18B20不存在则返回S22:LCALL DELAY1MOV A,#0CCH ; 跳过ROM匹配-0CCLCALL WRITE_1820MOV A,#44H ; 发出温度转换命令LCALL WRITE_1820NOPLCALL DELAYLCALL DELAYCBA:LCALL INIT_182
26、0JB FLAG1,ABCLJMP CBAABC:LCALL DELAY1MOV A,#0CCH ; 跳过ROM匹配LCALL WRITE_1820MOV A,#0BEH ; 发出读温度命令LCALL WRITE_1820LCALL READ_18200 ;或者 READ_1820RET;-读DS18B20的程序,从DS18B20中读出一个字节的数据READ_1820:MOV R2,#8RE1:CLR CSETB DQNOPNOPCLR DQNOPNOPNOPSETB DQMOV R3,#7DJNZ R3,$MOV C,DQMOV R3,#23DJNZ R3,$RRC ADJNZ R2,RE1
27、RET;-写DS18B20的程序WRITE_1820:MOV R2,#8CLR CWR1:CLR DQMOV R3,#6DJNZ R3,$RRC AMOV DQ,CMOV R3,#23DJNZ R3,$SETB DQNOPDJNZ R2,WR1SETB DQRET;-读DS18B20的程序,从DS18B20中读出两个字节的温度数据READ_18200:MOV R4,#2 ; 将温度高位和低位从DS18B20中读出MOV R1,#36H ; 低位存入36H(TEMPER_L),高位存入35H(TEMPER_H)RE00:MOV R2,#8RE01:CLR CSETB DQNOPNOPCLR DQ
28、NOPNOPNOPSETB DQMOV R3,#7DJNZ R3,$MOV C,DQMOV R3,#23DJNZ R3,$RRC ADJNZ R2,RE01MOV R1,ADEC R1DJNZ R4,RE00RET;-将从DS18B20中读出的温度数据进行转换TEMPER_COV: MOV A,36H CLR C RRC A JNC Jj1 MOV 52H,#05H SJMP Jj2 Jj1: MOV 52H,#00H ;小数位 Jj2: MOV B,#10;转换成十进制 DIV AB MOV 51h,b mov b,#10 DIV AB; mov a,b; subb a,#7; mov b,
29、a mov 50h,bRET;-DS18B20初始化程序INIT_1820:SETB DQNOPCLR DQMOV R0,#80HTSR1:DJNZ R0,TSR1 ; 延时SETB DQMOV R0,#25H ;96US-25HTSR2:DJNZ R0,TSR2JNB DQ,TSR3LJMP TSR4 ; 延时TSR3:SETB FLAG1 ; 置标志位,表示DS1820存在LJMP TSR5TSR4:CLR FLAG1 ; 清标志位,表示DS1820不存在LJMP TSR7TSR5:MOV R0,#06BH ;200USTSR6:DJNZ R0,TSR6 ; 延时TSR7:SETB DQR
30、ET;-重新写DS18B20暂存存储器设定值RE_CONFIG:JB FLAG1,RE_CONFIG1 ; 若DS18B20存在,转RE_CONFIG1RETRE_CONFIG1:MOV A,#0CCH ; 发SKIP ROM命令LCALL WRITE_1820MOV A,#4EH ; 发写暂存存储器命令LCALL WRITE_1820MOV A,#00H ; TH(报警上限)中写入00HLCALL WRITE_1820MOV A,#00H ; TL(报警下限)中写入00HLCALL WRITE_1820MOV A,#7FH ; 选择12位温度分辨率LCALL WRITE_1820RET;-延时子程序DELAY1:MOV R7,#2HMIN:DJNZ R7,YS500RETYS500:LCALL YS500USLJMP MINYS500US:MOV R6,#200DJNZ R6,$RETDELAY11:MOV R7,#20HDJNZ R7,$RET;- ; 采用共阳极LED显示TAB: DB 03H;0 DB 9fH;1 DB 25H;2 DB 0dH;3 DB 99H;4 DB 49H;5 DB 41H;6 DB 1fH;7 DB 01H;8 DB 09H;9 DB 11H;A DB 0C1H;b DB 63
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025湖北恩施市福牛物业有限公司招聘恩施市金满园农业发展有限公司工作人员3人笔试模拟试题及答案解析
- 谢师宴致辞(15篇)
- 血透护士工作总结
- 2025浙江网上年货消费云享年货惠聚浙里主题活动策划方案
- 道法七下说课
- 人教宁夏 九年级 下册 语文 第二单元《 单元写作 审题立意》习题课 课件
- 网络信息安全技术课件 第12章 常见的网络攻防技术
- 人教陕西 九年级 下册 语文 第六单元《 出师表》习题课课件
- 运动会前安全教育班会
- 三年级数学北师大版上册第六单元《6.1蚂蚁做操》教学设计教案
- 智能制造市场现状及发展前景分析报告
- 2024年保安员考试题库(综合题)
- 挤包绝缘直流电缆脉冲电声法(PEA)空间电荷测试方法
- 上海市疾控中心招聘信息考试试题及答案
- 湖北省黄石市金海大屋边矿区建筑石料用石灰岩矿、硅质岩矿矿产资源开发利用与生态复绿方案
- 十二个月完整版本
- 2024年河南交通职业技术学院单招职业技能测试题库及答案解析
- DL-T 5148-2021水工建筑物水泥灌浆施工技术条件-PDF解密
- 肺动脉栓塞药物治疗的个体化方案
- 旅游经济发展背景下广西民宿客栈的发展现状、问题和对策分析-基于桂林市调查分析研究 旅游管理专业
- 《积极心理学》课件
评论
0/150
提交评论