单片机原理与接口技术实验指导书_第1页
单片机原理与接口技术实验指导书_第2页
单片机原理与接口技术实验指导书_第3页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《单片机原理与接口技术实验》实验指导书适用专业:电信工程通信工程信息工程自动化信息与通信工程学院前言一、课程性质本课程是电子信息工程、通信工程、信息工程和自动化专业必修的专业实验课程。通过本课程的教学,使学生深刻体会到单片机原理与接口技术的应用,掌握汇编和C51语言的语法和技巧,熟悉电子系统的设计和调试过程,使其具备研究和开发以单片机为核心的电子系统的能力。二、项目设置本课程总学时为16,开设的具体实验项目如下:实验1 跑马灯控制(2学时,必修)实验2 模拟交通灯控制系统设计(2学时,选修)实验3 串行口通信实验(3学时,必修)实验4 动态显示与矩阵式键盘实验(3学时,必修)实验5 的DA/ADC转换实验(3学时,选修)三、本书特点本指导书的特点是引入工程项目机制来管理实验项目,着重培养学生的方案设计、算法分析和现场调试能力,为将来成为卓越工程师打下坚实的基础。I目录目录 1第一章开发平台使用入门 1KEILC51使用入门 1.1KeilC51简介 11.1.2 uVision4操作步骤 1PROTEUS使用入门 10Proteus简介 10Proteus设计与仿真开发过程 10PZ-ISP使用介绍 18USB驱动程序安装 18PZ-ISP烧录软件使用 19第二章HNIST-2型单片机实验装置原理 24HNIST-2型单片机实验装置原理图 24单片机主机及外围电路 24LED与简单按键电路 25动态显示与矩阵式键盘电路 26AD与DA电路 28E2PROM电路 29第三章实验项目 31实验报告要求 31实验报告封面 31实验一跑马灯实验 33实验二交通灯实验 36实验三串行口通信实验 40实验四动态显示与矩阵式键盘实验 42实验五I2C的DA/ADC转换实验 45第一章开发平台使用入门keilC51使用入门KeilC51简介KeilC51KeilSoftware51系列兼容单片机开发工具。它集编辑、编译、仿真与调试于一体,支持C语言与汇编语言开发。C51软件提供丰富的库函数和功能强大的集成开发调试工具,生成的目标代码效率非常高。C51uVision试等组合在一个功能强大的环境中。目前,集成开发环境使用较多的版本为uVision4uVision4的基本应用。uVision4操作步骤1、启动uVision4。keil软件后,会在桌面上自动建立一个名为“keiluVision4快捷图标,双击该图标启动软件,第一次进入uVision41.1示。图1.1 uVision4启动界面12、建立工程。单击Project菜单,在下拉菜单中选中NewProject选项。图1.2建立工程菜单3、命名工程,进行保存。exam1文件夹里,exam11.4所示,然后点击保存。(会包含多个文件,将工程放在文件夹中方便管理,一般给新建的工程建立一个1.3所示)图1.3给新建的工程建立一个文件夹2图1.4保存新建的工程4、选择器件。1.5根据所选用的单片机来选择,keilC5151AtmelAT89S52AtmelAT89S52,点击“OK”。图1.5器件选择对话框3图1.6选择MCU型号5、完成上一步骤后,出现提示是否加载标准8051Startup文件,单击“是(Y)”,如下图1.7所示。图1.7是否加载8051STARTUP文件6、源程序编辑。1.8中,单击“FieNe单击快捷按钮。图1.8 新建源程序新建文件后界面如下图1.9所示。4编辑窗口图1.9 源程序编辑界面此时光标在编辑窗口里闪烁,这时可以键入用户的应用程序了,建议首先保存该空白的文件,单击菜单上在下拉菜单中单“Save选项,或单击保存快捷按钮 ,如下图所示,在“文件名”栏右侧的编辑框中,键入欲使用的文件名,同时,必须键入正确的扩展名。注意,如果用C语言编写序,则扩展名为(.c);如果用汇编语言编写程序,则扩展名必须为(.asm)。此处我们保存为“e”,然后,单击“保存”按钮。图1.10 源程序保存57、添加源程序到工程。在编辑界面,单击Target1前“+”。图1.11添加源程序到工程然后单击“AddFiletoGroup‘SourceGroup1’”弹出对话框如下图1.12所示。图1.12添加源文件窗口添加文件对话框默认文件类型为Csourcefile,是以C为扩展名的文件,由于这次我们编写的是汇编程序,是以asm为扩展名,所以我们要在文件类型的下拉列表中找到并选中AsmSourcefile,如图1.13所示。6图1.13选择源文件的类型(意,文件加载后,该对话框并不会消失,往往会误以为加载失败而再次双击加载,这时会出现图所示对话框,提示文件已在列表中)图1.14添加汇编语言源文件7图1.15提示文件已在工程中SourceGroup1.16所示。图1.16添加源程序后的主界面8、程序编辑。。8输入程序图1.17输入程序后的主界面9、设置目标文件属性。。图1.18打开设置对话框在下拉菜单中单击“OptionsforTarget‘Target1’1.19话框,单击Output标签,勾选CreateHEXFile选项,使程序编译后产生HEX1.20所示。9图1.19output页面设置对话框图1.20选中CreateHEXFile选项10、编译工程。点击“Project”菜单,在下拉菜单中单击“BuiltTarget”选项(F,如源程序中有语法错误,会有错误提示给出,应重新修改源程序,直至通过编译。Proteus使用入门Proteus简介Proteus软件是英国Labcenterelectronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。这里我们主要介绍51单片机系统的Proteus设计与仿真应用。1.2.2 Proteus设计与仿真开发过程1051单片机系统的Proteus设计与仿真的开发过程如下:1、电路设计。ISIS和电气检测等。2、程序设计。在µVision_4试,最后生成目标代码文件(*.hex)。3、仿真调试。ISIS实时交互、协同仿真。它在相当程度上反映了实际单片机系统的运行情况。具体操作步骤如下:一、Proteus仿真电路设计1、启动proteus。ISISProfessional序”→“Proteus7ProfessionalISIS7Professional”,进入ProteusISIS成环境。如图所示。图ProteusISIS启动界面2、新建设计文件。启动Proteus进入ISIS系统后,自动出现一个空白设计,模板默认为“DEFAULT”,文件名在窗口顶端的标题栏为未命名“Untitled”。单击按钮,对新建设计文件命名,其后缀自动为.DSN。11也可单击菜单中的“file→NewDesign”,出现选择模板窗口,如图所示,选中模板“DEFAULT”,点击“确定”。单击按钮作。

,完成新建设计文件操图模板选择窗口3、选取元器件并添加到对象选择器中。单击绘图工具栏中元器件按钮 ,进入元器件放置模式。单击如图示“P”按钮,弹出“PickDevices”的选取元器件对话框,如图所示,在其左上角关键字一栏中输入元器件名称,则出现与关键字匹配的元器件列表。选中元件,再单击按钮,便将该器件加入到ISIS对象选择器中,如图所示12元器件按钮选取元器件图选取元器件图选取元器件对话框13对象选择器窗口图所选元器件在对象选择器中显示注意:单片机电路可以略去单片机振荡电路,复位电路,电源和接地。4、放置、移动、旋转元器件。ISIS名上,预览窗口出现该元件符号,如图所示。把鼠标移到编辑窗口后,单击左键就出现该元件,拖动鼠标到某位置,单击鼠标放置元器件于该位置。预览窗口出现所选器件符号

编辑窗口单击器件名图器件放置移动元器件:先将鼠标指在元器件上左击选中,使元器件处于选中状态(即高亮度状态),再按住鼠标左键拖动,元器件就跟随指针移动到达目的地后,松14开鼠标即可。若要改变元器件放置方向,转90°,对元器件右击选中,再根据弹出的单单击按钮 或 进行旋转,单击按钮 或 进行镜像操作,等等。5、放置电源、地(终端)。单击绘图工具栏中终端按钮 ,在ISIS对象选择器中出现如图所示端,选择POWER、GROUND等,象放置元器件一样放置。DEFAULT 缺省INPUT 输入OUTPUT 输BIDIR 双向POWER 电GRONND 地BUS 总线终端按钮图选择终端6、连线。直线:系统默认自动捕捉,在自动捕捉有效的情况下,当光标靠近引脚末标连线跟着光标走,当光标靠近另外一个引脚末端或线出现“□”时,单击鼠标,则连线这两点间。折线:若要画折线,只要在转折点单击左键;若在中途想取消,可右双击或按“Esc”键。若两点之间较远或不方便连线:可以将连线在空白处时左双击即可结束画线,这时终端出现一个黑点。右击该连线,在弹出菜单中选择网络标号对该线给出一个网络标号,同样在连线的另外一端给出相同网络标号,则这两点连接了。7、设计的简单电路。如图所示:15图电路设计二、仿真调试1、加载目标代码文件。鼠标在ISIS编辑区中单片机AT89C51单击左键选中,再单击左键打开其属性窗口,如图所示,在其中的“ProgramFileKeiluVision4目标代码文件(*.hex)ClockFrequency栏中设置仿真时钟频率。选择目标代码文件设置仿真时钟频率2、仿真。

图加载目标代码文件16单击仿真按钮中的单击停止仿真

按钮,则会全速仿真,如图所示仿真效果。按钮,则终止仿真。图仿真效果图3、虚拟仪器加入。仿真时,可加入虚拟仪器。单击工具栏的虚拟仪器按钮

,出现如图1.31一样放置。OSCILLOSCOPE 示波器LOGICANALYSER 逻辑分析仪COUNTERTIMEVIRTUALTERMINALSPIDEBUGGERI2CDEBUGGER

虚拟终端SPI调试器SIGNALGENERATOR 信号发生器PATTERNGENERATOR图形产生虚拟仪器按钮

DCVOLTMETERDCAMMETERACVOLTMETERACAMMETER

直流电压表交流电压表交流电流表图虚拟仪器选择17digitaloscilloscopeP1.0引脚产生的波形。图仿真波形1.3 PZ-ISP使用介绍USB驱动程序安装USBUSB“我的电脑”“属性”“硬件”所示,表示安装成功。18图提示安装USB驱动程序图安装成功1.3.2 PZ-ISP烧录软件使用1PZ-ISPPZ-ISP,出现如图所示启动界面19图启动界面2、选择合适的芯片类型。如图所示。图选择合适芯片类型3、选择合适的串口号。如图所示,串口号可自动获得,也可在辅助功能的“打开设备管理器”选项20中查看获得。图选择合适串口号4、加载HEX文件。单击“打开文件”选项,打开对应程序目录,选定需要烧写的HEX文件,点击“打开”,如图所示。图加载HEX文件5、下载程序。选择低速下载,先将实验板断电,点击下载程序,如图所示,稍等片刻后21打开电源,等待下载完成,如图所示。图试验板先断电,单击下载程序图打开电源,下载完成PZ-ISP4示。221 243图程序烧录步骤如在烧录过程中提示下载失败,可能以下原因造成:1、第四步下载程序时,实验板电源开关顺序不正确;2、芯片类型选择不正确;3、串口号选择不正确;4、USB下载线没有连接好;5、下载速度没有调整好;6、芯片是否放置正确(没有放偏)。23PAGEPAGE48第二章HNIST-2型单片机实验装置原理HNIST-2型单片机实验装置原理图湖南理工学院信息与通信工程学院电子信息教研室为了配合单片机教学,专门设计HNIST-2型实验装置,如图。图HNIST-2型单片机实验装置原理图单片机主机及外围电路STC89C52单片机及其外围电路如图2、3,其中P0、P1、P2、P3口均将引脚连接到排插,以便通过排插连接到其它器件,P0口通过排阻接入上拉电阻。晶振电路晶振频率为12MHz,通信接口排插将TXD、RXD以及地线引出。 图2.2STC89C52单片机主机部分电路原理图晶振电路 (b)通信接口(c)复位电路图2.3STC89C52单片机外围电路原理图LED与简单按键电路LED2.412个LED1K排电阻接电源,阴极连接J10J12J10J12P0、P1、P2、P3LED。图2.4LED电路原理图2.54K17、K18、K19、K20,分别连接到单片机P2.0、P2.1、P2.2、P2.34D17、D18、D19、D20上产生一个低电平或下降沿,作为中断触发信号。图2.5简单按键电路原理图动态显示与矩阵式键盘电路2.6874LS573进行驱动,74LS57374LS3738D573脚功能为:D1-D8Q1-Q8LE为数据输入锁存端,LE=1D锁存器,LE=0DLEOEOE=0OE=1输出高阻。图2.6动态显示电路原理图OE。根据硬件电路,动态显示编程时,应:①P1.3=1,U1、U2输出高阻;②P1.4=1,P0口输出段码,P1.4=0,U1锁存输入的段码;③P1.5=1,P0口输出位选码,P1.5=0,U2锁存输入的位选码;④P1.3=0,U1、U2同时输出段码和位选码,进行显示,经过一段时间后,再对另一个数码管做同样的操作。矩阵式键盘电路如图2.。图2.7矩阵式键盘电路原理图AD与DA电路I2C8A/DD/APCF8591ADDA电路2.8。2.8ADDAPCF8591引脚及功能如下表2.1所示:表2.1PCF8591引脚及功能表引脚引脚I/OAIN0~AIN3IA0~A3ISDASCLAOUTVREFVDD、AGNDOSCEXTI/OIOI功能4引脚地址数据线时钟线DAC输出端基准电源端III/OI电源、数字信号地模拟信号地外部时钟输入,内部时钟输出端P3.6、P3.4分别连接SCL、SDA,地址引脚A2A1A0=000PCF85911001PCF85911001000。4入,AIN010KAIN0压,AIN1、AIN2、AIN3通过排插可连接其他电压,如电源、地。PCF859115AOUTDACJ1612脚短路,AOUT50Ω电阻、LED与电源连接,输出模拟量越小,LED越亮。2.2.4 E2PROM电路E2PROM电路由具有I2C接口的24C02构成如图2.9。图2.9E2PROM电路原理图24C02的引脚及功能如下表2.2所示:表2.224C02的引脚及功能表引脚名称I/O功能1~3A0、A1、A2I可编程地址4GNDI地5SDAI/O数据线6SCLI时钟线7WPI=1写保护8VccI电源电路中,P3.6,P3.4分别连接SCL、SDA,地址引脚A2A1A0=000,24C02的特征编码为1010,电路中24C02的地址为1010000。此外,HNIST-2或其它设计中可以采用。1、由CH340T构成的USB转串口电路;2、由DS1302构成的实时时钟电路;3、由LM386构成的音频功放电路,需要外接扬声器;4、蜂鸣器(BEEP)电路;5、LCD12864/LCD1602液晶接口电路,需外接液晶模块;67第三章实验项目实验报告要求实验报告要求依次给出:1、实验内容2、电路原理图;3(简单程序可无;4、源程序;5、实验结果,如果有数据则给出数据;6、回答思考问题;7、总结实验调试过程,并给出本次实验过程中的心得体会。按照上述顺序,整理实验报告,并打印整理,加上封面装订成册。实验报告封面学号 序号单片机原理与接口技术实验报告实验项目序号实验项目名称姓 名 专 业 班 间实验一跑马灯实验一、实验目的1、熟悉HNIST-2型单片机系统相关硬件电路,程序下载方法;2、掌握采用汇编语言与C语言开发单片机系统的程序结构;3、掌握51系列单片机通用I/O口的使用。二、实验前准备1、完成作业3;2、根据实验内容编写好相关程序,并进行Proteus仿真。三、实验内容31、21、基本的流水灯。根据图1电路,编写一段程序,使8个发光二极管D1、D2、D3、D4、D5、D6、D7、D8顺序(正序)点亮:先点亮D1,再点亮D2、D3……D8、D1……,循环点亮。每点亮一个LED,采用软件延时一段时间。2、简单键控的流水灯。不按键,按正序点亮流水灯;按下K1D8D7、D6……D1、D8……。松手后,又按正序点亮流水灯。3、键控的流水灯。K1K2K3LED。四、实验原理图。+5V+5VD0D1D2D3D4D5D6D7U119XTAL118XTAL29RSTP0.0/AD0 39P0.1/AD1 38P0.2/AD2 37P0.3/AD3 36P0.4/AD4 35P0.5/AD5 34P0.6/AD6 33P0.7/AD7 32PSENALEEAP2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A152122232425262728K1K2293031K3K41 P1.02 P1.13 P1.24 P1.35 P1.46 P1.57 P1.68 P1.7P3.0/RXD 10P3.1/TXD 11P3.2/INT0 12P3.3/INT1 13P3.4/T0 14P3.5/T1 15P3.6/WR 16P3.7/RD 17AT89C51图跑马灯实验电路原理图电路原理图如图3.1,AT89S52的P0.0~P0.7作为输出连接8个发光二极管,01.7V以HNIST-2型实验装置在电源与二极管之间加一个阻值为1K管。、P2.12K1、K2P2.0=0K1下。五、软件设计思想1、基本的流水灯delay(j2、简单键控的流水灯。由于是按下键不松手,键值一直保留,所以判断P2.0=0即是按下K1,采用如例题所示的while(P==0)或while(P2==0xfe)的模式。3、键控的流水灯bb的值。六、实验思考题1I/OLED联一个电阻?2、采用I/O口作为输入口时要注意什么?键控的流水灯时为什么要在延时程序中检测是否按键?3、为什么延时程序要做一个函数?实验二交通灯实验一、实验目的1、进一步熟悉HNIST-2型单片机系统相关硬件电路;2、掌握单片机中断的应用和中断处理程序的编写方法;3、掌握单片机内部定时/计数器的使用及编程方法。二、实验前准备1、完成作业4;2、根据实验内容编写好相关程序,并进行Proteus仿真。三、实验内容31、21、基本交通灯。3.2电路,用单片机的IO412个发光二极管,使发光二极管按照一定规则与次序发光与闪亮以实现模拟交通灯的功能。假设初始状态为:(南北通行状态)南北绿灯、东西红灯(25s);后转为过度状态:(5s2(s再转为过渡状态:东西黄灯、南北红灯(5s),然后循环往复。要求采用定时器实现所需要的定时时间。2、键控交通灯。K1K2K3键,保持正常交通灯。要求在中断中进行按键处理。3、具有闪烁的交通灯。在2的基础上增加,绿灯最后5s闪烁,即亮0.5S灭0.5S闪烁。四、实验原理图LED-YELLOWD6LED-YELLOWLED-YELLOWD6LED-YELLOWD2929LED-REDLED-GREEN3031D5 D4 D3LED-GREENLED-YELLOWLED-RED1234567839383736353433K132K22122K32324K4252627D17D18D19D20281011121314151617东D9D10D11东D9D10D11LED-RED LED-YELLOWLED-GREEND8D0U119XTAL1LED-GREEN+5VLED-REDD7D118南XTAL2RSTP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7PSENALEEAP2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD3.24K1、K2、K3、K4P2.0P2.1P2.2、P2.3引脚,按键后对应引脚为低电平,通过4个二极管D17、D18D19、D20P3.2(0),P3.2上产生一个低电平或下降沿,作为中断触发信号。五、软件设计思想1、定时思想。T0T11500ms500ms中断进行计数,计数10次即0.5s,计数20次即1s,对秒计数实现所需要的定时时间。2、亮灯控制思想。单片机控制灯引脚与灯对应如下,0点亮。一共有四种状态S0、S1、S2、S3,a、南北通行S0状态:南北绿灯、东西红灯,P0=11111100=0xfc,P1=11110011=0xf3;P0.3P0.0东GY东R北GY北R西GY西R南GY南R110011110011b、过渡状态S1:南北黄灯、东西红灯,P0=11111101=0xfd,P1=01110101=0x75;P0.3P0.0东G东Y东R北G 北Y北R西G西Y西R南G南Y南R1101 01110101c、东西通行状态S2:东西绿灯、南北红灯,P0=11110111=0xf7,P1=1001110=0x9e;P0.3P0.0东G东Y东R北G北Y北R西G西Y西R南G南Y南R011110011110d、过渡状态S3:东西黄灯、南北红灯,P0=11110111=0xfb,P1=10101110=0xae;P0.3P0.0东G东Y东R北G北Y北R西G西Y西R南G南Y南R101110101110SEC每秒+1a,bSEC=0,a=0xfd,b=0x75S0状态;SEC==25,a=0xfc,b=0xf3,处于S1状态;SEC==30,a=0xfb,b=0xae,处于S2状态;SEC==55,a=0xf7,b=0x9e,处于S3状态;SEC==60,SEC=0,a=0xfd,b=0x75,处于S0状态;P0=a,P1=b。3、交通灯键控00K1T0T0K3T0中断,恢复正常交通灯。4、闪烁控制在需要闪烁时,0.5s按正常显示,0.5s全灭,即是闪烁效果。实现方法是当=0.5s的时刻,并且在南北通行的最后 5s(19<sec<25)或在东西通行的最后5s(49<sec<55),灭绿灯:P0=a|0xf9,P1==b|0x24,当=1s的时刻,按正常显示。P0.3P0.0东G东Y东R北G北Y北R西G西Y西R南G南Y南R100100100100六、实验思考题1、为什么采用定时器T0的方式1?为什么不采用方式2?2、采用中断处理按键有什么优点?本实验可不可以不采用中断处理按键,不采用中断怎样实现?实验三串行口通信实验一、实验目的1、掌握单片机串行口通信的应用和编写方法;2、进一步掌握单片机中断的应用和中断处理程序的编写方法;3、进一步掌握单片机内部定时/计数器的使用及编程方法。二、实验前准备1、完成作业5;2、根据实验内容编写好相关程序,并进行Proteus仿真。三、实验内容实验内容为3项,其中第1、2项必做。据图电路,两个同学为一组分为甲方、乙方,所有实验都采用方式32400bit/sT1作波特率发生器,均采用中断发送和接收。按键值a:按K1,a=0x01;按K2,a=0x02;按K3,a=0x04;按K4,a=0x08。1、单向通信a的值,未按键,a=0x0f值;并将a的值取反从P0口输出,控制D0D1、D2、D3相应点亮。乙方接收到数据并偶校验正确后,将接收数据取反从P0口输出,控制D0、D1、D2、相应点亮。2、双向通信a的值,未按键,a=0x0fa*16发送;甲乙双方都将发送P0D0—D7相应点亮。3、间隔发送未按键,甲方不发送数据,按键后甲方每隔50ms连续发送4个字节:0xff、a、a、a。乙方只在收到甲方数据0xff后的3个数据并验证相同时,才将接收数据*16发送。P0D0—D7点亮。四、实验原理图实验原理图如图所示:3919391938373618353433K132K292122K32324K4292530263127D17D18D19D202810111212313414515616717839383736353433K132K22122K32324K4252627D17D18 D19D20281011121314151617+5V+5VD0D1+5V+5VD0D1D2D3D4D5D6D7D0D1D2D3D4D5D6D7U1U119XTAL1XTAL2P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7XTAL118XTAL29RSTRSTP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9PSENALEEAP2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15PSENALEEAP2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A1512345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RDP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD在HNIST-2型实验装置中,通过通信接口排插将甲机的TXD、RXDRXD、TXDRXDHNIST-2D25会闪烁。五、软件设计思想1、按键处理采用中断处理按键,在外部中断0服务程序中:判断按键确定发送数据,并判断是否开始发送,若未开始发送,设置TI=1。2、双向通信串行口中断后要注意判断是发送中断(TI=1)还是接收中断(RI=1),判断完后要清除标志。六、实验思考题1、为什么串行口中断后要注意判断是发送中断(TI=1)还是接收中断(RI=1),判断完后要清除标志。为什么不能象其它中断一样,中断后自动清除中断标志?2、在甲方发送时,乙方是否也可以发送?为什么?3、第3题,①为什么要3次相同;②这是全双工通信还是半双工通信?实验四动态显示与矩阵式键盘实验一、实验目的1矩阵式键盘按键识别的原理;2、掌握单片机动态显示应用和编程方法;3、掌握单片机矩阵式键盘按键识别的方法。二、实验前准备1、完成作业6;2、根据实验内容编写好相关程序,并进行Proteus仿真。三、实验内容31、21、动态显示。K119491001K2“20141210”。2、动态显示与按键识别。0-F示,原键值向高位移一位。3、可控动态显示与按键识别。矩阵式键盘键值分别是0-9,最下面一排键位功能键,左右两个键分别为“清0键”“C,和”“回车键” ”,其它键无效。未按键不显示,每键一次,键值在最低位显示,原键值向高位移一位。按 8个键后,再按键无效。按清0键全显示“0”。按”后全部熄灭,再按键重新开始。四、实验原理图111111111111111101234567QQQQQQQQU274HC573101234567RP81kQQQQQQQQU374HC573DDDDDDDDEELODDDDDDD7EELO234567891119876543223456789 11U119 XTAL118XTAL29RSTP0.0/AD0 39P0.1/AD1 38P0.2/AD2 37P0.3/AD3 36P0.4/AD4 35P0.5/AD5 34P0.6/AD6 33P0.7/AD7 32K1PSENALEEAP2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A152122232425262728K2K3K412345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD1011121314151617U4AND_4图3.4动态显示与矩阵式键盘实验电路原理图874LS573进行驱动,74LS57374LS373都是8D锁存器,只是573引脚排列更易于布线。其引脚功能为:D1-D8为数据输入端;Q1-Q8为数据输出端;LE为数据输入锁存端,LE=1D锁存器,LE=0DLE据;OE地址输出允许端,OE=0输出锁存数据,OE=1输出高阻。电路中,U1abcdefgdb,控制显示的字形与小数点,U2位选码,控制第几个数码管显示。单片机P14、P15分别连接到U1、U2的LE,U1、U2的OE。五、软件设计思想1、动态显示。8disp[],设置位选码数组sled_bit[]2个一维数组,datauchardataucharbr[8]={2,0,1,4,1,2,1,0}K1、K20,在外部中断程ar[]、br[]disp[]。(2)T0500us1T0T0P1.3=1,U1、U2P1.4=1,P0口输出段码,P1.4=0,U1锁存输入的段码;③P1.5=1,P0口输出位选码,P1.5=0,U2锁存输入的位选P1.3=0,U1、U2同时输出段码和位选码,进行显示。2、矩阵式键盘按键识别行、列输出后要延时,才读出相应特征值;进行键值分析前要具备如下条件:①要有键按下,设a是得到的键值,if(a!=0xff)才继续进行;P2=0x0f,则P2!=0x0fwhile(P2!=0x0f);③每次进行完键值分析后,要延时。六、实验思考题1、电路中为什么要用74LS573,不用74LS573,可用什么器件代替?如果U1、U2的OE都直接接地,应如何编程?2、为什么要等键弹起,才进行键值分析?3、如果用简单按键与矩阵式键盘构成组合按键,组合按键如何编程得到键值?实验五I2CDA/ADC转换实验一、实验目的1、掌握I2C的DA/ADC芯片与单片机接口方法;2、掌握I2C器件

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论