51系列单片机教学实验模板硬件毕业设计Word文档下载推荐.docx
- 文档编号:16637726
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:25
- 大小:2.03MB
51系列单片机教学实验模板硬件毕业设计Word文档下载推荐.docx
《51系列单片机教学实验模板硬件毕业设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《51系列单片机教学实验模板硬件毕业设计Word文档下载推荐.docx(25页珍藏版)》请在冰豆网上搜索。
致谢.........26
参考文献.........27
摘要
51系列单片机教学实验板既是一块用户实验板,又是一种功能强大而实用的单片机开发调试工具。
它与传统的教学实验板相比有如下的优点:
(1)价格低廉。
(2)使用简单方便,只要有带RS232串口的PC机就能进行实验。
(3)功能全,基本上具备单片机常用的接口,如数模转换、模数转换、存储器、LED数码管显示、键盘人机接口、并行接口、串行接口,等等。
采用本仿真开发实验板,可使初学者迅速掌握单片机原理及应用,熟悉汇编语言、甚至单片机C语言。
用本仿真开发实验板,对用户源程序进行实时在线调试,可极大地缩短单片机应用系统的开发时间。
前言
近几十年来,单片机因其体积小,重量轻,耗能省,价格低,可靠性高和通用灵活等优点,在生产过程控制,制动检测,数据采集与处理,科技计算,商业管理和办公室自动化等方面获得了广泛的应用。
近几年来,单片机的发展更为迅速,它已经渗透到许多学科和领域,以及人们生活的各个方面。
单片机在各个科学技术领域中的迅速发展,与单片机所构成的技术及应用系统特点有关:
*单片机构成的应用系统有较大的可靠性。
*系统扩展和系统配置比较典型而规范,容易构成各种规模的应用系统。
*由于构成的应用系统是一个计算机系统,相当多的测控功能由软件实现,故具有柔性特点。
*有优异的性能价格比.
因此,单片机技术已经成为各高校自动化、测控、电子技术等相关专业的必修课程,社会上对该技术的需求也与日俱增。
随着单片机技术的发展,要求从业人员不仅有理论基础,还要有实践能力,其教育市场十分广阔。
单片机教学实验板是单片机简单设计系统,它体现了单片机系统的整体设计思路,熟悉这些应用接口以后在单芯片软硬件设计中受用无穷,因此近年来对这类实验板的需求大大增加。
目前各高校广泛使用的单片机仿真实验多是采用仿真头或者外配JTAG边界扫描技术,仿真头每套需要千元左右,JTAG接口也要300-500元一个,价格昂贵,且不利于进行细致的调试。
.....关键词:
单片机;
实验板;
接口电路;
汇编语言
硬件电路设计
1.1仿真实验板的概况
该实验板最大的特点是:
(3)功能全,基本上具备单片机常用的接口,如ADC、DAC、存储器、LED数码管、键盘、并行接口、串行接口,等等。
由于同时具备上述特点,使读者在使用本教材学习单片机可以有兴趣、高效、自主地进行。
仿真实验板既是一块用户实验板,又是一种功能强大而实用的单片机开发调试工具,它充分利用PC机的系统资源,使用户可以轻松完成8051单片机应用系统的仿真调试工作,从而省去了价格昂贵的仿真器。
用户在PC机上完成软件程序的编辑、编译、连接,通过串行口通信方式将目标程序下载到C51仿真开发实验板中,可对汇编语言和高级语言源程序进行跟踪调试,具有指令单步/过程单步运行,设置多个临时断点,随时察看内存数据或单片机内部资源,在线修改源程序等多种功能。
随板预留了蛇目孔供用户作扩展区域,并将单片机的引脚全部引出,可作为外部仿真头使用。
扩展了模拟信号发生电路(产生三角波、方波)、8255、AD0809、DAC0832、62256、蜂鸣器、按键和LED显示接口电路,此外还预留了若干译码输出口线,可供用户扩展。
1.2仿真实验板的资源
板上主要有以下资源:
1.电源:
采用单一+12V电源供电(通过电源适配器由~220V得到),通过7905实现稳压的+5V和不稳压的-2~3V电源。
其中+5V为单片机及其外围电路供电,-2~3V电源为运算放大器供电。
2.配有32KRAM芯片62256,调试时用户程序被下载到该芯片中,调试完成后可将其换为固化有用户程序的2764/27256芯片,也可以保留62256用作为数据存储器,但要把程序写入89C52中。
3.AT89C52单片机。
仿真开发板仅占用单片机内部串行口和定时器T1。
板上留有充分的用户扩展区,方便用户进行各种接口扩展。
采用盲调的方式也可以在用户程序中使用单片机内部串行口和定时器T1。
单片机全部引脚都引出,可作为仿真插头接口,还预置了若干译码输出端口(地址线)以及数据线以便于用户使用。
4.并行接口芯片8255。
并行接口芯片8255是单片机系统最常用的器件,只要掌握了8255的接口技术,也就不难掌握其他的接口芯片了。
5.8位A\DC芯片ADC0809。
虽然ADC0809已经落后,但采用它更便于学习和成本低廉。
通过ADC0809可以实现和掌握外围器件的接口和数据采集原理。
6.8位D\AC芯片DAC0832。
同样,虽然DAC0832已经落伍,但采用它便于和掌握外围器件的接口和波形的产生。
7.动态扫描LED。
LED显示是单片机应用系统常用的显示方式之一,而动态扫描LED是较难掌握的难点之一。
虽然现在已经很少采用8255来驱动LED数码管,但采用它便于直观地观察实验现象,掌握动态扫描LED的原理。
8.动态扫描键盘。
键盘是单片机应用系统最常用的人机对话接口,而且动态扫描键盘更是较难掌握的难点之一。
本实验板配置动态扫描键盘是为了读者通过实验能够确实掌握动态扫描键盘。
表10-1和10-2分别给出了跳线1和跳线2的作用。
表10-3给出了单片机存储器空间的地址分配。
表10-4和10-5分别给出了LED显示器的显示码和位选码。
这些数据在编程时是必不可少的依据
1.3电路原理图说明
1.3.1单片机最小系统的电路原理
图10-4所示为单片机89C52(图中标明为8952)及其外部地址译码、锁存电路图。
89C52的P2的作为高位地址A8~15,其中A15控制译码器74HC138的使能端E1、E2,因而74HC138有效输出片选信号时A15为低电平,即它所选的地址在低32K。
同时A15、A14和A13又作为译码输入,确定了片选端Y0、Y1和Y2分别为0000~1FFFH、2000~3FFFH和4000~5FFFH。
74HC573作为低位地址锁存器,在ALE的作用下锁存P0口输出的低位地址。
请注意74HC573的输入端和输出端分别顺序排列在芯片两段,特别方便PCB版布线,因此建议读者采用74HC573作为地址锁存器,而不要象有些书籍所给的74HC373。
图10-5所示为单片机89C52的晶振、复位和引脚引出电路。
晶振采用11.0592MHz,该频率有利于提高串口的通信可靠性,同时又保证单片机有较高的运行速度。
复位电路采用简单的RC充、放电电路,在实验板上电时,C1上的电压不能突变,使单片机的复位端(图中的RST点)处于高电平,在经过约200~300ms的时间后,由于经过R4的充电,RST点回到低电平,这一过程完成了单片机的复位。
如果在调试过程中,出现死机、程序跑飞等情况,可以按下复位键S1强制单片机复位。
JP1的作用是把单片机的P1口和P3口的引脚引出,以方便读者进行一些扩展实验。
1.3.2模数转换器ADC0809的接口电路
ADC0809是一种8路模拟输入逐次比较型A/D转换器,由于价格适中,与单片机的接口、软件操作均比较简单,目前在8位单片机系统中有着广泛的使用。
ADC0809由8路模拟开关、地址锁存与译码器、8位A/D转换器和三态输出锁存缓冲器组成。
图10-6所示为模数转换器ADC0809的接口电路。
片选信号Y0用于选择ADC0809。
将Y0与单片机写信号(图中标为WR)相或非后给ADC0809的ALE端以将通道选择信号ADD-A~ADD-C(分别接接单片机的地址信号A0~A2)打入ADC0809的通道选择寄存器用于选择ADC0809的模拟输入通道,同时该信号还接ADC0809的转换启动端START,在打入通道选择信号的同时启动ADC0809的转换。
将Y0与单片机读信号(图中标为RD)相或非后给ADC0809的数据读出使能端ENABLE,用以从ADC0809读出转换结果。
ADC0809的转换结束信号EOC通过或非门构成的反相器接单片机的外部中断端,单片机可以通过中断或查询方式来判断模数转换是否结束和结果数据是否准备好。
单片机的ALE信号通过计数器74LS393分频后提供给ADC0809作为时钟信号,由CLOCK端输入到ADC0809。
为了保证模数转换的精度,ADC0809采用模拟电路的电源供电以避免数字电路中难以避免的脉冲干扰。
对ADC0809的参考电源输入端采用一大一小两个电容进行滤波:
大电容(10mF电解电容)用于滤除低频干扰,但由于大电解电容存在较大的分别电感,因而它滤除高频干扰的效果反而不如小电容,因此并联一个高频性能好的小电容用于滤除高频干扰。
通常在PCB板上这两个电容都要尽可能地靠近ADC0809参考电源输入引脚安装,以取得较好的效果。
1.3.3数模转换器DAC0832的接口电路
D/A芯片的功能是将输入的数字量转换成与其成比例的模拟量。
DAC0832是用CMOS工艺集成的8位数据输入D/A芯片,具有20个引脚,其输出模拟量可有28=256个不同的等级。
图10-6所示为数模转换器DAC0832的接口电路。
片选信号Y1直接接DAC0832的片选端CS的缓冲寄存器锁存端Xfer,在与写信号(图中标为WR)共同作用下把需转换的数据经过总线打入DAC0832的数据缓冲器。
由DAC0832转换后的模拟信号是电流信号,经过运放mA741(图中标为UA741)构成的电流/电压转换电路变成电压信号输出,J2用于向外部引出由DAC0832转换后的模拟信号。
由于运放mA741输出的电压信号为负极性,因而运放mA741不仅需要正电源,还需要负电源。
图中-AGND实际上是-2~3V的电源。
为了简化电源的设计,仿真实验板的电源部分采用了特殊的设计,这将在后面加以详细地介绍。
1.3.4并行接口芯片8255A的接口电路
8255A是Intel公司开发的一个可编程并行接口器件,为40条引脚双列宣插式大规模集成电路。
它采用单十5V电源供电、输入输出电平与TTL电路兼容。
8255A广泛用于扩展单片机的并行接口电路中。
图10-7所示为并行接口芯片8255A(图中标为8255,以下也简称为8255)的接口电路。
片选信号Y2直接接8255的片选端,单片机写信号(图中标为WR)接8255的写信号,单片机读信号(图中标为RD)接8255的读信号,单片机的地址信号A11和A12分别接8255的地址信号A0和A1。
单片机的复位信号RST接8255的复位信号RESET。
8255的PA口和PB口用于动态地驱动LED数码管,其中PA口用于驱动段信号,PB口用于驱动位信号。
注意:
单片机和绝大多数的器件低电平的驱动能力强但又很有限,因而段驱动采用低电平有效(LED发光)和选用共阳极LED数码管。
R9~R16为限流电阻。
可见光的LED的压降一般在1.6~1.8V,工作电流5~20mA,据此可以计算限流电阻的阻值。
但在计算动态扫描显示的数码管的限流电阻时应该注意:
(1)LED的亮度与平均电流成正比,有N位数码管时,瞬时电流(用于计算电阻阻值的电流)应该比所需要亮度的工作电流(平均电流)大N倍。
(2)注意瞬时电流不能超过25mA(8255的最大极限值),否则很容易烧毁8255。
对于采用较小的数码管时,还要注意瞬时电流不能超过数码管的最大电流极限,特别是在调试和出现故障时,某位数码管由于较长时间地通过接近甚至超过其最大电流极限而烧毁。
R17~R24为驱动三极管的限流电阻。
由于有三极管来驱动数码管的位(公共极――阳极),因此限流电阻可以取较大的值。
J3用于引出实验板上没有使用的PB口5个引脚PB3~7。
1.3.5数据/程序存储器HM62256
随机存贮芯片(RAM)HM62256的存贮量为32KB,地址线有(A0~A14),是单片机应用系统中最常见的数据存储器。
在实验板中,HM62256(下面简称62256)更多的是充当程序存储器:
在实验和调试程序时,在单片机89C52驻留的监控程序的控制下把用户程序下载到62256中。
所以,在下载程序时,对单片机89C52驻留的监控程序而言,62256是作为数据存储器,把PC通过RS232下载的程序作为数据存放在62256中。
而在调试时,在监控程序的控制下,从单片机89C52从62256中取出指令来执行。
因而62256的接口设计有特殊的要求:
单片机把62256中存储的内容既能作为数据读出,也能作为程序读出。
前面我们已经说明,单片机从外部存储器读出数据时采用数据读信号,而从外部存储器读出指令时采用指令数据读信号。
而62256只有一个读信号,所以,在实验板中采用和相与后接62256的端,称为vonNeumann接法。
图10-8给出了数据/程序存储器62256的接口电路,图中62256的端标为OE。
A15反相后接62256的端(图中标为OE),说明62256的地址分配为高32k(8000H~FFFFH)。
1.3.6RS-232串行接口
实验板上的串行接口是实验板与PC通信的唯一通道,需调试的程序通过串行接口下载到实验板中,而实验板上程序的运行状态和部分结果也需通过串行接口上传到PC机。
PC机上的串行接口是RS-232,RS-232包括了按位进行串行传输的电气和机械方面的规定。
RS-232关于电气特性的要求规定,驱动器输出电压相对于信号地线在-5V~-15V之间为逻辑1电平,表示传号状态;
输出电压相对于信号地线在+5V~+15V之间为逻辑0电平,表示空号状态。
在接收端,逻辑1电平为-3V~-15V,逻辑0电平为+3V~+15V,即允许发送端到接收端有2V的电压降。
这样的RS-232电平和TTL逻辑电路(单片机)产生的电平是不一样的,因此,PC机与单片机89C52之间必须经过一定的电路转换逻辑电平。
图10-9给出了实验板上的RS232串行接口逻辑电平转换电路。
图中的芯片MAX202E是美国MAXIM公司为在苛刻环境下进行RS-232通信设计的MAX202E线驱动/接收器,构成转换电路简捷。
MAX202E线驱动器/接收器内部含有2个驱动器、2个接收器。
每个发送器输出端和接收器输入端设有保护,不闭锁(不同于双极型)、能保证120kbit/s数据传输速率、3V/ms最小斜升速率。
同时,MAX202E提供额外保护装置以防止静电(ElectrostaticDischarge,ESD),它的RS-232输入端和输出端能经受住采用人体模型的±
15kv放电测试,当按IEC801-2进行测试时,能经受住±
18kv的接触放电和115kv的空气间隙放电试验。
这适用于RS-232连接经常要改变的场合(比如笔记本电脑、本实验板等)。
MAX202E使用单一的+5V电源工作,正常工作时仅需要外接4个0.1mF的电容器(建议采用陶瓷电容器,在10mF以内选值)。
由于在实际应用中易受到电源干扰,用一个与上述电容器等值的电容器接在Vcc到地之间去藕。
一个完整的RS-232接口有22根线,采用25根插针的标准连接器,各插针定义见表10-6。
在使用PC机和单片机进行直接通信时,一股选用PC机端的9针串口,因此RS-232只需要少数几根线即可正常工作。
TXD/RXD是一对数据线,TXD为发送数据输出,RXD为接收数据输入,当PC机和单片机以全双工方式直接通信时,双方的这两根线应交叉连接。
所有信号均通过信号地构成回路,双方的信号地相连。
有以上这三条线(TXD、RXD和信号地),单片机和PC机就可以分别对异步通信电路芯片编程,设置成不需要任何联络或握手信号、直接进行数据交换的方式。
RS-232二线式直接数据通信接口如图10-10所示。
图10-10中,通常左边为连接PC机的25针插头时,右边连接单片机实验板只需2根信号线(另加1根地线)。
信号线为双方的2、3端交叉连接,而7端对应连接,即完成了PC机与单片机仿真实验板的连接。
仿真实验板配套的RS-232通讯线就是采用上述连接方式制成的。
1.3.7动态LED显示器与键盘
仿真实验板采用了4位一体的共阳极LED数码管,这种数码管的各同名段连接在一起共用一个引脚引出,各位(每位数码管的公共端)单独引出。
由于段驱动电流较小,为简单起见,由8255的PA口直接驱动(加限流电阻)。
而LED数码管的位电流较大,故采用三极管来驱动。
位扫描信号由8255的PC口给出。
图10-11给出了动态LED显示器电路原理图。
相比于静态显示方式(1根口线驱动一个LED),动态扫描方式需要的口线要少得多。
如仿真实验板上有8位数码管,每位数码管有8个LED,如果采用静态驱动方式,则需要8×
8=64根口线来驱动。
而采用动态驱动方式,只需要8(段驱动)+8(位驱动)=16根口线。
动态方式利用了人眼的视觉暂留效应,每位数码管依次显示一个较短的时间,虽然每个瞬时只有一位数码管在显示,但对观察者看来,好像所有的数码管是在同时显示一样。
虽然动态显示方式节省了口线,但对编程提高了要求。
每位数码管显示的时间(或频率)需要在一个合理的范围:
显示频率通常在25Hz以上才能保证较好的显示效果。
频率低于25Hz时,观察者能够看出数码管在闪烁,频率在25Hz左右,有相当一部分人能够感觉到数码管的闪烁,当频率增加到50Hz时,数码管看上去就十分流畅、舒服了。
但显示频率再增加,几乎没有人能够分辨出显示效果的改善。
显示频率过高,显示程序耗时大幅度增加,编程困难,显示亮度下降。
利用显示的位扫描,增加几个口线就可以实现扫描(阵列)式键盘。
在LED数码管显示时,每个瞬时8255的PC口给出位扫描信号只有1根口线为低电平。
由PC口的口线组成“列”,而PB口的3根线组成“行”,在行列的焦点上放置一个按键。
如果在某个瞬时单片机检测到PB口线上的低电平时,就可以根据检测到低电平的PB口口线和此时给出低电平的PC口口线判断出按键的位置,也就是键值。
为了清楚起见,在图10-12中重新给出实验板阵列式键盘接口电路。
在需要按键较多时,阵列式按键占用的口线较少,特别是在有LED数码管动态扫描显示的情况下,能够大幅度节省口线,但阵列式按键的编程复杂,特别是需要作防抖处理时更为烦琐。
因而,实际应用的单片机系统几乎都采用专门的、同时具备LED数码管动态扫描显示驱动功能和阵列式按键管理功能的集成电路,不但没有提高成本,接口电路也大大地简化,编程也极为简单,耗用机时更少。
这些芯片有CH451、BC7280/81和ZLG7289A等。
1.3.8蜂鸣器驱动电路
单片机口线的输出低电平的驱动能力比高电平要强得多,但在保证符合逻辑电平时也只有5mA左右,不需要保证逻辑电平时(如驱动LED时可以有10多个mA)。
因此,如果要驱动较大功率的器件:
(1)应该以低电平有效;
(2)外接功率驱动器件。
蜂鸣器需要的驱动电流较大,根据上述考虑,仿真实验板采用了10-13所示的蜂鸣器驱动电路。
该电路结构简单、方便适用。
虽然是采用分立元件,在需要驱动负载个数不多的情况下,采用这种电路是较为适宜的。
如果需要驱动较多和较重的直流负载,可以选用象7反相功率驱动器MC14433这样一类集成电路比较合适。
1.3.9电源
仿真实验板电源电路如10-14所示。
220V的交流电适配器输出的12V直流由插座J1输入。
经过C9和C15的滤波输入到三端稳压器7905。
7905是-5V输出的稳压集成电路,因而7905的输出端(3端)比接地端(1端)要抵5V。
所以在电路中把3端作为地(GND),而把1端作为VCC,以保证单片机的工作电压是所需的、稳定的+5V。
而把7905的输入端(2端)作为模拟电路的负电源(-AGND)为运放等供电。
图中的LED发光管D5有两个作用:
(1)作为电源指示。
(2)为模数转换器提供基准电源。
由于发光管压降一般在1.6~1.8V之间,而模数转换器ADC0809的参考电源需要2.5V,因此,串接一只普通的二极管D6,使基准电源Vref1在2.2~2.4V之间,基本上满足电路的要求。
仿真实验板的数字电路和模拟电路的电源线采用了各自走线的方法,以减少数字电路和模拟电路之间的相互干扰,特别是数字电路对模拟电路的干扰。
如果采用完全独立的两套电源为数字电路和模拟电路分别供电,将显著地增加电路的复杂性和成本。
电路中虚设两个电阻R25和R26,分别将数字电路和模拟电路的电源连接在一起。
实际电路可以将R25和R26以导线直接短接来代替。
这种方法在不增加电路的复杂性和成本的情况下,显著地降低数字电路和模拟电路之间的相互干扰。
2.2软件实验
2.2.1存储器块清零
一、实验目的
1.掌握存储器读写方法。
2.了解存储器的块操作方法。
二、实验内容
1.指定内部RAM中某块的起始地址和长度,要求能将其内容清零。
2.指定外部RAM中某块的起始地址和长度,要求能将其内容清零。
3.指定外部RAM中某块的起始地址和长度,要求能将其内容置为某固定值(如0FFH)。
三、实验说明
通过本实验,学生可以了解单片机的存储器结构及读写存储器的方法,同时也可以了解单片机编程、调试方法。
四、实验仪器和设备
PC机、WAVE软件。
五、参考程序框图
否
是
存储器块清零参考程序框图
2.2.2二进制转换BCD码
1.掌握简单的数值转换算法。
2.基本了解数值的各种表达方法。
3.将给定的一个单字节二进制数,转换成非压缩的二—十进制(BCD)码。
4.将给定的一个单字节二进制数,转换成压缩的二—十进制(BCD)码。
计算机中的数值有各种表达方式,这是计算机的基础。
掌握各种数制之间的转换是一种基本功。
有兴趣的同学可以试试将BCD转换成二进制码。
五、参考程序框图
单字节二进制数转换成非压缩BCD码框图
2.2.3十进制到ASCII码转换
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 51 系列 单片机 教学 实验 模板 硬件 毕业设计