第4章_单片机的IO口及proteus简介_第1页
第4章_单片机的IO口及proteus简介_第2页
第4章_单片机的IO口及proteus简介_第3页
第4章_单片机的IO口及proteus简介_第4页
第4章_单片机的IO口及proteus简介_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

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

文档简介

1、4 单片机的单片机的I/O口及口及proteus简介简介 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 2教学目的教学目的q了解了解AT89C52的的P0P3端口的结构端口的结构 q理解理解AT89C52的的P0P3端口的功能端口的功能q掌握掌握AT89C52的的P0P3端口的应用规则端口的应用规则q了解了解Proteus 软件仿真的优缺点软件仿真的优缺点q掌握掌握Proteus ISIS的基本操作的基本操作 q掌握掌握Proteus ISIS的原理图绘制和仿真的原理图绘制和仿真 q掌握掌握Proteus 与与Keil C相结合的设计和仿真

2、过程相结合的设计和仿真过程北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 3本章内容本章内容qAT89C52单片机单片机P0P3端口的结构与功能端口的结构与功能 q仿真软件仿真软件Proteus简介简介 qAT89C52单片机单片机I/O口应用实例与仿真口应用实例与仿真 4.1 P0P3端口的结构与功能端口的结构与功能 qP0端口的结构与功能端口的结构与功能qP1端口的结构与功能端口的结构与功能 qP2端口的结构与功能端口的结构与功能 qP3端口的结构与功能 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及prot

3、eus简介简介 5P0端口的结构与功能端口的结构与功能q P0口的一位结构图口的一位结构图 P0P0口除可以作为通用的口除可以作为通用的8 8位位I/OI/O口外,当进行外部口外,当进行外部存储器的扩展时,还可以将其作为分时复用的低存储器的扩展时,还可以将其作为分时复用的低8 8位地址位地址/ /数据总线。数据总线。 4.1 P0P0P3P3端口的结构与功能端口的结构与功能 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 6P0端口的结构与功能端口的结构与功能qP0口用作通用口用作通用I/O口口q作为输出口作为输出口 q作为输入口作为输入口

4、q“读读-修改修改-写写”操作操作 用作通用用作通用I/OI/O口时,口时,CPUCPU令控制信号为低电令控制信号为低电平,其作用有二个:一平,其作用有二个:一是使模拟开关是使模拟开关MUXMUX接通接通下端,即锁存器输出端,下端,即锁存器输出端,二是令与门输出低电平,二是令与门输出低电平,VF0VF0截止,致使输出级截止,致使输出级为开漏输出电路。为开漏输出电路。 4.1 P0P0P3P3端口的结构与功能端口的结构与功能 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 7P0端口的结构与功能端口的结构与功能qP0口用作地址口用作地址/数据总

5、线数据总线 qP0口分时输出低口分时输出低8位地址、输入数据位地址、输入数据 qP0口分时输出低口分时输出低8位地址、输出数据位地址、输出数据 4.1 P0P0P3P3端口的结构与功能端口的结构与功能 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 8P1端口的结构与功能端口的结构与功能 qP1口的一位结构图口的一位结构图 4.1 P0P0P3P3端口的结构与功能端口的结构与功能 对于通常的对于通常的5151内核单片机而言,内核单片机而言,P1P1口是惟一一口是惟一一个单功能口,只能作为通用的个单功能口,只能作为通用的I/OI/O端口。端口。

6、 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 9P1端口的结构与功能端口的结构与功能p单片机单片机P1口引脚的第二功能口引脚的第二功能对于对于 AT89S52单片机,单片机,P1口的口的P1.0、P1.1、P1.5、P1.6、P1.7也具有第二功能。也具有第二功能。P1.0和和P1.2分别作为定时分别作为定时器器/计数器计数器2的外部计数输入或时钟输出(的外部计数输入或时钟输出(P1.0/T2)和)和定时器定时器/计数器计数器2的触发输入(的触发输入(P1.1/T2EX),),P1.5P1.6P1.7则是在对则是在对AT89S52单片机在

