编辑: 此身滑稽 2019-09-12
课程设计题目: 单片机课程设计 目的与任务: 用Protel99se画单片机系统原理图 焊接电路板 根据编程任务要求编写并调试程序 实习成果验收、面试,撰写报告 内容和要求: 可根据指导书上任务要求进行编程调试,或者根据现有硬件资源进行自由发挥 要求熟练掌握硬件器件的使用 熟悉单片机软硬件开发流程 设计内容(原理图以及相关说明、调试过程、结果) 1.

将老师给定的电路板以及相应的元器件焊接完成.并调试一定显示一定的功能. 2.通过80C51单片机电路板的焊接,并且结合相关程序调试已验证其功能的完备性.现根据相关电路连接,设计编写特定的软件程序以实现一种特定的功能. 3.本设计在80C51单片机、外围电路并结合DS18B20芯片等外部硬件基础上,采用软件延时模拟串行通信以及对其特定的传输协议的验证和功能实现.通过DS18B20芯片对温度的采样、内部温度A/D转换模块、码流输出、80C51程序处理数据转换、数码管显示等过程实现对周围温度的实时监测功能. 4.根据个人意向需求,设置相应的温度检测以及报警程序.因本设计中电路板没有焊接蜂鸣器,所以用LED灯的亮灭作为警告指示,已达到对温度的实时监控和警报作用. 5.由于DS18B20芯片对温度采集的精确性(程序设定其为9~12位的分辨率,则精度为±0.5℃),此次设计的成品可以广泛应用于工业中某些对温度及其敏感的生产中,以提高生产效率.

一、基本原理及电路 1.单片机介绍 本设计使用MCS-51系列单片机. 80C51是INTEL公司MCS-51系列单片机中最基本的产品,它采用INTEL公司可靠的CHMOS工艺技术制造的高性能8位单片机,属于标准的MCS-51的HCMOS产品.它结合了HMOS的高速和高密度技术及CHMOS的低功耗特征,它继承和扩展了MCS-48单片机的体系结构和指令系统. ????80C51内置中央处理单元、128字节内部数据存储器RAM、32个双向输入/输出(I/O)口、2个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路. ???此外,80C51还可工作于低功耗模式,可通过两种软件选择空闲和掉电模式.在空闲模式下冻结CPU而RAM定时器、串行口和中断系统维持其功能.掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能.80C51有PDIP(40pin)和PLCC(44pin)两种封装形式,如下图所示: VSS (20脚):接地 VCC(40脚): 主电源+5V XTAL1(19脚):接外部晶体的一端.在片内它是振荡电路反相放大器的输入端.在采用外部时钟时,对于HMOS单片机,该端引脚必须接地;

对于CHMOS单片机,此引脚作为驱动端. XTAL2(18脚): 接外部晶体的另一端.在片内它是一个振荡电路反相放大器的输出端,振荡电路的频率是晶体振荡频率.若需采用外部时钟电路,对于HMOS单片机,该引脚输入外部时钟脉冲;

对于CHMOS单片机,此引脚应悬浮. RST(9脚): 单片机刚接上电源时,其内部各寄存器处于随机状态,在该脚输入24个时钟周期宽度以上的高电平将使单片机复位(RESET) PSEN(29脚): 在访问片外程序存储器时,此端输出负脉冲作为存储器读选通信号.CPU在向片外存储器取指令期间,PSEN信号在12个时钟周期中两次生效.不过,在访问片外数据存储器时,这两次有效PSEN信号不出现.PSEN端同样可驱动8个LSTTL负载.我们根据PSEN、ALE和XTAL2输出端是否有信号输出,可以判别80C51是否在工作. ALE/PROG(30脚):在访问片外程序存储器时,此端输出负脉冲作为存储器读选通信号.CPU在向片外存储器取指令期间,PSEN信号在12个时钟周期中两次生效.不过,在访问片外数据存储器时,这两次有效PSEN信号不出现.PSEN端同样可驱动8个LSTTL负载.我们根据PSEN、ALE和XTAL2输出端是否有信号输出,可以判别80C51是否在工作. EA/VPP(31脚): 当EA端输入高电平时,CPU从片内程序存储器地址0000H单元开始执行程序.当地址超出4KB时,将自动执行片外程序存储器的程序.当EA输入低电平时,CPU仅访问片外程序存储器.在对87C51EPROM编程时,此引脚用于施加编程电压VPP. 输入/输出引脚: (1)P0.0―P0.7???(39脚―32脚) (2)P1.0―P1.7?? (1脚―8脚) (3)P2.0―P2.7?? (26脚―21脚) (4)P3.0―P3.7?? (10脚―17脚) MCS-51单片机有32个并行数据/地址端口,P0口为地址数据复用端,P2口作为单一的地址输出端,P

