单片机实习报告.docx
《单片机实习报告.docx》由会员分享,可在线阅读,更多相关《单片机实习报告.docx(35页珍藏版)》请在冰豆网上搜索。
单片机实习报告
序号(学号):
学生实习报告书
实习类别
单片机应用实习
实习地址
武汉理工大学信息工程学院
学院
信息工程学院
专业
通信工程专业
班级
姓名
指导教师
年
月
日
摘要
单片机最小系统,无论对单片机初学人员还是开发人员都具有十分重要的意义,可以利用最小系统进行编程实现工业控制。
单片机最小系统电路板在单片机开发市场和大学生电子设计方面十分流行。
本次课程设计包括STC89S52单片机最小系统(包括复位和时钟电路)及供电系统、4×4矩阵键盘、独立6个8段LED数码管显示电路以及DS18B20温度传感器。
利用Protel电路设计软件进行原理图设计,利用Keil软件编程以及Proteus软件仿真,借此巩固单片机应用、模拟电路、数字电路课程及学会各种工程软件的使用。
关键字:
单片机最小系统矩阵键盘LED显示DS18B20温度传感器ProtelKeilProteus
Abstract
MCUminimumsystem,regardlessofthesinglechipnovicestafforstaffdevelopment,whocanuseminimumsystemprogramforindustrialcontrol,hasveryimportantsense.MCUminimumsystemboardintheMCUdevelopmarketandcollegestudentselectronicdesignisverypopular.Thecurriculumdesign,includingSTC89S52MCUminimumsystem(includingaresetandclockcircuitandpowersupplysystem),4x4matrixkeyboard,theindependent6LEDdigitaltubedisplaycircuitandaDS18B20temperaturesensor.UsingProtelcircuitdesignsoftwareschematicdesign,usingKeilsoftwareandProteussoftwaresimulation,weconsolidatetheMCUapplication,analogcircuit,digitalcircuitcourseandlearnallkindsofengineeringsoftwareuse.
KeyWords:
MCUminimumsystemmatrixkeyboardLEDdigitaltubedisplayDS18B20temperaturesensorProtelKeilProteus
1.基本原理及电路图
单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统. 对51系列单片机来说,最小系统一般应该包括:
单片机、晶振电路、复位电路、按键输入、显示输出等。
单片机接口电路主要用来连接计算机和其它外部设备。
本次设计主要完成的扩展电路包括键盘显示电路、数字时钟、数字温度计和数字频率计四大模块。
其原理框图如下图1.1所示:
图1.1总原理框图
整体电路原理图如下图1.2所示:
图1.2整体电路原理图
2.硬件电路原理与设计
硬件电路主要由复位电路、振荡电路、数码管显示电路、矩阵键盘电路和串口电路等组成。
各单元模块电路如下:
2.1复位电路
单片机的置位和复位,都是为了把电路初始化到一个确定的状态,一般来说,单片机复位电路作用是把一个例如状态机初始化到空状态,而在单片机内部,复位的时候单片机是把一些寄存器以及存储设备装入厂商预设的一个值。
单片机复位电路原理是在单片机的复位引脚RST上外接电阻和电容,实现上电复位。
当复位电平持续两个机器周期以上时复位有效。
复位电平的持续时间必须大于单片机的两个机器周期。
具体数值可以由RC电路计算出时间常数。
复位电路由按键复位和上电复位两部分组成。
其电路图如图2.1所示。
2.1.1上电复位
STC89系列单片及为高电平复位,通常在复位引脚RST上连接一个电容到VCC,再连接一个电阻到GND,由此形成一个RC充放电回路保证单片机在上电时RST脚上有足够时间的高电平进行复位,随后回归到低电平进入正常工作状态,这个电阻和电容的典型值为10K和10uF。
2.1.2按键复位
按键复位就是在复位电容上并联一个开关,当开关按下时电容被放电、RST也被拉到高电平,而且由于电容的充电,会保持一段时间的高电平来使单片机复位。
图2.1复位电路
2.2振荡电路
单片机系统里都有晶振,在单片机系统里晶振作用非常大,全称叫晶体振荡器,他结合单片机内部电路产生单片机所需的时钟频率,单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片接的一切指令的执行都是建立在单片机晶振提供的时钟频率。
在通常工作条件下,普通的晶振频率绝对精度可达百万分之五十。
高级的精度更高。
有些晶振还可以由外加电压在一定范围内调整频率,称为压控振荡器(VCO)。
晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。
单片机晶振的作用是为系统提供基本的时钟信号。
通常一个系统共用一个晶振,便于各部分保持同步。
有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。
晶振通常与锁相环电路配合使用,以提供系统所需的时钟频率。
如果不同子系统需要不同频率的时钟信号,可以用与同一个晶振相连的不同锁相环来提供。
STC89C51使用11.0592MHz的晶体振荡器作为振荡源,由于单片机内部带有振荡电路,所以外部只要连接一个晶振和两个电容即可,电容容量一般在15pF至50pF之间。
其电路原理图如2.2所示。
图2.2振荡电路
2.3数码管显示电路
LED数码管显示是利用半导体发光制成条形的发光二极管,封装在一起组成数字或其他符号形状。
数码管根据公共端不同,分为共阴极和共阳极两种形式。
共阴极数码管共阳极数码管
根据设计需要,本次选用共阴极数码管。
由于一个数码管不能实现多位数显示,同时从节省I/O端口考虑,结合数电知识,利用74LS139并联四个一位8段数码管。
由于点亮数码管需要10-100毫安电流,单片机输出口难以提供,所以加9013型NPN三极管在接入数码管前进行扩流。
74LS139是德州仪器公司生产的集成2个2-4译码器芯片。
单片机控制译码器,四个公共端接芯片的Y0、Y1、Y2、Y3,实现对四个数码管的选通。
这样,单片机一组端口控制数码管阳极,74芯片通过另外端口选通阴极,即可实现不同数码管显示不同数字。
由于74LS139是低电平有效,所以也适用于共阴极数码管。
其电路原理图如图2.3和2.4所示。
图2.3共阴极数码管图2.4锁存器
2.4矩阵键盘电路
其工作原理是:
从0列开始,顺序行扫描,即该行输出为0。
每扫描一行,读入列线数据,从0开始,列检查,找该行输出为0的列,若无,则顺序扫描下一行,并检查其各列;若找到某列线为0,则该列与检查行交叉的按键为被按下的键。
从0行0列开始,顺序将按键编号,就可以按扫描的值得到按键的值。
本设计使用的是4个独立按键,其功能设置为时间的显示、时间的设置、温度的显示和数字频率的显示。
其电路原理图如图2.5所示。
此外还要消除按键在闭合或断开时的抖动。
消除抖动的方法可采用消抖电路(RS触发器闩锁电路硬件消除抖动),也克采用延时方式软件消除抖动(延时后再重读,以跳过抖动期)。
在矩阵键盘中,通常采用软件消除抖动。
本设计中主要使用了独立键盘,故电路图中简要的画出了4*4的矩阵键盘和4个独立按键。
图2.5矩阵键盘和独立按键
2.5串口通信电路
串口是计算机上一种非常通用设备通信的协议(不要与通用串行总线UniversalSerialBus或者USB混淆)。
大多数计算机包含两个基于RS232的串口。
串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232口。
同时,串口通信协议也可以用于获取远程采集设备的数据。
串口通信的概念非常简单,串口按位(bit)发送和接收字节。
尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。
它很简单并且能够实现远距离通信。
比如IEEE488定义并行通行状态时,规定设备线总常不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。
典型地,串口用于ASCII码字符的传输。
通信使用3根线完成:
(1)地线,
(2)发送,(3)接收。
由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。
其他线用于握手,但是不是必须的。
串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。
MAX232是电平转换芯片。
1970年,美国电气学会规定“RS232”串口通信协议。
规定逻辑“1”,-5—-15V;逻辑“0”,+5—+15V。
噪声容限为2V。
要实现利用串口与单片机进行通信,就要进行电平转换,把标准转化成单片机可以识别的。
MAX220–MAX249都是电平转换芯片,在单片机最小系统中,使用MAX232。
其电路原理图如图2.6所示。
图2.6串口通信电路
3.软件设计
3.1软件介绍
3.1.1设计软件Protel
Protel公司于80年代末推出了Protel——电子行业的CAD软件,由于最初在国内普及率较高,所以发展较好,大多数公司中低频电路设计都采用此软件。
早期的版本主要用于印刷版自动布线。
后来推出著名的Protel99se,能够在Windows9X/XP下运行。
2000年以后,Altium公司又推出了该软件的升级版AltiumDesigner。
AltiumDesigner在原有的基础上做出了很大的改进,能够打开如Pspice等仿真软件做出的文件。
虽然市场上还有很多电路设计软件,但是该软件还是占有很大的市场份额。
现在业界最高版本为AltiumDesignerWinter09版。
本次设计采用的是AltiumDesigner进行电路原理图的绘制。
3.1.2程序编写软件Keil
KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。
Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。
本次设计编程主要使用Keil软件进行编程。
3.1.3仿真软件Proteus
Protues软件是英国Labcenterelectronics公司出版的EDA工具软件。
它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。
它是目前最好的仿真单片机及外围器件的工具。
虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。
Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。
是目前世界上唯一将电路仿真软件、PCB设计软