7、线编单片机在线编程时使用到。程时使用到。AT89C52由于不具备在线编程功能,因此由于不具备在线编程功能,因此它的它的P1.5 -P1.7不具备第二功能,不具备第二功能,P1.0和和P1.1则与则与AT89S52一样。一样。 4.1 P0P0P3P3端口的结构与功能端口的结构与功能 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 10P1端口的结构与功能端口的结构与功能q表表4.1 AT89S52单片机单片机P1口引脚的第二功能口引脚的第二功能口线口线第二功能第二功能 信号名称信号名称P1.0T2定时器定时器/计数器计数器2的外部计数输入或时

8、的外部计数输入或时钟输出钟输出P1.1T2EX定时器定时器/计数器计数器2的捕捉的捕捉/重载触发信号重载触发信号和方向控制和方向控制P1.5MOSISPI主机输出主机输出/从机输入,在线编程时从机输入,在线编程时使用使用P1.6MISOSPI主机输入主机输入/从机输出,在线编程时从机输出,在线编程时使用使用P1.7SCKSPI时钟,在线编程时使用时钟,在线编程时使用4.1 P0P0P3P3端口的结构与功能端口的结构与功能 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 11P2端口的结构与功能端口的结构与功能 qP2口的某一位结构口的某一位结

9、构 4.1 P0P0P3P3端口的结构与功能端口的结构与功能 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 12P2端口的结构与功能端口的结构与功能qP2端口的功能端口的功能 P2 P2口可以作为口可以作为般的通用般的通用I/OI/O口,其工作方口,其工作方式与式与P0P0口类似。当作为通用的口类似。当作为通用的I/OI/O口使用时,口使用时,读引脚状态下需要向端口写读引脚状态下需要向端口写1 1,也属于准双向,也属于准双向口。其输出驱动电路与口。其输出驱动电路与P0P0口不同,内部已经口不同,内部已经设有上拉电阻,因此不需要外接电阻。设有

10、上拉电阻,因此不需要外接电阻。 当需要在单片机外部进行扩展时,当需要在单片机外部进行扩展时,P2P2口也可口也可以作为高以作为高8 8位地址总线,与位地址总线,与P0P0口的低口的低8 8垃地址垃地址总线一起形成总线一起形成1616位位I/OI/O地址。此时,地址。此时,CPUCPU发出发出控制信号使模拟开关控制信号使模拟开关MUXMUX接到地址线,地址接到地址线,地址信息通过非门和场效应管输出到引脚。信息通过非门和场效应管输出到引脚。 4.1 P0P0P3P3端口的结构与功能端口的结构与功能 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介

11、13P3端口的结构与功能端口的结构与功能 qP2口的某一位结构口的某一位结构P3P3口是单片机中使用最灵活、功能最多的一个并行端口,不仅口是单片机中使用最灵活、功能最多的一个并行端口,不仅具有通用的输入输出功能,而且还具有多种用途的第二功能。具有通用的输入输出功能,而且还具有多种用途的第二功能。 4.1 P0P0P3P3端口的结构与功能端口的结构与功能 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 14P3端口的结构与功能端口的结构与功能qP3端口的功能端口的功能使用使用P3口时多数是将口时多数是将8根根I/O线单独使用,既可将其线单独使用

12、,既可将其设置为第二功能,也可设置为第一功能。当工作于通用设置为第二功能,也可设置为第一功能。当工作于通用的的I/O功能时,单片机会自动将第二功能输出线置功能时,单片机会自动将第二功能输出线置1。与。与其他的其他的I/O口一样,在向端口写数据时,锁存器的状态口一样,在向端口写数据时,锁存器的状态与输出引脚的状态一致;当读端口的状态时,则需先向与输出引脚的状态一致;当读端口的状态时,则需先向端口写端口写1,再将数据读入内部数据总线,因此是准双向,再将数据读入内部数据总线,因此是准双向口。口。 4.1 P0P0P3P3端口的结构与功能端口的结构与功能 北京航空航天大学出版社北京航空航天大学出版社4

