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

下载本文档

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

文档简介

单片机原理与接口技术实验指导书(2018修订)《单片机原理与接口技术实验》实验指导书适用专业:___工程通信工程信息工程自动化信息与通信工程学院前言一、课程性质本课程是电子信息工程、通信工程、信息工程和自动化专业必修的专业实验课程。通过本课程的教学,使学生深刻体会到单片机原理与接口技术的应用,掌握汇编和C51语言的语法和技巧,熟悉电子系统的设计和调试过程,使其具备研究和___以单片机为核心的电子系统的能力。二、项目设置本课程总学时为16,开设的具体实验项目如下:l实验1跑马灯控制(2学时,必修)l实验2模拟交通灯控制系统设计(2学时,选修)l实验3串行口通信实验(3学时,必修)l实验4动态显示与矩阵式键盘实验(3学时,必修)l实验5I2C的DA/ADC转换实验(3学时,选修)三、本书特点本指导书的特点是引入工程项目机制来管理实验项目,着重培养学生的方案设计、算法分析和现场调试能力,为将来成为卓越工程师打下坚实的基础。目录目录1第一章___平台使用入门11.1keilC51使用入门11.1.1KeilC51简介11.1.2uVision4操作步骤11.2Proteus使用入门101.2.1Proteus简介101.2.2Proteus设计与仿真___过程101.3PZ-ISP使用介绍181.3.1USB驱动程序___181.3.2PZ-ISP烧录软件使用19第二章HNIST-2型单片机实验装置原理242.1HNIST-2型单片机实验装置原理图242.2单片机主机及___电路242.2.1LED与简单按键电路252.2.2动态显示与矩阵式键盘电路262.2.3AD与DA电路282.2.4E2PROM电路29第三章实验项目31实验报告要求31实验报告封面31实验一跑马灯实验33实验二交通灯实验36实验三串行口通信实验40实验四动态显示与矩阵式键盘实验42实验五I2C的DA/ADC转换实验45第一章___平台使用入门1.1keilC51使用入门1.1.1KeilC51简介KeilC51是德国KeilSoftware公司出品的51系列兼容单片机___工具。它集、编译、仿真与调试于一体,支持C语言与汇编语言___。KeilC51软件提供丰富的库函数和功能强大的集成___调试工具,生成的目标代码效率非常高。C51工具包目前的集成___环境uVision将项目管理,源代码和程序调试等组合在一个功能强大的环境中。目前,集成___环境使用较多的版本为uVision4,因此,下面主要介绍uVision4的基本应用。1.1.2uVision4操作步骤1、启动uVision4。当正确___keil软件后,会在桌面上自动建立一个名为“keiluVision4”的快捷图标,双击该图标启动软件,第一次进入uVision4的启动界面,如图1.1所示。图1.1uVision4启动界面2、建立工程。单击Project菜单,在下拉菜单中选中NewProject选项。图1.2建立工程菜单3、命名工程,进行保存。选择你要保存的路径,输入工程文件的名字,如保存到exam1文件夹里,工程名命名为exam1,如下图1.4所示,然后___保存。(注:因为一个工程中会包含多个文件,将工程放在文件夹中方便管理,一般给新建的工程建立一个文件夹,文件夹名和工程名一致,如图1.3所示)图1.3给新建的工程建立一个文件夹图1.4保存新建的工程4、选择器件。这时会弹出一个对话框,如图1.5所示,要求你选择单片机的型号,你可以根据所选用的单片机来选择,keilC51几乎支持所有的51核的单片机,这里以使用较多的Atmel公司的AT___S52来说明,如图1.6所示,先选择Atmel并双击展开,然后选择AT___S52,___“OK”。图1.5器件选择对话框图1.6选择MCU型号5、完成上一步骤后,出现提示是否加载标准8051Startup文件,单击“是(Y)”,如下图1.7所示。图1.7是否加载8051STARTUP文件6、源程序。在下图1.8中,单击“File”菜单,再在下拉菜单中单击“New”选项,或直接单击快捷按钮。图1.8新建源程序新建文件后界面如下图1.9所示。窗口图1.9源程序界面此时光标在窗口里闪烁,这时可以键入用户的应用程序了,建议首先保存该空白的文件,单击菜单上的“File”,在下拉菜单中单击“SaveAs”选项,或单击保存快捷按钮,如下图1.10所示,在“文件名”栏右侧的框中,键入欲使用的文件名,同时,必须键入正确的扩展名。注意,如果用C语言编写程序,则扩展名为(.c);如果用汇编语言编写程序,则扩展名必须为(.a___)。此处我们保存为“exam1.a___”,然后,单击“保存”按钮。图1.10源程序保存7、添加源程序到工程。在界面,单击Target1前“+”号,在Sour___Group1上单击右键,如图1.11所示。图1.11添加源程序到工程然后单击“AddFiletoGroup‘Sour___Group1’”弹出对话框如下图1.12所示。图1.12添加源文件窗口添加文件对话框默认文件类型为Csour___file,是以C为扩展名的文件,由于这次我们编写的是汇编程序,是以a___为扩展名,所以我们要在文件类型的下拉列表中找到并选中A___Sour___file,如图1.13所示。图1.13选择源文件的类型选择好源文件类型后,会出现如图1.14所示窗口,双击exam1.a___,将文件加入项目。(注意,文件加载后,该对话框并不会消失,往往会误以为加载失败而再次双击加载,这时会出现图1.15所示对话框,提示文件已在列表中)图1.14添加汇编语言源文件图1.15提示文件已在工程中返回到主界面后,我们注意到“Sour___Group1”文件夹中多了一个子项“exam1.a___”。子项的多少与添加到工程中的源程序的多少相同。如图1.16所示。图1.16添加源程序后的主界面8、程序。输入程序后的主界面如图1.17所示。输入程序图1.17输入程序后的主界面9、设置目标文件属性。单击Project菜单,如图1.18所示。图1.18打开设置对话框在下拉菜单中单击“OptionsforTarget‘Target1’”,弹出如图1.19所示对话框,单击Output标签,勾选CreateHEXFile选项,使程序编译后产生HEX代码,如图1.20所示。图1.19output页面设置对话框图1.20选中CreateHEXFile选项10、编译工程。___“Project”菜单,在下拉菜单中单击“BuiltTarget”选项(或者使用快捷键F7,或直接单击图标或图标),如源程序中有语法错误,会有错误提示给出,应重新修改源程序,直至通过编译。1.2Proteus使用入门1.2.1Proteus简介Proteus软件是英国Lab___nterelectronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及___器件。这里我们主要介绍51单片机系统的Proteus设计与仿真应用。1.2.2Proteus设计与仿真___过程51单片机系统的Proteus设计与仿真的___过程如下:1、电路设计。在ISIS平台上进行单片机系统电路设计、选择元器件、接插件、连接电路和电气检测等。2、程序设计。在?Vision_4平台上进行单片机系统程序设计、、汇编编译、代码级调试,最后生成目标代码文件(*.hex)。3、仿真调试。在ISIS平台上将目标代码文件加载到单片机系统中,并实现单片机系统的实时交互、协同仿真。它在相当程度上反映了实际单片机系统的运行情况。具体操作步骤如下:一、Proteus仿真电路设计1、启动proteus。双击桌面上的ISISProfessional图标或者单击屏幕左___的“开始”→“程序”→“Proteus7Professional”→“ISIS7Professional”,进入ProteusISIS集成环境。如图1.21所示。图1.21ProteusISIS启动界面2、新建设计文件。启动Proteus进入ISIS系统后,自动出现一个空白设计,模板默认为“DEFAULT”,文件名在窗口顶端的标题栏为未命名“Untitled”。单击按钮,对新建设计文件命名,其后缀自动为.DSN。也可单击菜单中的“file→NewDesign”,出现选择模板窗口,如图1.22所示,选中模板“DEFAULT”,___“确定”。单击按钮,完成新建设计文件操作。图1.22模板选择窗口3、选取元器件并添加到对象选择器中。单击绘图工具栏中元器件按钮,进入元器件放置模式。单击如图1.23所示“P”按钮,弹出“PickDevi___s”的选取元器件对话框,如图1.24所示,在其左上角关键字一栏中输入元器件名称,则出现与关键字匹配的元器件列表。选中元件,再单击“OK”按钮,便将该器件加入到ISIS对象选择器中,如图1.25所示。选取元器件元器件按钮图1.23选取元器件图1.24选取元器件对话框对象选择器窗口图1.25所选元器件在对象选择器中显示注意:单片机电路可以略去单片机振荡电路,复位电路,电源和接地。4、放置、___、旋转元器件。放置元器件:单击ISIS对象选择器中的元器件名,蓝色条出现在该元器件名上,预览窗口出现该元件符号,如图1.26所示。把鼠标移到窗口后,单击左键就出现该元件,拖动鼠标到某位置,单击鼠标放置元器件于该位置。窗口单击器件名预览窗口出现所选器件符号图1.26器件放置___元器件:先将鼠标指在元器件上左击选中,使元器件处于选中状态(即高亮度状态),再按住鼠标左键拖动,元器件就跟随指针___到达目的地后,松开鼠标即可。若要改变元器件放置方向,转90°,对元器件右击选中,再根据弹出的菜单单击按钮或进行旋转,单击按钮或进行镜像操作,等等。5、放置电源、地(终端)。单击绘图工具栏中终端按钮,在ISIS对象选择器中出现如图1.27所示终端,选择POWER、GROUND等,象放置元器件一样放置。终端按钮DEFAULT缺省INPUT输入OUTPUT输出BIDIR双向POWER电源GRONND地BUS总线图1.27选择终端6、连线。直线:系统默认自动捕捉,在自动捕捉有效的情况下,当光标靠近引脚末端或线时该处会自动感应出现一个“□”,单击左键连线与该引脚连接,拖动鼠标连线跟着光标走,当光标靠近另外一个引脚末端或线出现“□”时,单击鼠标,则连线这两点间。折线:若要画折线,只要在转折点单击左键;若在中途想取消,可右双击或按“Esc”键。若两点之间较远或不方便连线:可以将连线在空白处时左双击即可结束画线,这时终端出现一个黑点。右击该连线,在弹出菜单中选择网络标号对该线给出一个网络标号,同样在连线的另外一端给出相同网络标号,则这两点连接了。7、设计的简单电路。如图1.28所示:图1.28电路设计二、仿真调试1、加载目标代码文件。鼠标在ISIS区中单片机AT___C51单击左键选中,再单击左键打开其属性窗口,如图1.29所示,在其中的“ProgramFile”右侧框中输入KeiluVision4产生目标代码文件(*.hex)。在ClockFrequency栏中设置仿真时钟频率。设置仿真时钟频率选择目标代码文件图1.29加载目标代码文件2、仿真。单击仿真按钮中的按钮,则会全速仿真,如图1.30所示仿真效果。单击停止仿真按钮,则终止仿真。图1.30仿真效果图3、虚拟仪器加入。仿真时,可加入虚拟仪器。单击工具栏的虚拟仪器按钮,出现如图1.31所示对话框,在对象选择器列表中选择所需要的仪器,然后象放置元器件一样放置。虚拟仪器按钮OSCILLOSCOPE示波器LOGICANALYSER逻辑分析仪COUNTERTIME时间计数器VIRTUALTERMINAL虚拟终端SPIDEBUGGERSPI调试器I2CDEBUGGERI2C调试器SIGNALGENERATOR___发生器PATTERNGENERATOR图形产生DCVOLTMETER直流电压表DCAMMETER直流电流表ACVOLTMETER交流电压表ACAMMETER交流电流表图1.31虚拟仪器选择如图1.32所示实例,利用示波器观测仿真波形。仿真时,右击示波器,在弹出的对话框中选择digitaloscilloscope选项,观察从P1.0引脚产生的波形。图1.32仿真波形1.3PZ-ISP使用介绍1.3.1USB驱动程序___接上USB下载线,电脑会出现如图1.33显示,___好USB驱动程序后,右击“我的电脑”à“属性”à“硬件”à“设备管理器”,查看设备管理器,如图1.34所示,表示___成功。图1.33提示___USB驱动程序图1.34___成功1.3.2PZ-ISP烧录软件使用1、PZ-ISP软件无需___,双击打开即可运行。启动PZ-ISP,出现如图1.35所示启动界面图1.35启动界面2、选择合适的芯片类型。如图1.36所示。图1.36选择合适芯片类型3、选择合适的串口号。如图1.37所示,串口号可自动获得,也可在辅助功能的“打开设备管理器”选项中查看获得。图1.37选择合适串口号4、加载HEX文件。单击“打开文件”选项,打开对应程序目录,选定需要烧写的HEX文件,___“打开”,如图1.38所示。图1.38加载HEX文件5、下载程序。选择低速下载,先将实验板断电,___下载程序,如图1.39所示,稍等片刻后打开电源,等待下载完成,如图1.40所示。图1.39试验板先断电,单击下载程序图1.40打开电源,下载完成以上介绍了利用PZ-ISP烧录软件烧录程序的步骤,共分为4步,如下图1.41所示。2134图1.41程序烧录步骤如在烧录过程中提示下载失败,可能以下原因造成:1、第四步下载程序时,实验板电源开关顺序不正确;2、芯片类型选择不正确;3、串口号选择不正确;4、USB下载线没有连接好;5、___没有调整好;6、芯片是否放置正确(没有放偏)。第二章HNIST-2型单片机实验装置原理2.1HNIST-2型单片机实验装置原理图湖南理工学院信息与通信工程学院电子信息教研室为了配合单片机教学,专门设计HNIST-2型实验装置,如图2.1所示。图2.1HNIST-2型单片机实验装置原理图2.2单片机主机及___电路STC___C52单片机及其___电路如图2、3,其中P0、P1、P2、P3口均将引脚连接到排插,以便通过排插连接到其它器件,P0口通过排阻接入上拉电阻。晶振电路晶振频率为12MHz,通信接口排插将TXD、RXD以及地线引出。图2.2STC___C52单片机主机部分电路原理图(a)晶振电路(b)通信接口(c)复位电路图2.3STC___C52单片机___电路原理图2.2.1LED与简单按键电路LED电路如图2.4,共12个LED,其阳极通过1K排电阻接电源,阴极连接到排插J10、J12,通过J10、J12可以连接到P0、P1、P2、P3口引脚连接的排插,显然低电平点亮LED。图2.4LED电路原理图简单按键电路如图2.5,共有4个按键K17、K18、K19、K20,分别连接到单片机P2.0、P2.1、P2.2、P2.3引脚,按键后对应引脚为低电平,通过4个二极管D17、D18、D19、D20连接到P3.2(外部中断0),即任意按一个键能在P3.2上产生一个低电平或下降沿,作为中断触发___。图2.5简单按键电路原理图2.2.2动态显示与矩阵式键盘电路动态显示电路如图2.6,共8个共阴极数码管,采用两片74LS573进行驱动,74LS573与74LS373都是8D锁存器,只是573引脚排列更易于布线。其引脚功能为:D1-D8为数据输入端;Q1-Q8为数据输出端;LE为数据输入锁存端,LE=1数据输入D锁存器,LE=0数据不能输入D锁存器,即LE下降沿锁存当前输入数据;地址输出允许端,=0输出锁存数据,=1输出高阻。图2.6动态显示电路原理图电路中,U1输出段码abcdefgdb,控制显示的字形与小数点,U2输出位选码,控制第几个数码管显示。单片机P1.4、P1.5分别连接到U1、U2的LE,P1.3连接U1和U2的。根据硬件电路,动态显示编程时,应:①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.7,电路中P2.0-P2.3作为行线,P2.4-P2.7作为列线。图2.7矩阵式键盘电路原理图2.2.3AD与DA电路采用具有I2C接口的8位A/D与D/A转换器PCF8591构成AD与DA电路如图2.8。图2.8AD与DA电路原理图PCF8591引脚及功能如下表2.1所示:表2.1PCF8591引脚及功能表引脚I/O功能AIN0~AIN3I4路模拟___A0~A3I引脚地址SDAI/O数据线SCLI时钟线AOUTODAC输出端VREFI基准电源端VDD、VSSI电源、数字___地AGNDI模拟___地OSCI/O外部时钟输入,内部时钟输出端EXTI内、外部时钟选择,接地内部时钟电路中,P3.6、P3.4分别连接SCL、SDA,地址引脚A2A1A0=000,PCF8591的特征编码为1001,电路中PCF8591的地址为___00。4路模拟输入,AIN0连接一个10K电位器的中心抽头,调节电位器可改变AIN0的模拟电压,AIN1、AIN2、AIN3通过排插可连接其他电压,如电源、地。PCF8591的15脚AOUT是DAC输出的模拟量,电路中可以将J16的1、2脚短路,AOUT引脚通过50Ω电阻、LED与电源连接,输出模拟量越小,LED越亮。2.2.4E2PROM电路E2PROM电路由具有I2C接口的24C02构成如图2.9。图2.9E2PROM电路原理图24C02的引脚及功能如下表2.2所示:表2.224C02的引脚及功能表引脚名称I/O功能1~3A0、A1、A2I可编程地址4GNDI地5SDAI/O数据线6SCLI时钟线7WPI=1写保护8VI电源电路中,P3.6,P3.4分别连接SCL、SDA,地址引脚A2A1A0=000,24C02的特征编码为1010,电路中24C02的地址为10___。此外,HNIST-2型单片机实验系统电路中,还包括如下电路,在课程设计或其它设计中可以采用。1、由CH340T构成的USB转串口电路;2、由DS1302构成的实时时钟电路;3、由LM___构成的音频功放电路,需要外接扬声器;4、蜂鸣器(BEEP)电路;5、LCD12864/LCD1602液晶接口电路,需外接液晶模块;6、红外接收接口电路,需外接器件;7、温度测量接口电路,需外接器件。第三章实验项目实验报告要求实验报告要求依次给出:1、实验内容2、电路原理图;3、程序流程图(简单程序可无);4、源程序;5、实验结果,如果有数据则给出数据;6、回答思考问题;7、总结实验调试过程,并给出本次实验过程中的心得体会。按照上述顺序,实验报告,并打印,加上封面装订成册。实验报告封面学号序号单片机原理与接口技术实验报告实验项目序号实验项目名称姓名专业班级完成时间实验一跑马灯实验一、实验目的1、熟悉HNIST-2型单片机系统相关硬件电路,程序下载方法;2、掌握采用汇编语言与C语言___单片机系统的程序结构;3、掌握51系列单片机通用I/O口的使用。二、实验前准备1、完成作业3;2、根据实验内容编写好相关程序,并进行Proteus仿真。三、实验内容实验内容为3项,其中第1、2项必做。1、基本的流水灯。根据图1电路,编写一段程序,使8个发光二极管D1、D2、D3、D4、D5、D6、D7、D8顺序(正序)点亮:先点亮D1,再点亮D2、D3……D8、D1……,循环点亮。每点亮一个LED,采用软件延时一段时间。2、简单键控的流水灯。不按键,按正序点亮流水灯;按下K1不松手,按倒序点亮流水灯,即先点亮D8,再顺序点亮D7、D6……D1、D8……。松手后,又按正序点亮流水灯。3、键控的流水灯。上电,不点亮LED,按一下K1键,按正序点亮流水灯。按一下K2键,按倒序点亮流水灯,按一下K3键,全部关闭LED。四、实验原理图如图3.1所示。图3.1跑马灯实验电路原理图电路原理图如图3.1,AT___S52的P0.0~P0.7作为输出连接8个发光二极管,输出低电平0时对应发光二极管发光;由于发光二极管的导通电压为1.7V,所以HNIST-2型实验装置在电源与二极管之间加一个阻值为1K限流电阻保护二极管。AT___S52的P2.0、P2.1作为输入连接2个按键K1、K2,若检测到P2.0=0,则说明K1键按下。五、软件设计思想1、基本的流水灯软件延时采用例题程序delay(j),可调整延时时间。2、简单键控的流水灯。由于是按下键不松手,键值一直保留,所以判断P2.0=0即是按下K1,采用如例题所示的while(P2.0==0)或while(P2==0xfe)的模式。3、键控的流水灯由于是按一下键后马上松手,所以要设置一个变量b保留按键键值,要在延时程序中检测是否按键,当按键后立即设置b的值。六、实验思考题1、采用I/O口作为输出口时要考虑哪些因素?___实验装置中LED要串联一个电阻?2、采用I/O口作为输入口时要注意什么?键控的流水灯时___要在延时程序中检测是否按键?3、___延时程序要做一个函数?实验二交通灯实验一、实验目的1、进一步熟悉HNIST-2型单片机系统相关硬件电路;2、掌握单片机中断的应用和中断处理程序的编写方法;3、掌握单片机内部定时/计数器的使用及编程方法。二、实验前准备1、完成作业4;2、根据实验内容编写好相关程序,并进行Proteus仿真。三、实验内容实验内容为3项,其中第1、2项必做。1、基本交通灯。根据图3.2电路,用单片机的IO口控制4组红绿黄共12个发光二极管,使发光二极管按照一定规则与次序发光与闪亮以实现模拟交通灯的功能。假设初始状态为:(南北通行状态)南北绿灯、东西红灯(25s);后转为过渡状态:南北黄灯、东西红灯(5s);再转为东西通行状态:东西绿灯、南北红灯25(s)。再转为过渡状态:东西黄灯、南北红灯(5s),然后循环往复。要求采用定时器实现所需要的定时时间。2、键控交通灯。按一下K1键,保持南北通行状态;按一下K2键,保持东西通行状态;按一下K3键,保持正常交通灯。要求在中断中进行按键处理。3、具有闪烁的交通灯。在2的基础上增加,绿灯最后5s闪烁,即亮0.5S灭0.5S闪烁。四、实验原理图图3.2交通灯实验电路原理图图3.2共有4个按键K1、K2、K3、K4,分别连接到单片机P2.0、P2.1、P2.2、P2.3引脚,按键后对应引脚为低电平,通过4个二极管D17、D18、D19、D20连接到P3.2(外部中断0),这是二极管构成的相与电路,即任意按一个键能在P3.2上产生一个低电平或下降沿,作为中断触发___。五、软件设计思想1、定时思想。采用定时器T0或T1的方式1定时50ms,每50ms中断进行计数,计数10次即0.5s,计数20次即1s,对秒计数实现所需要的定时时间。2、亮灯控制思想。单片机控制灯引脚与灯对应如下,0点亮。一共有四种状态S0、S1、S2、S3,a、南北通行S0状态:南北绿灯、东西红灯,P0=11111100=0xfc,P1=11110011=0xf3;P0.3P0.2P0.1P0.0P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0东G东Y东R北G北Y北R西G西Y西R南G南Y南R110011110011南北绿灯、东西红灯,P0=11110111=0xf7,P1=10011110=0x9e;P0.3P0.2P0.1P0.0P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0D11D10D9D8D7D6D5D4D3D2D1D0北G北Y北R西G西Y西R南G南Y南R东G东Y东R011110011110b、过渡状态S1:南北黄灯、东西红灯,P0=11111101=0xfd,P1=01110101=0x75;P0.3P0.2P0.1P0.0P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0东G东Y东R北G北Y北R西G西Y西R南G南Y南R110101110101南北黄灯、东西红灯,P0=11111011=0xfb,P1=10101110=0xae;P0.3P0.2P0.1P0.0P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0D11D10D9D8D7D6D5D4D3D2D1D0北G北Y北R西G西Y西R南G南Y南R东G东Y东R101110101110c、东西通行状态S2:东西绿灯、南北红灯,P0=11110111=0xf7,P1=1001110=0x9e;P0.3P0.2P0.1P0.0P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0东G东Y东R北G北Y北R西G西Y西R南G南Y南R011110011110东西绿灯、南北红灯,P0=11111100=0xfc,P1=11110011=0xf3;P0.3P0.2P0.1P0.0P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0D11D10D9D8D7D6D5D4D3D2D1D0北G北Y北R西G西Y西R南G南Y南R东G东Y东R110011110011d、过渡状态S3:东西黄灯、南北红灯,P0=11110111=0xfb,P1=10101110=0xae;P0.3P0.2P0.1P0.0P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0东G东Y东R北G北Y北R西G西Y西R南G南Y南R101110101110东西黄灯、南北红灯,P0=11111101=0xfd,P1=01110101=0x75;P0.3P0.2P0.1P0.0P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0D11D10D9D8D7D6D5D4D3D2D1D0北G北Y北R西G西Y西R南G南Y南R东G东Y东R110101110101设置一个秒计数单元SEC每秒+1,设置两个控制值变量a,b。首先令SEC=0,a=0xfc,b=0xf3,处于S0状态;SEC==25,a=0xfd,b=0x75,处于S1状态;SEC==30,a=0xf7,b=0x9e,处于S2状态;SEC==55,a=0xfb,b=0xae,处于S3状态;SEC==60,SEC=0,a=0xfc,b=0xf3,处于S0状态;P0=a,P1=b。设置一个秒计数单元SEC每秒+1,设置两个控制值变量a,b。首先令SEC=0,a=0xf7,b=0x9e,处于S0状态;SEC==25,a=0xfb,b=0xae,处于S1状态;SEC==30,a=0xfc,b=0xf3,处于S2状态;SEC==55,a=0xfd,b=0x75,处于S3状态;SEC==60,SEC=0,a=0xf7,b=0x9e,处于S0状态;P0=a,P1=b。3、交通灯键控按键后即进入外部中断0,在外部中断0中断程序中判断:若是按K1键,控制南北通行状态,并将定时器T0关闭,即可保持南北通行状态;若是按K2键,控制东西通行状态,并将定时器T0中断关闭,即可保持东西通行状态;若是按K3键,开启定时器T0中断,恢复正常交通灯。4、闪烁控制在需要闪烁时,0.5s按正常显示,0.5s全灭,即是闪烁效果。实现方法是:当=0.5s的时刻,并且在南北通行的最后5s(19<sec<25)或在东西通行的最后5s(49<secP0.3P0.2P0.1P0.0P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.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项必做。按键值a:按K1,a=0x01;按K2,a=0x02;按K3,a=0x04;按K4,a=0x08。1、单向通信向甲方连续不断地发送变量a的值,未按键,a=0x0f,按键后根据按键确定a值;并将a的值取反从P0口输出,控制D0、D1、D2、D3相应点亮。乙方接收到数据并偶校验正确后,将接收数据取反从P0口输出,控制D0、D1、D2、D3相应点亮。2、双向通信甲方连续不断地发送变量a的值,未按键,a=0x0f,按键后根据按键确定a值;乙方未按键不发送,按键后将a*16发送;甲乙双方都将发送数据与接收数据相或后再取反,从P0口输出控制D0—D7相应点亮。3、间隔发送未按键,甲方不发送数据,按键后甲方每隔50ms连续发送4个字节:0xff、a、a、a。乙方只在收到甲方数据0xff后的3个数据并验证相同时,才将接收数据*16发送。甲乙双方都将发送数据与接收数据相或后,从P0口输出控制D0—D7相应点亮。四、实验原理图实验原理图如图3.3所示:图3.3串行口通信实验电路原理图在HNIST-2型实验装置中,通过通信接口排插将甲机的TXD、RXD连接到乙机的RXD、TXD,注意:下载程序时,要将RXD引脚线断开,有接收时,HNIST-2型实验装置上的D25会闪烁。五、软件设计思想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仿真。三、实验内容实验内容为3项,其中第1、2项必做。1、动态显示。未按键不显示,按K1键,动态显示“19491001”;按K2键,动态显示“xx1210”。2、动态显示与按键识别。矩阵式键盘键值分别是0-F,未按键不显示。每按键一次,键值在最低位显示,原键值向高位移一位。3、可控动态显示与按键识别。矩阵式键盘键值分别是0-9,最下面一排键位功能键,左右两个键分别为“清0键”“C”,和”“回车键”“8”,其它键无效。未按键不显示,每按键一次,键值在最低位显示,原键值向高位移一位。按8个键后,再按键无效。按清0键全显示“0”。按“8”后全部熄灭,再按键重新开始。四、实验原理图图3.4动态显示与矩阵式键盘实验电路原理图动态显示共8个共阴极数码管,采用两片74LS573进行驱动,74LS573与74LS373都是8D锁存器,只是573引脚排列更易于布线。其引脚功能为:D1-D8为数据输入端;Q1-Q8为数据输出端;LE为数据输入锁存端,LE=1数据输入D锁存器,LE=0数据不能输入D锁存器,即LE下降沿锁存当前输入数据;地址输出允许端,=0输出锁存数据,=1输出高阻。电路中,U1输出段码abcdefgdb,控制显示的字形与小数点,U2输出位选码,控制第几个数码管显示。单片机P14、P15分别连接到U1、U2的LE,连接U1、U2的。五、软件设计思想1、动态显示。(1)仿照

温馨提示

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

评论

0/150

提交评论