1、P3作为I/O端口使用(P3可复用). 2.最小系统 时钟电路: 单片机的时钟电路由振荡器和分频电路组成.其中振荡电路由反相器以及并联外接的适应晶体和电容组成,用于产生振荡脉冲.而分频电路则用于把正当脉冲分频,以得到所需要的时钟信号. 80C51芯片中的高增益反相放大器,其输入端为引脚XTAL1,输出端引脚为XTAL2.通过这两个引脚在芯片外并接石英晶体振荡器和两只电容(电容C1和C2一般取30pF).除使用石英晶体振荡器外,若对时钟频率要求不高,还可以用电感或陶瓷振荡器.而单片机内部则自带分频电路,对晶振产生的频率加以分频获得所需的状态时钟和机器周期.高频振荡信号除了由振荡电路产生外,还可以从外部脉冲源直接引入.对于80C51芯片,外部脉冲信号经XTAL1引脚注入,但同时要把XTAL2引脚悬空(本设计振荡频率为12MHz).外部脉冲源解法如2-2图所示: 图2-1:Using the On-Chip Oscillator 图2-2:External Clock Drive 复位电路: 复位方式: 80C51有复位信号引脚RST,用于外接引入复位信号.复位操作只有两种复位方式,即加电复位和手动复位. 加电复位 加电复位是指通过专用的复位电路产生复位信号.它是系统的原始复位方式,发生在开机加电时,是系统自动完成的(由于机器上电时电平不稳,加一个电容,对电容充电时间1/RC,等到电容充满电时复位结束,系统开始工作,这是任何单片机都具有的功能).如2-3图所示: 图2-3:上电复位 图2-4:手动复位 (2)手动复位 在单片机中,手动复位是必须具有的功能.在调试程序或者运行程序时,若遇到死机、死循环或者程序 跑飞 等情况,手动复位是摆脱这种尴尬局面的最常用方法.这时,手动复位完成的是一次重新启动操作.如图2-4所示. 除此之外,单片机系统中共使用过四种类型的复位电路,分别为:积分电路型、微分电路型、比较器型和看门狗型.在此不做介绍. 3.下载电路 MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的单电源电平转换芯片,使用+5v单电源供电.其封装及结构图如下所示: 图3-1:MAX232封装图 图3-2:MAX232内部结构图. 该芯片结构由三部分电路构成: 第一部分是电荷泵电路.由

1、

2、

3、

4、

5、6脚和4只电容构成.功能是产生+12V和-12V两个电源,供给RS-232串口电平的需要. 第二部分是书记转换通道.由

7、

8、

9、

10、

11、

12、

13、14脚构成两个数据通道.其中13脚、12脚、11脚、14脚为第一数据通道.8脚、9脚步、10脚、7脚为第二数据通道.TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DB9插头;

DB9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出. 第三部分是供电.15脚GND、16脚VCC(+5v).MAX232具有:符合所有的RS-232C技术标准;

只需要单一+5V电源供电;

片载电荷泵具有升压、电压极性反转能力,能够产生+10V和-10V电压V+、V- ;

功耗低,典型供电电流5mA ;

内部集成2个RS-232C驱动器;