13、单片机的单片机的I/O口及口及proteus简介简介 15P3端口的结构与功能端口的结构与功能qP3端口的功能端口的功能单片机工作于第二功能时,自动将锁存器的单片机工作于第二功能时,自动将锁存器的Q端置端置1.表4.2 AT89C52P3口引脚的第二功能口线口线第二功能第二功能信号名称信号名称P3.0RXD串行数据接收串行数据接收P3.1TXD串行数据发送串行数据发送P3.2INT0外部中断外部中断0请求信号输入请求信号输入P3.3INT1外部中断外部中断1请求信号输入请求信号输入P3.4T0定时器定时器/计数器计数器0计数输入计数输入P3.5T1定时器定时器/计数器计数器1计数输入计数输入P

14、3.6WR外部外部RAM写选通写选通P3.7RD外部外部RAM读选通读选通4.1 P0P0P3P3端口的结构与功能端口的结构与功能 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 16注意事项注意事项q单片机的并行单片机的并行I/O接口有以下应用特性接口有以下应用特性 qP0,P1,P2,P3作为通用作为通用I/O口使用时,输入操作是读口使用时,输入操作是读引脚状态;输出操作是对口的锁存器的写入操作,锁存引脚状态;输出操作是对口的锁存器的写入操作,锁存器的状态立即反映到引脚上。器的状态立即反映到引脚上。 qP1,P2,P3口作为输出口时,由于

