ImageVerifierCode 换一换
格式:DOCX , 页数:40 ,大小:23.73KB ,
资源ID:24622431      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/24622431.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(毕业设计附录.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

毕业设计附录.docx

1、毕业设计附录附 录附录.1 主机程序 :/*-AT89X52.HHeader file for the low voltage Flash Atmel AT89C52 and AT89LV52.Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc.All rights reserved.-*/#ifndef _AT89X52_H_#define _AT89X52_H_/*-Byte Registers-*/sfr P0 = 0x80;sfr SP = 0x81;sfr DPL = 0x82;sfr DPH = 0

2、x83;sfr PCON = 0x87;sfr TCON = 0x88;sfr TMOD = 0x89;sfr TL0 = 0x8A;sfr TL1 = 0x8B;sfr TH0 = 0x8C;sfr TH1 = 0x8D;sfr P1 = 0x90;sfr SCON = 0x98;sfr SBUF = 0x99;sfr P2 = 0xA0;sfr IE = 0xA8;sfr P3 = 0xB0;sfr IP = 0xB8;sfr T2CON = 0xC8;sfr T2MOD = 0xC9;sfr RCAP2L = 0xCA;sfr RCAP2H = 0xCB;sfr TL2 = 0xCC;s

3、fr TH2 = 0xCD;sfr PSW = 0xD0;sfr ACC = 0xE0;sfr B = 0xF0;sfr WDTRST = 0xA6;/看门狗寄存器/*-P0 Bit Registers-*/sbit P0_0 = 0x80;sbit P0_1 = 0x81;sbit P0_2 = 0x82;sbit P0_3 = 0x83;sbit P0_4 = 0x84;sbit P0_5 = 0x85;sbit P0_6 = 0x86;sbit P0_7 = 0x87;/*-PCON Bit Values-*/#define IDL_ 0x01#define STOP_ 0x02#def

4、ine PD_ 0x02 /* Alternate definition */#define GF0_ 0x04#define GF1_ 0x08#define SMOD_ 0x80/*-TCON Bit Registers-*/sbit IT0 = 0x88;sbit IE0 = 0x89;sbit IT1 = 0x8A;sbit IE1 = 0x8B;sbit TR0 = 0x8C;sbit TF0 = 0x8D;sbit TR1 = 0x8E;sbit TF1 = 0x8F;/*-TMOD Bit Values-*/#define T0_M0_ 0x01#define T0_M1_ 0x

5、02#define T0_CT_ 0x04#define T0_GATE_ 0x08#define T1_M0_ 0x10#define T1_M1_ 0x20#define T1_CT_ 0x40#define T1_GATE_ 0x80#define T1_MASK_ 0xF0#define T0_MASK_ 0x0F/*-P1 Bit Registers-*/sbit P1_0 = 0x90;sbit P1_1 = 0x91;sbit P1_2 = 0x92;sbit P1_3 = 0x93;sbit P1_4 = 0x94;sbit P1_5 = 0x95;sbit P1_6 = 0x

6、96;sbit P1_7 = 0x97;sbit T2 = 0x90; /* External input to Timer/Counter 2, clock out */sbit T2EX = 0x91; /* Timer/Counter 2 capture/reload trigger & dir ctl */*-SCON Bit Registers-*/sbit RI = 0x98;sbit TI = 0x99;sbit RB8 = 0x9A;sbit TB8 = 0x9B;sbit REN = 0x9C;sbit SM2 = 0x9D;sbit SM1 = 0x9E;sbit SM0

7、= 0x9F;/*-P2 Bit Registers-*/sbit P2_0 = 0xA0;sbit P2_1 = 0xA1;sbit P2_2 = 0xA2;sbit P2_3 = 0xA3;sbit P2_4 = 0xA4;sbit P2_5 = 0xA5;sbit P2_6 = 0xA6;sbit P2_7 = 0xA7;/*-IE Bit Registers-*/sbit EX0 = 0xA8; /* 1=Enable External interrupt 0 */sbit ET0 = 0xA9; /* 1=Enable Timer 0 interrupt */sbit EX1 = 0

8、xAA; /* 1=Enable External interrupt 1 */sbit ET1 = 0xAB; /* 1=Enable Timer 1 interrupt */sbit ES = 0xAC; /* 1=Enable Serial port interrupt */sbit ET2 = 0xAD; /* 1=Enable Timer 2 interrupt */sbit EA = 0xAF; /* 0=Disable all interrupts */*-P3 Bit Registers (Mnemonics & Ports)-*/sbit P3_0 = 0xB0;sbit P

9、3_1 = 0xB1;sbit P3_2 = 0xB2;sbit P3_3 = 0xB3;sbit P3_4 = 0xB4;sbit P3_5 = 0xB5;sbit P3_6 = 0xB6;sbit P3_7 = 0xB7;sbit RXD = 0xB0; /* Serial data input */sbit TXD = 0xB1; /* Serial data output */sbit INT0 = 0xB2; /* External interrupt 0 */sbit INT1 = 0xB3; /* External interrupt 1 */sbit T0 = 0xB4; /*

10、 Timer 0 external input */sbit T1 = 0xB5; /* Timer 1 external input */sbit WR = 0xB6; /* External data memory write strobe */sbit RD = 0xB7; /* External data memory read strobe */*-IP Bit Registers-*/sbit PX0 = 0xB8;sbit PT0 = 0xB9;sbit PX1 = 0xBA;sbit PT1 = 0xBB;sbit PS = 0xBC;sbit PT2 = 0xBD;/*-T2

11、CON Bit Registers-*/sbit CP_RL2= 0xC8; /* 0=Reload, 1=Capture select */sbit C_T2 = 0xC9; /* 0=Timer, 1=Counter */sbit TR2 = 0xCA; /* 0=Stop timer, 1=Start timer */sbit EXEN2= 0xCB; /* Timer 2 external enable */sbit TCLK = 0xCC; /* 0=Serial clock uses Timer 1 overflow, 1=Timer 2 */sbit RCLK = 0xCD; /

12、* 0=Serial clock uses Timer 1 overflow, 1=Timer 2 */sbit EXF2 = 0xCE; /* Timer 2 external flag */sbit TF2 = 0xCF; /* Timer 2 overflow flag */*-T2MOD Bit Values-*/#define DCEN_ 0x01 /* 1=Timer 2 can be configured as up/down counter */#define T2OE_ 0x02 /* Timer 2 output enable */*-PSW Bit Registers-*

13、/sbit P = 0xD0;sbit FL = 0xD1;sbit OV = 0xD2;sbit RS0 = 0xD3;sbit RS1 = 0xD4;sbit F0 = 0xD5;sbit AC = 0xD6;sbit CY = 0xD7;/*-Interrupt Vectors:Interrupt Address = (Number * 8) + 3-*/#define IE0_VECTOR 0 /* 0x03 External Interrupt 0 */#define TF0_VECTOR 1 /* 0x0B Timer 0 */#define IE1_VECTOR 2 /* 0x1

14、3 External Interrupt 1 */#define TF1_VECTOR 3 /* 0x1B Timer 1 */#define SIO_VECTOR 4 /* 0x23 Serial port */#define TF2_VECTOR 5 /* 0x2B Timer 2 */#define EX2_VECTOR 5 /* 0x2B External Interrupt 2 */#endif附录.2从机程序1:#include /头文件#include /包含_nop_()函数定义的头文件#include sfr WDTRST=0xA6;#define uchar unsigne

15、d char /宏定义#define schar signed char#define uint unsigned int#define sint signed int#define ulong unsigned long#define slong signed long #define HIGH 1#define LOW 0#define DISABLE EA=0; /关所有中断#define ENABLE EA=1; /开所有中断 #define TXEN P3_4=HIGH; P3_5=HIGH;/发送使能#define RXEN P3_4=LOW; P3_5=LOW;/接收使能#def

16、ine REG_BANK_0 0 /寄存器组0#define REG_BANK_1 1 /寄存器组1#define REG_BANK_2 2 /寄存器组2#define REG_BANK_3 3 /寄存器组 /中断入口地址#define INTERRUPT_INT0 0 /0x0003#define INTERRUPT_T0 1 /0x000b#define INTERRUPT_INT1 2 /0x0013#define INTERRUPT_T1 3 /0x001b#define INTERRUPT_UART 4 /0x0023#define TIME_10MS_12MHZ 10000 /12

17、MHZ时,定时10mS#define TIME_25MS_12MHZ 25000#define TIME_50MS_12MHZ 50000#define TIME_10MS_11MHZ 9216 /11MHZ时,定时10mS#define TIME_25MS_11MHZ 23040#define TIME_50MS_11MHZ 46080 #define BAUD9600_12M 0xfd /波特率为9600时,定时器初始化的初值#define BAUD9600_11M 0xfdsbit BEEP=P24; /蜂鸣器报警驱动uchar flag=0; /DS18B20读取温度标志uchar T

18、empL=0; /储存暂存器的温度低位uchar TempH=0; /储存暂存器的温度高位uchar TempN=0; /储存温度的整数部分uchar TempD=0; /储存温度的小数部分uchar Temperature=0;uchar wenduH=99; /温度上限值/uchar UpTempBuffer14 =0x53,0x31,0x5f,0x55,0x54,0x3a,0x20,0x33,0x38,0x20,0x20,0xdf,0x43,0; /显示从机1温度报警上限值S1_UT: 38 0C 14个字符 /uchar CurrentTempBuffer14=0x53,0x31,0x

19、5f,0x43,0x54,0x3a,0x20,0x20,0x20,0x2e,0x20,0xdf,0x43,0; /显示从机1当前温度值 S1_CT: *.*0C 14个字符 uchar code table= 0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90;/,0x88,0x83, /0xc6,0xa1,0x86,0x87 uchar code table1=0x89,0x86,0xc7,0xc0;uchar temp_zshi=0,temp_zge=0,temp_xshi=0,temp_xge=0;/定义显示温度的整数的十位、个位,小数

20、部分的第1位,第2位sbit shudian=P07 ;uchar addr=0x00; /本机地址/* 延时子程序 x*0.14MS*/void delay(uchar x) /x*0.14MS uchar i; while(x-) for (i = 0; i13; i+) WDTRST = 0x1E; /喂狗 WDTRST = 0xE1; /* 延时子程序 ms毫秒*/void delayms(uint ms) uchar t; while(ms-) for(t = 0; t 120; t+) WDTRST = 0x1E; /喂狗 WDTRST = 0xE1; /* * 蜂鸣器响一声 */void beep() uchar i; for (i=0;i0;i-) DQ = 0; / 给脉冲信号 dat=1; DQ = 1; / 给脉冲信号 if(DQ) dat|=0x80; delay_18B20(4); WDTRST = 0x1E; /喂狗 WDTRST = 0xE1; return(dat);/*函数功能:向DS18B20写入一个字节数据入口参数:dat*

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1