内部集成两个RS-232C接收器等特点. 图3-3:RS-232下载电路设计图 COM201端是与电脑连接的串行口,TXD

1、TXD1分别为串行数据发送与串行数据接收端,实现对单片机进行程序烧写. 4.外围电路 ①DS18B20芯片及其电路 美国Dallas半导体公司的数字化温度传感器DS18B20是世界上第一片支持 一线总线 接口的温度传感器,在其内部使用了在板(ON-B0ARD)专利技术.全部传感元件及转换电路集成在形如一只三极管的集成电路内.具有体积更小、精度更高、适用电压更宽、采用一线总线、可组网等优点,在实际应用中取得了良好的测温效果. DS18B20可以程序设定9~12位的分辨率,精度为±0.5℃.可选更小的封装方式,更宽的电压适用范围.DS18B20也支持 一线总线 接口,测量温度范围为-55℃~+125℃,在-10℃~+85℃范围内,精度为±0.5℃. 图4-1:DS18B20外部封装图 (1)DQ为数字信号输入/输出端;

(2)GND为接地端;

(3)VDD为外接供电源输入端 DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号的展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位.这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;

如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度. 例如:+125℃的数字输出为07D0H,+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FF6FH,-55℃的数字输出为FC90H. 根据DS18B20的通讯协议,主机(单片机)控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位操作;

复位成功后发送一条ROM指令;

最后发送RAM指令.这样才能对DS18B20进行预定的操作.复位要求主CPU将数据线下拉500微秒,然后释放,当DS18B20收到信号后等待15~60微秒左右,后发出60~240微秒的存在低脉冲,主CPU收到此信号表示复位成功.其对应的时序图如下所示: (1)初始化(INIT_1820) 主机总线To时刻发送一复位脉冲(最短为480us的低电平信号)接着在Tl 时刻释放总线并进入接收状态,DSl820在检测到总线的上升沿之后等待15-60us,接着DS1820在T2时刻发出存在脉冲(低电平持续60-240 us).如果在时序要求范围内未能检测到存在电平,则跳到To时刻重新对其初始化,以循环检测存在脉冲,直至检测到为止并且跳到下一步骤. 图4-2:初始化时序图 (2)写时间隙(WRITE_1820) 当主机总线To时刻从高拉至低电平时就产生写时间隙见图,从To时刻开始15us之内应将所需写的位送到总线上,DSl8B20在t后15-60us间对总线采样,若低电,平写入的位是0;

若高电平,写入的位是1.采用循环语句写多bit字至总线,直至所有2位全部写完为止. 图4-3:写时序图 (3)读时间隙(READ_18200) 主机总线To时刻从高拉至低电平时总线只须保持低电平7us之后,在T1时刻将总线拉高产生读时间隙,读时间隙在t1时刻后t2时刻前有效,也就是说Tz时刻前主机必须完成读位并在To后的60us一120us内释放总线. 图4-4:读时序图 根据DSl8B20工作过程中的协议,初始化具有独立的ROM操作指令: ROM操作指令 指令代码 Read ROM(读ROM)33H] Match ROM(匹配ROM)55H] Skip ROM(跳过ROM]0CCH] Search ROM(搜索ROM)0F0H] Alarm search(告警搜索) [0ECH] 存储器操作命令 指令代码 Write Scratchpad(写暂存存储器) [4EH] Read Scratchpad(读暂存存储器) [0BEH] Copy Scratchpad(复制暂存存储器) [48H] Convert Temperature(温度变换) [44H] Recall EPROM(重新调出) [0B8H] Read Power supply(读电源) [0B4H] 图4-5:DS18B20内部结构 图4-6:DS18B20测温原理框图 本设计采用DS18B20的外部电源供电方式: 图4-7:DS18B20供电方式 外部电源供电方式是DS18B20最佳的工作方式,工作稳定可靠,抗干扰能力强,而且电路也比较简单,可以开发出稳定可靠的多点温度监控系统.在外部电源供电方式下,DS18B20工作电........

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题