15、电路内部带上拉电口作为输出口时,由于电路内部带上拉电阻,因此无需外接上拉电阻,而阻,因此无需外接上拉电阻,而PO口由于内部无上拉口由于内部无上拉电阻,因此使用它时,必须外接上拉电阻。电阻,因此使用它时,必须外接上拉电阻。 qP0,P1,P2,P3作为通用的输入口时,必须使电路中作为通用的输入口时,必须使电路中的锁存器写入高电平的锁存器写入高电平“1”,使场效应管(,使场效应管(FET)VF1截截止,以避免锁存器输出为止,以避免锁存器输出为“0”时场效应管时场效应管VF1 导通使引导通使引脚状态始终被钳位在脚状态始终被钳位在“0”状态。状态。 4.1 P0P0P3P3端口的结构与功能端口的结构与

16、功能 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 17注意事项注意事项qI/O口功能的自动识别。无论是口功能的自动识别。无论是P0、P2口的总线复用功口的总线复用功能,还是能,还是P3口的第二功能复用,单片机会自动选择,口的第二功能复用,单片机会自动选择,不需要用户通过指令选择。不需要用户通过指令选择。 q两种读端口的方式。包括端口锁存器的两种读端口的方式。包括端口锁存器的“读读-改改-写写”操操作和读引脚的操作。在单片机中,有些指令是读端口锁作和读引脚的操作。在单片机中,有些指令是读端口锁存器的,如一些逻辑运算指令、置位存器的,如一些逻

17、辑运算指令、置位/复位指令、条件复位指令、条件转移指令以及将转移指令以及将I/O口作为目的地址的操作指令;有些口作为目的地址的操作指令;有些指令是读引脚的,如以指令是读引脚的,如以I/O口作为源操作数的指令。口作为源操作数的指令。 qI/O口的驱动特性。口的驱动特性。P0口每一个口每一个I/O口可驱动口可驱动8个个LSTTL输入,而输入,而P1、P2、P3口每一个口每一个I/O口可驱动口可驱动4个个LSTTL输入。在使用时应注意口的驱动能力。输入。在使用时应注意口的驱动能力。 4.1 P0P0P3P3端口的结构与功能端口的结构与功能 4.2 Proteus简介简介 qProteus ISIS的

18、工作界面的工作界面 qProteus ISIS的基本操作的基本操作q Proteus ISIS的原理图绘制和仿真的原理图绘制和仿真 qProteus 与Keil C相结合的设计和仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 19Proteus ISIS的工作界面的工作界面 qProteus ISIS的工作界面是一种标准的的工作界面是一种标准的Windows界面,界面,如图如图4.5所示。包括:标题栏、主菜单、标准工具栏、所示。包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控绘图工具栏、状态栏、对象选择

19、按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。口、图形编辑窗口。 4.2 Proteus简介简介北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 20Proteus ISIS的工作界面的工作界面4.2 Proteus简介简介北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 21 Proteus ISIS的基本操作的基本操作 q图形编辑窗口图形编辑窗口q坐标系统(坐标系统(CO-ORDINATE SYSTEM)

20、q点状栅格(点状栅格(The Dot Grid)与捕捉栅格()与捕捉栅格(Snapping to a Grid) q实时捕捉(实时捕捉(Real Time Snap) q视图的缩放与移动视图的缩放与移动 q预览窗口预览窗口 该窗口通常显示整个电路图的缩略图。在预览窗口该窗口通常显示整个电路图的缩略图。在预览窗口上点击鼠标左键,将会有一个矩形蓝绿框标示出在编辑上点击鼠标左键,将会有一个矩形蓝绿框标示出在编辑窗口的中显示的区域。窗口的中显示的区域。 其他情况下,预览窗口显示将其他情况下,预览窗口显示将要放置的对象的预览。要放置的对象的预览。 4.2 Proteus简介简介北京航空航天大学出版社北京

21、航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 22Proteus ISIS的基本操作的基本操作q对象选择器窗口对象选择器窗口 通过对象选择按钮,从元件库中选择对象,并置入通过对象选择按钮,从元件库中选择对象,并置入对象选择器窗口,供今后绘图时使用。显示对象的类型对象选择器窗口,供今后绘图时使用。显示对象的类型包括:设备,终端,管脚,图形符号,标注和图形包括:设备,终端,管脚,图形符号,标注和图形q对象的放置和编辑对象的放置和编辑 q对象的添加和放置对象的添加和放置 q放置电源及接地符号放置电源及接地符号 q对象的编辑对象的编辑 拖动标签拖动标签 对象的旋转对象的旋转

22、 编辑对象的属性编辑对象的属性 4.2 Proteus简介简介北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 23Proteus ISIS的原理图绘制和仿真的原理图绘制和仿真 q原理图的绘制原理图的绘制 q画导线画导线 q画总线画总线 q画总线分支线画总线分支线 q放置线路节点放置线路节点 q一般电路的模拟调试一般电路的模拟调试 4.2 Proteus简介简介北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 24Proteus 与与Keil C相结合的设计和仿真相结合的设计和仿真 q电路图的绘

23、制电路图的绘制 qKeilC与与Proteus连接调试连接调试 q假若假若KeilC与与Proteus均已正确安装在均已正确安装在C:Program Files的目录里,把光盘中附带的的目录里,把光盘中附带的“VDM51.dll”复制到复制到C:Program FileskeilCC51BIN目录中。目录中。 q用记事本打开用记事本打开C:Program FileskeilCC51TOOLS.INI文件,在文件,在C51栏目下加入:栏目下加入:TDRV5=BINVDM51.DLL (Proteus VSM Monitor-51 Driver),其中,其中“TDRV5”中的中的“5”要根据实际情

24、况写,不要和原来的重复。步骤要根据实际情况写,不要和原来的重复。步骤(a)和()和(b)只需在初次使用设置。)只需在初次使用设置。 4.2 Proteus简介简介北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 25Proteus 与与Keil C相结合的设计和仿真相结合的设计和仿真q进入进入KeilC Vision2开发集成环境,创建一个新项目开发集成环境,创建一个新项目(Project),并为该项目选定合适的单片机,并为该项目选定合适的单片机CPU器件(如:器件(如:Atmel公司的公司的AT89C52)。并为该项目加入)。并为该项目加入K

25、eilC源程源程序序 。q单击单击“Project菜单菜单/Options for Target”选项或者点击工选项或者点击工具栏的具栏的“Option for target”按钮,弹出窗口,点击按钮,弹出窗口,点击“Debug”按钮,出现如图按钮,出现如图4.18所示对话框。在出现的对所示对话框。在出现的对话框里在右栏上部的下拉菜单里选中话框里在右栏上部的下拉菜单里选中“Proteus VSM Monitor-51 Driver”。并且还要点击一下。并且还要点击一下“Use”前面表前面表明选中的小圆点。明选中的小圆点。4.2 Proteus简介简介北京航空航天大学出版社北京航空航天大学出版社

26、4单片机的单片机的I/O口及口及proteus简介简介 26Proteus 与与Keil C相结合的设计和仿真相结合的设计和仿真4.2 Proteus简介简介北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 27Proteus 与与Keil C相结合的设计和仿真相结合的设计和仿真q再点击再点击“Setting”按钮,设置通信接口,在按钮,设置通信接口,在“Host”后面后面添上添上“127.0.0.1”,如果使用的不是同一台电脑,则需,如果使用的不是同一台电脑,则需要在这里添上另一台电脑的要在这里添上另一台电脑的IP地址地址(另一台电脑也应安另

27、一台电脑也应安装装Proteus)。在。在“Port”后面添加后面添加“8000”。设置好的情。设置好的情形如图形如图4.19所示,点击所示,点击“OK”按钮即可。按钮即可。 4.2 Proteus简介简介北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 28Proteus 与与Keil C相结合的设计和仿真相结合的设计和仿真qProteus的设置的设置 进入进入Proteus的的ISIS,鼠标左键点击菜,鼠标左键点击菜单单“Debug”, 选中选中“Use Romote Debuger Monitor”,如图如图4.20所示。此后,便可实现所

28、示。此后,便可实现KeilC与与Proteus连接调连接调试。试。4.2 Proteus简介简介北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 29Proteus 与与Keil C相结合的设计和仿真相结合的设计和仿真qKeil与与Proteus连接仿真调试连接仿真调试 在在Keil中执行菜单命令中执行菜单命令“Debug”“Start/Stop Debug Session”,进入,进入Keil调试环境,按调试环境,按F5全速运行程全速运行程序,切换到序,切换到Proteus ISIS窗口后,我们能清楚地观察到窗口后,我们能清楚地观察到每一个引

29、脚的电平变化,红色代表高电平,蓝色代表低每一个引脚的电平变化,红色代表高电平,蓝色代表低电平。电平。 4.2 Proteus简介简介4.3 I/O口应用实例与仿真口应用实例与仿真 qLED与数码管简介与数码管简介 qI/O口的实例仿真口的实例仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 31LED与数码管简介与数码管简介qLED简介简介 qLED(发光二极管)是最基本的输出显示装置之一,通(发光二极管)是最基本的输出显示装置之一,通过过LED可以直观地看出控制系统状态,如按键的闭合与可以直观地看出控制系统状态,如按键的闭合与断开、电机

30、的启动与停止等,另外断开、电机的启动与停止等,另外LED还可以用于制作还可以用于制作彩灯。彩灯。LED具有普通二极管的单向导电性。只要加在发具有普通二极管的单向导电性。只要加在发光二极管两端的电压超过导通电压(一般为光二极管两端的电压超过导通电压(一般为1.7V1.9V),它就会导通,而当流过它的电流时间超过一定它就会导通,而当流过它的电流时间超过一定数值时(一般为数值时(一般为2ms3ms),它就会发光。它就会发光。 4.3 I/O口应用实例与仿真口应用实例与仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 32LED与数码管简介与数码

31、管简介q数码管的原理与使用方法数码管的原理与使用方法 qLED数码管显示器内部由七个条形发光二极管和一个小数码管显示器内部由七个条形发光二极管和一个小圆点发光二极管组成,每个发光二极管称为一字段。因圆点发光二极管组成,每个发光二极管称为一字段。因而它的控制原理和发光二极管的控制原理是相同的。根而它的控制原理和发光二极管的控制原理是相同的。根据各管的接线形式,可分成共阴极型和共阳极型。发光据各管的接线形式,可分成共阴极型和共阳极型。发光二极管的阳极连在一起,为一个公共端,这种显示器称二极管的阳极连在一起,为一个公共端,这种显示器称为共阳极显示器。发光二极管的阴极连在一起,为一个为共阳极显示器。发

32、光二极管的阴极连在一起,为一个公共端,这种显示器称为共阴极显示器。给公共端,这种显示器称为共阴极显示器。给LED 数码数码管的七个发光二极管加不同的电平,二极管显示不同亮管的七个发光二极管加不同的电平,二极管显示不同亮暗的组合就可以形成不同的字形,这种组合称之为字形暗的组合就可以形成不同的字形,这种组合称之为字形码。码。 4.3 I/O口应用实例与仿真口应用实例与仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 33LED与数码管简介与数码管简介共阳极共阳极 共阴极共阴极 数码管外形图数码管外形图 4.3 I/O口应用实例与仿真口应用实例

33、与仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 34I/O口的实例仿真口的实例仿真 q例例4.1 闪烁灯的闪烁灯的proteus仿真及仿真及C语言程序设计语言程序设计q设计要求:如图设计要求:如图4.23所示,在所示,在P1.0端口上接一个发光二端口上接一个发光二极管极管L1,使,使L1周期性地一亮一灭,一亮一灭的时间间周期性地一亮一灭,一亮一灭的时间间隔为隔为0.2秒。秒。q闪烁灯的仿真电路原理图闪烁灯的仿真电路原理图 (见教材图(见教材图4.23)q元器件选取元器件选取 AT89C52:单片机;:单片机;RES:电阻;:电阻;CR

34、YSTAL:晶振;:晶振; CAP、CAP-ELEC:电容、电解电容:电容、电解电容LED-GREEN:绿:绿色发光二极管色发光二极管 q程序设计内容程序设计内容 延时程序的设计方法延时程序的设计方法 输出控制输出控制 限流电阻的选取限流电阻的选取 4.3 I/O口应用实例与仿真口应用实例与仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 35I/O口的实例仿真口的实例仿真q程序流程图程序流程图 qC语言源程序语言源程序 q调试与仿真调试与仿真 开始P1.0输出“1”L1熄灭延时0.2秒P1.0输出“0”L1亮延时0.2秒4.3 I/O口

35、应用实例与仿真口应用实例与仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 36I/O口的实例仿真口的实例仿真q例例4.2 模拟开关灯的模拟开关灯的proteus仿真及仿真及C语言程序设计语言程序设计q设计要求设计要求 :如图:如图4.25所示,监视开关所示,监视开关K1(接在(接在P3.0端端口上),用发光二极管口上),用发光二极管L1(接在单片机(接在单片机P1.0端口上)显端口上)显示开关状态,如果开关合上,示开关状态,如果开关合上,L1亮,开关打开,亮,开关打开,L1熄熄灭。灭。 q模拟开关灯的仿真电路原理图模拟开关灯的仿真电路原

36、理图 (见教材图(见教材图4.25)q元器件选取元器件选取 AT89C52:单片机;:单片机;RES:电阻;:电阻;CRYSTAL:晶振;:晶振; CAP、CAP-ELEC:电容、电解电容;:电容、电解电容;LED-GREEN:绿色发光二极管;绿色发光二极管;SWITCH:开关开关 4.3 I/O口应用实例与仿真口应用实例与仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 37I/O口的实例仿真口的实例仿真q程序设计内容程序设计内容 开关状态的检测过程开关状态的检测过程 输出控制输出控制 q程序流程图程序流程图 qC语言源程序语言源程序

37、q调试与仿真调试与仿真 开始K1开关闭合了吗?L1亮L1灭4.3 I/O口应用实例与仿真口应用实例与仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 38I/O口的实例仿真口的实例仿真q例例4.3 报警器的报警器的proteus仿真及仿真及C语言程序设计语言程序设计q设计要求设计要求 :如图:如图4.27所示,用所示,用P1.0输出输出1KHz和和500Hz的的音频信号驱动扬声器,作报警信号,要求音频信号驱动扬声器,作报警信号,要求1KHz信号响信号响100ms,500Hz信号响信号响200ms,交替进行,交替进行,P1.7接一开关接一开

38、关进行控制,当开关合上报警信号响,当开关断开报警信进行控制,当开关合上报警信号响,当开关断开报警信号停止。号停止。 q报警器的仿真电路原理图报警器的仿真电路原理图 (见教材图(见教材图4.27)q元器件选取元器件选取 AT89C52:单片机;:单片机;RES:电阻;:电阻;CRYSTAL:晶振;:晶振; CAP、CAP-ELEC:电容、电解电容;:电容、电解电容;SPEAKER:扬:扬声器;声器;SW-SPDT:单刀双掷开关;单刀双掷开关;9012:PNP三极管三极管4.3 I/O口应用实例与仿真口应用实例与仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及pr

39、oteus简介简介 39I/O口的实例仿真口的实例仿真q程序设计内容程序设计内容 :报警信号产生的方法:报警信号产生的方法:500Hz信号周期信号周期为为2ms,信号电平为每,信号电平为每1ms变反变反1次,次,1KHz的信号周期的信号周期为为1ms,信号电平每,信号电平每500us变反变反1次。不同频率的信号经次。不同频率的信号经过过9012三极管放大后,送给扬声器三极管放大后,送给扬声器LS1,就会发出不同,就会发出不同频率的报警声。频率的报警声。q程序流程图程序流程图 q汇编语言与汇编语言与C语言源程序语言源程序 q调试与仿真调试与仿真 4.3 I/O口应用实例与仿真口应用实例与仿真 北

40、京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 40I/O口的实例仿真口的实例仿真q例例4.4广告灯(查表方式)的广告灯(查表方式)的proteus仿真及程序设计仿真及程序设计q设计要求设计要求 :如图:如图4.29所示,利用查表的方法,使端口所示,利用查表的方法,使端口P1做单一灯的变化:左移做单一灯的变化:左移2次,右移次,右移2次,闪烁次,闪烁2次(延次(延时的时间时的时间0.2秒)。秒)。 q广告灯的仿真电路原理图广告灯的仿真电路原理图 (见教材图(见教材图4.29 )q元器件选取元器件选取 AT89C52:单片机;:单片机;RES:电

41、阻;:电阻;CRYSTAL:晶振;:晶振; CAP、CAP-ELEC:电容、电解电容;:电容、电解电容;LED-GREEN:绿色发光二极管;绿色发光二极管;4.3 I/O口应用实例与仿真口应用实例与仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 41I/O口的实例仿真口的实例仿真q程序设计内容程序设计内容 查表法是单片机程序设计中常用的一种方法,它多用于一些查表法是单片机程序设计中常用的一种方法,它多用于一些较复杂的控制场合,如判段键盘按键的键值、利用较复杂的控制场合,如判段键盘按键的键值、利用I/O口控制口控制外部设备作一些预先设定好

42、的复杂动作(本例是其简单的示外部设备作一些预先设定好的复杂动作(本例是其简单的示意)、输出正余弦、三角、梯形或更复杂的波形,甚至可以意)、输出正余弦、三角、梯形或更复杂的波形,甚至可以利用查表法实现一些更复杂的算法。利用查表法实现一些更复杂的算法。 汇编语言步骤如下:汇编语言步骤如下:把控制码建成一个表把控制码建成一个表TABLE;利用利用MOV DPTR,TABLE指令来使数据指针寄存器指到表的开指令来使数据指针寄存器指到表的开头;头;利用利用MOVC A,ADPTR的指令,根据累加器的值的指令,根据累加器的值再加上再加上DPTR的值,就可以使程序计数器的值,就可以使程序计数器PC指到表格内

43、所要指到表格内所要取出的数据。取出的数据。 C语言步骤如下:语言步骤如下:定义一维数组定义一维数组TABLE(复杂情况也可以(复杂情况也可以用二维数组,另外,为节省单片机的用二维数组,另外,为节省单片机的RAM资源,数组一般放资源,数组一般放在代码段中);在代码段中);把控制码按顺序放入数组把控制码按顺序放入数组TABLE中;中;定义变量定义变量i,改变,改变i的值,就可以取出数组中对应的控制码。的值,就可以取出数组中对应的控制码。 4.3 I/O口应用实例与仿真口应用实例与仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 42I/O口的

44、实例仿真口的实例仿真q程序流程图程序流程图 q汇编语言和汇编语言和C语言源程序语言源程序 q调试与仿真调试与仿真 4.3 I/O口应用实例与仿真口应用实例与仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 43I/O口的实例仿真口的实例仿真q例例4.5 I/O并行口直接驱动数码管显示的并行口直接驱动数码管显示的proteus仿真及仿真及C语语言程序设计言程序设计 q设计要求设计要求 :如图:如图4.32所示,利用所示,利用AT89C52单片机的单片机的P0端端口的口的P0.0P0.7连接到一个共阴数码管的笔段上,数码管连接到一个共阴数码管

45、的笔段上,数码管的公共端接地。在数码管上循环显示的公共端接地。在数码管上循环显示0-9数字,时间间隔数字,时间间隔0.2秒。秒。 q数码管的仿真电路原理图数码管的仿真电路原理图 (见教材图(见教材图4.32) 图图4.32中需要注意两点:中需要注意两点: (1)由于使用)由于使用P0口驱动数码管,因此上拉排阻口驱动数码管,因此上拉排阻RP1必不可少;必不可少; (2)P0口与数码管发光段口与数码管发光段A-G之间必须对应接七个限流电阻。之间必须对应接七个限流电阻。4.3 I/O口应用实例与仿真口应用实例与仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及prot

46、eus简介简介 44I/O口的实例仿真口的实例仿真q元器件选取元器件选取 AT89C52:单片机;:单片机;RES:电阻;:电阻;CRYSTAL:晶振;:晶振; CAP、CAP-ELEC:电容、电解电容;:电容、电解电容;RESPACK-7:1Kx7排阻;排阻;7SEG-COM-CATHODE:7段式共阴极数码管;段式共阴极数码管; q程序设计内容程序设计内容 由于显示的数字由于显示的数字0-9的字形码没有规律可循,只能采用查表的的字形码没有规律可循,只能采用查表的方式来完成方式来完成P0口对数码管的控制。方法是找出共阴极数码管口对数码管的控制。方法是找出共阴极数码管显示显示0-9的字形码,按着数字的字形码,按着数字0-9的顺序,把这十个字形码放入的顺序,把这十个字形码放入数组数组table中。中。 q程序流程图程序流程图 qC语言源程序语言源程序 q调试与仿真调试与仿真 4.3 I/O口应用实例与仿真口应用实例与仿真 北京航空航天大学出版社北京航空航天大学出版社4单片机的单片机的I/O口及口及proteus简介简介 45I/O口的实例仿真口的实例仿真q例例4.6 动态数码管显示的动态数码管显示的proteus仿真及仿真及C语言程序设计语言程序设计q设计要求设计要求 :如图:如图4.34所示,所示,P0端口接动态数码管的字端口接动态数码管的字形码笔段,形码

温馨提示

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

评论

0/150

提交评论