




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第六章mcs-51单片机IO端口(1) 第六章第六章 MCS-51MCS-51的的I/0I/0 第六章mcs-51单片机IO端口(1) 单片机单片机I/O口的使用口的使用 n对单片机的控制,其实就是对对单片机的控制,其实就是对I/O口的控制,无论单片机口的控制,无论单片机 对外界进行何种控制,或接受外部的控制,都是通过对外界进行何种控制,或接受外部的控制,都是通过I/O 口进行的。口进行的。51单片机总共有单片机总共有P0、P1、P2、P3四个四个8位双位双 向输入输出端口,每个端口都有锁存器、输出驱动器和输向输入输出端口,每个端口都有锁存器、输出驱动器和输 入缓冲器。入缓冲器。4个个I/O端
2、口都能作输入输出口用,其中端口都能作输入输出口用,其中P0和和 P2通常用于对外部存储器的访问。通常用于对外部存储器的访问。 第六章mcs-51单片机IO端口(1) 5151系列单片机有系列单片机有4 4个个I/OI/O端口,每个端口都是端口,每个端口都是8 8位准双向位准双向 口,共占口,共占3232根引脚。每个端口都包括一个锁存器根引脚。每个端口都包括一个锁存器( (即专用寄即专用寄 存器存器P0P0P3)P3)、一个输出驱动器和输入缓冲器。通常把、一个输出驱动器和输入缓冲器。通常把4 4个端个端 口笼统地表示为口笼统地表示为P0P0P3P3。 在无片外扩展存储器的系统中,这在无片外扩展存
3、储器的系统中,这4个端口的每一位都个端口的每一位都 可以作为准双向通用可以作为准双向通用I/O端口使用。在具有片外扩展存储器的端口使用。在具有片外扩展存储器的 系统中,系统中,P2口作为高口作为高8位地址线,位地址线,P0口分时作为低口分时作为低8位地址位地址 线和双向数据总线。线和双向数据总线。 51单片机单片机4个个I/O端口线路设计的非常巧妙,学习端口线路设计的非常巧妙,学习I/O端口端口 逻辑电路,不但有利于正确合理地使用端口,而且会给设计逻辑电路,不但有利于正确合理地使用端口,而且会给设计 单片机外围逻辑电路有所启发。单片机外围逻辑电路有所启发。 第六章mcs-51单片机IO端口(1
4、) 下面简单介绍一下输入下面简单介绍一下输入/ /输出端口结构。输出端口结构。 6.1 P06.1 P0口和口和P2P2的结构的结构 第六章mcs-51单片机IO端口(1) 下图为下图为P0P0口的某位口的某位P0.n(n=0P0.n(n=07)7)结构图,它由一个输出锁结构图,它由一个输出锁 存器、两个三态输入缓冲器、一个输出驱动电路和一个输出控存器、两个三态输入缓冲器、一个输出驱动电路和一个输出控 制电路组成。输出驱动电路由一对制电路组成。输出驱动电路由一对FETFET(场效应管)组成,其(场效应管)组成,其 工作状态受输出控制电路的控制,后者包括:工作状态受输出控制电路的控制,后者包括:
5、1 1个与门、个与门、1 1个反个反 相器和相器和1 1个模拟转换开关(个模拟转换开关(MUXMUX)。)。 D Q CLK QMUX P0.n 读锁存器读锁存器 内部总线内部总线 写锁存器写锁存器 读引脚读引脚 地址地址/ /数据数据 控制控制 VCC T1 T2 P0P0口口 引脚引脚 一、一、P0P0口的结构口的结构 第六章mcs-51单片机IO端口(1) 1 1、P0P0口作为普通口作为普通I/OI/O口口 输出时输出时 模拟转换开关的位置由来自模拟转换开关的位置由来自CPU的控制信号决定,当的控制信号决定,当 控制信号为控制信号为0(低电平)时,开关处于图示位置,它把输出(低电平)时
6、,开关处于图示位置,它把输出 级与锁存器的级与锁存器的Q端接通。同时,因为与门输出为端接通。同时,因为与门输出为0,输出,输出 级中的上拉级中的上拉FET处于截止状态,因此输出级是漏极开路的处于截止状态,因此输出级是漏极开路的 开漏电路。这时开漏电路。这时P0口可作一般的口可作一般的I/O口用。口用。 D Q CLK QMUX P0.n 读锁存器读锁存器 内部总线内部总线 写锁存器写锁存器 读引脚读引脚 地址地址/ /数据数据 控制控制 VCC T1 T2 P0P0口口 引脚引脚 第六章mcs-51单片机IO端口(1) nCPU向端口输出数据时,写脉冲加在触发器时钟端向端口输出数据时,写脉冲加
7、在触发器时钟端CLK上,这上,这 样与内部总线相连的样与内部总线相连的D端的数据取反后就出现在端的数据取反后就出现在Q端上,又经输端上,又经输 出出FET反相,在反相,在P0引脚上出现的数据正好是内部总线的数据。引脚上出现的数据正好是内部总线的数据。P0 口的输出级可以驱动口的输出级可以驱动8个个LS TTL输入,但在开漏状态下,为了驱输入,但在开漏状态下,为了驱 动动NMOS或其它拉流负载,需要外接上拉电阻。或其它拉流负载,需要外接上拉电阻。 D Q CLK QMUX P0.n 读锁存器读锁存器 内部总线内部总线 写锁存器写锁存器 读引脚读引脚 地址地址/ /数据数据 控制控制 VCC T1
8、 T2 P0P0口口 引脚引脚 第六章mcs-51单片机IO端口(1) 输入时输入时-分读引脚或读锁存器分读引脚或读锁存器 读引脚:读引脚:由传送指令由传送指令(MOVMOV)实现;实现; n端口中的端口中的2个三态缓冲器用于读操作。一个缓冲器用于直接读个三态缓冲器用于读操作。一个缓冲器用于直接读 端口引脚处的数据,当执行一般由端口输入的指令时,读脉冲端口引脚处的数据,当执行一般由端口输入的指令时,读脉冲 把图中下面一个三态缓冲器打开,这样端口上的数据将经过缓把图中下面一个三态缓冲器打开,这样端口上的数据将经过缓 冲器送至内部总线。冲器送至内部总线。 D Q CLK QMUX P0.n 读锁存
9、器读锁存器 内部总线内部总线 写锁存器写锁存器 读引脚读引脚 地址地址/ /数据数据 控制控制 VCC T1 T2 P0P0口口 引脚引脚 第六章mcs-51单片机IO端口(1) D Q CLK QMUX P0.n 读锁存器读锁存器 内部总线内部总线 写锁存器写锁存器 读引脚读引脚 地址地址/ /数据数据 控制控制 VCC T1 T2 P0P0口口 引脚引脚 输入时输入时-分读引脚或读锁存器分读引脚或读锁存器 图中上面一个缓冲器并不直接读取端口引脚上的数据,而图中上面一个缓冲器并不直接读取端口引脚上的数据,而 是读取锁存器是读取锁存器Q端的数据。端的数据。Q端与引脚处的数据是一致的。结构端与引
10、脚处的数据是一致的。结构 上这样安排是为了适应所谓上这样安排是为了适应所谓“读读-修改修改-写写”类指令的需要。这类类指令的需要。这类 指令的特点是:先读口,随之可能对读入的数据进行修改,然指令的特点是:先读口,随之可能对读入的数据进行修改,然 后再写到端口上。后再写到端口上。 第六章mcs-51单片机IO端口(1) n例如逻辑与指令:例如逻辑与指令:ANL P0,A就属于这类指令。此指令先把就属于这类指令。此指令先把 P0上的数据读入上的数据读入CPU,随之与累加器,随之与累加器A内的数据按位进行逻辑内的数据按位进行逻辑 与操作,最后再把与的结果送回与操作,最后再把与的结果送回P0口。这类指
11、令同样适用于口。这类指令同样适用于 P1P3口。口。 n对于对于“读读-修改修改-写写”指令,不直接读引脚上的数据而读锁存器指令,不直接读引脚上的数据而读锁存器 上的数据,是为了避免错读引脚上电平的可能性。例如,若用上的数据,是为了避免错读引脚上电平的可能性。例如,若用 一根口线去驱动一个晶体管的基极,当向此口线写一根口线去驱动一个晶体管的基极,当向此口线写1时,晶体管时,晶体管 导通,并把引脚上的电平拉低。这时若从引脚上读取数据,会导通,并把引脚上的电平拉低。这时若从引脚上读取数据,会 把此数据(应为把此数据(应为1)错读为)错读为0,若从锁存器,若从锁存器Q端读取,则可以得端读取,则可以得
12、 到正确的数据。到正确的数据。 第六章mcs-51单片机IO端口(1) D Q CLK QMUX P0.n 读锁存器读锁存器 内部总线内部总线 写锁存器写锁存器 读引脚读引脚 地址地址/ /数据数据 控制控制 VCC T1 T2 P0P0口口 引脚引脚 n准双向口:从图中结构看,引脚上的外部信号既加在三态缓准双向口:从图中结构看,引脚上的外部信号既加在三态缓 冲器的输入端上,又加在输出级冲器的输入端上,又加在输出级FET2的漏极上,若此的漏极上,若此FET2 是导通的(相当于曾输出锁存过数据是导通的(相当于曾输出锁存过数据0),则引脚上的电位始),则引脚上的电位始 终被钳位在终被钳位在0电平上
13、(除非外部信号源有极大的负载能力),电平上(除非外部信号源有极大的负载能力), 输入数据不可能正确地读入。因此输入数据不可能正确地读入。因此P0口是一个准双向口,即口是一个准双向口,即 在输入数据时,应先把口置在输入数据时,应先把口置1,也就是锁存器的,也就是锁存器的Q为为0,这样,这样 使输出级的使输出级的2个个FET都截止,引脚处于悬浮状态,可作高阻抗都截止,引脚处于悬浮状态,可作高阻抗 输入。这就是所谓的准双向口。输入。这就是所谓的准双向口。 第六章mcs-51单片机IO端口(1) n当当P0口作为地址口作为地址/数据总线使用时,可以分为两种情况。一种情况数据总线使用时,可以分为两种情况
14、。一种情况 是从是从P0输出地址或数据,这时输出地址或数据,这时CPU发出的控制信号应为高电平发出的控制信号应为高电平1, 转换开关把反相器输出端与下拉转换开关把反相器输出端与下拉FET接通,同时与门开锁。输出的接通,同时与门开锁。输出的 地址或数据信号即通过与门去驱动上拉地址或数据信号即通过与门去驱动上拉FET,又通过反相器去驱动,又通过反相器去驱动 下拉下拉FET。另一种情况是从。另一种情况是从P0输入数据,这时信号仍应从输入缓冲输入数据,这时信号仍应从输入缓冲 器进入内部总线。器进入内部总线。 D Q CLK QMUX P0.n 读锁存器读锁存器 内部总线内部总线 写锁存器写锁存器 读引
15、脚读引脚 地址地址/ /数据数据 控制控制 VCC T1 T2 P0P0口口 引脚引脚 2 2、P0P0作为地址作为地址/ /数据总线数据总线 第六章mcs-51单片机IO端口(1) P0P0引脚输出地址引脚输出地址/ /输入数据输入数据 输入信号是从引脚通过输入缓冲器进入内部总线。输入信号是从引脚通过输入缓冲器进入内部总线。 此时,此时,CPUCPU自动使自动使MUXMUX向下,并向向下,并向P0P0口写口写“1 1”,“读引脚读引脚”控制控制 信信 号有效,下面的缓冲器打开,外部数据读入内部总线。号有效,下面的缓冲器打开,外部数据读入内部总线。 2 2、P0P0作为地址作为地址/ /数据总
16、线数据总线 D Q CLK QMUX P0.n 读锁存器读锁存器 内部总线内部总线 写锁存器写锁存器 读引脚读引脚 地址地址/ /数据数据 控制控制 VCC T1 T2 P0P0口口 引脚引脚 第六章mcs-51单片机IO端口(1) n综上所述,综上所述,P0口既可以作为地址口既可以作为地址/数据总线使用,又可以数据总线使用,又可以 作为通用作为通用I/O口用;用作输出口时,输出级属于漏极开路,口用;用作输出口时,输出级属于漏极开路, 在驱动在驱动nmos电路时应外接上拉电阻;用作输入口时,应电路时应外接上拉电阻;用作输入口时,应 先向锁存器写先向锁存器写1,这时输出级的,这时输出级的2个个F
17、ET都截止,可作高阻都截止,可作高阻 抗输入。当抗输入。当P0口作地址口作地址/数据总线使用时,就不能再把它数据总线使用时,就不能再把它 当通用当通用I/O口使用。口使用。 第六章mcs-51单片机IO端口(1) 二、二、P2P2的内部结构的内部结构 1.P21.P2口作为普通口作为普通I/OI/O口口 D Q CLK QMUX P2.n 读锁存器读锁存器 内部总线内部总线 写锁存器写锁存器 读引脚读引脚 地址地址控制控制 VCC R T P2口引 脚 nP2口的位结构如图,它内部有上拉电阻。在结构上,口的位结构如图,它内部有上拉电阻。在结构上,P2口比口比 P1口多了一个输出转换控制部分。当
18、转换开关(口多了一个输出转换控制部分。当转换开关(MUX)与锁存)与锁存 器的器的Q端接通时,端接通时,P2口作通用的口作通用的I/O口用,是一个准双向口。口用,是一个准双向口。 第六章mcs-51单片机IO端口(1) 2.P22.P2口作为地址总线口作为地址总线 n当系统中接有外部存储器时,当系统中接有外部存储器时,P2口可用于输出高口可用于输出高8位地址,这位地址,这 时在时在CPU控制下,转换开关与地址线接通。在外接程序存储器的控制下,转换开关与地址线接通。在外接程序存储器的 系统中,由于访问外部存储器的操作连续不断,系统中,由于访问外部存储器的操作连续不断,P2口不断送出口不断送出 高
19、高8位地址,故这时位地址,故这时P2口不可能再作通用口不可能再作通用I/O口使用。口使用。 D Q CLK QMUX P2.n 读锁存器读锁存器 内部总线内部总线 写锁存器写锁存器 读引脚读引脚 地址地址控制控制 VCC R T P2口引 脚 第六章mcs-51单片机IO端口(1) n在不接外部程序存储器而接有外部数据存储器的系统中,情况有所不在不接外部程序存储器而接有外部数据存储器的系统中,情况有所不 同。若外接数据存储器的容量为同。若外接数据存储器的容量为256B,则可以使用,则可以使用MOVXRi类指类指 令由令由P0口送出口送出8位地址,位地址,P2口引脚上的内容,在整个访外期间,不会
20、口引脚上的内容,在整个访外期间,不会 改变,故改变,故P2口仍可作通用口仍可作通用I/O口。若外接存储器容量较大,需用口。若外接存储器容量较大,需用 MOVXDPTR类指令由类指令由P0和和P2口送出口送出16位地址,在读写周期内,位地址,在读写周期内, P2口引脚上将保持地址信息,但是从图示的结构可知,输出地址时,口引脚上将保持地址信息,但是从图示的结构可知,输出地址时, 并不要求并不要求P2锁存器锁存锁存器锁存1,锁存器的内容也不会在送地址的过程中改,锁存器的内容也不会在送地址的过程中改 变,故访问外部数据存储器周期结束后,变,故访问外部数据存储器周期结束后,P2锁存器的内容又会重现在锁存
21、器的内容又会重现在 引脚上。这样根据访问外部数据存储器的频繁程度,引脚上。这样根据访问外部数据存储器的频繁程度,P2口仍可在一定口仍可在一定 限度内作一般限度内作一般I/O口使用。在外部数据存储器容量不太大的情况下,口使用。在外部数据存储器容量不太大的情况下, 也可以从软件上设法,只利用也可以从软件上设法,只利用P1P3口中的某几根口线送高口中的某几根口线送高8位地址,位地址, 而保留而保留P2中的部分或全部口线作通用中的部分或全部口线作通用I/O口用口用 第六章mcs-51单片机IO端口(1) 6.2 P16.2 P1口、口、P3P3口的内部结构口的内部结构 P1P1口的一位的结构口的一位的
22、结构 nP1口也是一个准双向口,用作输入时,口锁存器必须为口也是一个准双向口,用作输入时,口锁存器必须为 “1”。它的。它的8位引出线位引出线P1.7P1.0能独立地用作输入线或输出能独立地用作输入线或输出 线。线。P1口的每一位均由锁存器、输出驱动器和三态缓冲器组口的每一位均由锁存器、输出驱动器和三态缓冲器组 成,其结构如图所示。成,其结构如图所示。 D QD Q CLK QCLK Q P1.nP1.n 读锁存器读锁存器 内部总线内部总线 写锁存器写锁存器 读引脚读引脚 VCC R T T P1口引 脚 第六章mcs-51单片机IO端口(1) nP1口的位锁存器由口的位锁存器由D触发器组成。
23、在触发器组成。在CPU的的“写锁存器写锁存器”信号驱动下,信号驱动下, 将内部总线上的一位数据写入锁存器中,经输出驱动器出现在输出线将内部总线上的一位数据写入锁存器中,经输出驱动器出现在输出线 上。锁存器的上。锁存器的Q端反馈到通往内部总线的三态输入缓冲器的输入端,端反馈到通往内部总线的三态输入缓冲器的输入端, 以响应以响应CPU的的“读锁存器读锁存器”信号,把锁存器的内容读入内部总线上。信号,把锁存器的内容读入内部总线上。 在响应在响应CPU“读引脚读引脚”信号时,则将引脚上的信息读至内部总线。但信号时,则将引脚上的信息读至内部总线。但 是在是在“读引脚读引脚”即输入之前,应先将即输入之前,
24、应先将“1”写入锁存器,使输出驱动器写入锁存器,使输出驱动器 的场效应管的场效应管T截止,引脚由内部上拉电阻拉成了高电平(输出截止,引脚由内部上拉电阻拉成了高电平(输出1)。当)。当 外部输入外部输入1时,该引脚为高电平,输入时,该引脚为高电平,输入0时,该引脚为低电平。时,该引脚为低电平。 n结构上这样安排是为了结构上这样安排是为了“读读修改修改写写”类指令的需要,这类指令是类指令的需要,这类指令是 从锁存器读取数据,进行处理,并把处理后的数据重新写入锁存器。从锁存器读取数据,进行处理,并把处理后的数据重新写入锁存器。 在在ANL、ORL、XRL、JBC、CPL、INC、DEC、DJNZ、M
25、OV等指等指 令中,当目的操作数为某令中,当目的操作数为某I/O口或口或I/O口的某一位时,就是口的某一位时,就是“读读修修 改改写写”。例如:。例如:ANL P1,A指令,先把指令,先把P1口上的数据读入口上的数据读入CPU, 随之与累加器随之与累加器A按位进行与操作,最后再把结果送按位进行与操作,最后再把结果送P1口。又如:口。又如:MOV P1.0,C指令,是先把指令,是先把P1口的口的8位读入,再修改位读入,再修改P1.0位即进位标志位即进位标志C 送送P1.0,最后再把新字节写回到,最后再把新字节写回到P1口。口。 n读引脚指令一般都是以读引脚指令一般都是以I/O口为源操作数的指令,
26、执行读引脚指令时,口为源操作数的指令,执行读引脚指令时, 打开三态缓冲器,输入接口的状态。例如,读打开三态缓冲器,输入接口的状态。例如,读P1口的输入状态时,读口的输入状态时,读 引脚指令为引脚指令为MOV A,P1 第六章mcs-51单片机IO端口(1) P3P3的内部结构的内部结构 D QD Q CLK QCLK Q P3.nP3.n 读锁存器读锁存器 内部总线内部总线 写锁存器写锁存器 读引脚读引脚 VCC R T T P3口引 脚 第二输入功能第二输入功能 第二输出功能第二输出功能 一、作为通用一、作为通用I/OI/O口与口与P1P1口类似口类似-准双向口准双向口(W=1)(W=1)
27、nP3口也是准双向口,与口也是准双向口,与P1不同的是不同的是P3口是双功能口。口是双功能口。P3 口作为第一功能使用时,同口作为第一功能使用时,同P1口。作为第二功能使用时,口。作为第二功能使用时, 它的引脚见后面列表。它的引脚见后面列表。 W 第六章mcs-51单片机IO端口(1) nP3口的位结构如图所示。比口的位结构如图所示。比P1口多了一个与非门。与非门口多了一个与非门。与非门 的两个输入端是锁存器的的两个输入端是锁存器的Q端和第二输出功能端。当第二端和第二输出功能端。当第二 输出功能为高电平时,与非门的输出就是输出功能为高电平时,与非门的输出就是Q,与,与P1口的结口的结 构相同。
28、当锁存器的构相同。当锁存器的Q端为高电平时,第二功能的输出信端为高电平时,第二功能的输出信 号从第二输出功能线经过与非门反相再通过输出驱动器反号从第二输出功能线经过与非门反相再通过输出驱动器反 相后输出。当与非门的两个输入端都为高电平时,输出驱相后输出。当与非门的两个输入端都为高电平时,输出驱 动器的场效应管动器的场效应管T截止,输入的第二功能信号经缓冲器,从截止,输入的第二功能信号经缓冲器,从 第二输入功能线进入。输入的第一功能信号经缓冲器后仍第二输入功能线进入。输入的第一功能信号经缓冲器后仍 由读引脚信号读入内部总线。由读引脚信号读入内部总线。 第六章mcs-51单片机IO端口(1) P3
29、P3的内部结构的内部结构 D QD Q CLK QCLK Q P3.nP3.n 读锁存器读锁存器 内部总线内部总线 写锁存器写锁存器 读引脚读引脚 VCC R T T P3口引 脚 第二输入功能第二输入功能 第二输出功能第二输出功能 二、第二功能(Q=1) 此时引脚部分输入(Q=1、W=1) ,部分输出(Q=1、W输出) 。 W 第六章mcs-51单片机IO端口(1) 第二功能各引脚功能定义: P3.0:RXD串行口输入 P3.1:TXD串行口输出 P3.2:INT0外部中断0输入 P3.3:INT1外部中断1输入 P3.4:T0定时器0外部输入 P3.5:T1定时器1外部输入 P3.6:WR
30、外部写控制 P3.7:RD外部读控制 第六章mcs-51单片机IO端口(1) n综上所述:当综上所述:当P0作为作为I/O口使用时,特别是作为输出时,输口使用时,特别是作为输出时,输 出级属于开漏电路,必须外接上拉电阻才会有高电平输出;出级属于开漏电路,必须外接上拉电阻才会有高电平输出; 如果作为输入,必须先向相应的锁存器写如果作为输入,必须先向相应的锁存器写“1”,才不会影响,才不会影响 输入电平。输入电平。 n当当CPU内部控制信号为内部控制信号为“1”时,时,P0口作为地址口作为地址/数据总线使数据总线使 用,这时,用,这时,P0口就无法再作为口就无法再作为I/O口使用了。口使用了。 第
31、六章mcs-51单片机IO端口(1) nP1、P2 和和P3 口为准双向口口为准双向口, 在内部差别不大在内部差别不大, 但使用功能但使用功能 有所不同。有所不同。 nP1口是用户专用口是用户专用 8 位准双向位准双向I/O口口, 具有通用输入具有通用输入/输出功能输出功能, 每一位都能独立地设定为输入或输出。当有输出方式变为输每一位都能独立地设定为输入或输出。当有输出方式变为输 入方式时入方式时, 该位的锁存器必须写入该位的锁存器必须写入“1”, 然后才能进入输入操然后才能进入输入操 作。作。 nP2口是口是 8 位准双向位准双向I/O口。外接口。外接I/O设备时设备时, 可作为扩展系统可作
32、为扩展系统 的地址总线的地址总线, 输出高输出高8位地址位地址, 与与P0 口一起组成口一起组成 16 位地址总位地址总 线。线。 对于对于 8031 而言而言, P2 口一般只作为地址总线使用口一般只作为地址总线使用, 而不而不 作为作为I/O线直接与外部设备相连。线直接与外部设备相连。 第六章mcs-51单片机IO端口(1) 例例1 闪烁灯闪烁灯 1实验任务实验任务 如图所示:在如图所示:在P1.0端口上接一个发光二极管端口上接一个发光二极管L1,使,使L1在不停地一亮一灭,在不停地一亮一灭, 一亮一灭的时间间隔为一亮一灭的时间间隔为0.2秒。秒。 2电路原理图电路原理图 第六章mcs-5
33、1单片机IO端口(1) 3系统板上硬件连线系统板上硬件连线 把把“单片机系统单片机系统”区域中的区域中的P1.0端口用导线连接到端口用导线连接到“八路发光二极管指示模八路发光二极管指示模 块块”区域中的区域中的L1端口上。端口上。 4程序设计内容程序设计内容 (1) 延时程序的设计方法延时程序的设计方法 作为单片机的指令的执行的时间是很短,数量大微秒级,因此,我们要求的闪烁作为单片机的指令的执行的时间是很短,数量大微秒级,因此,我们要求的闪烁 时间间隔为时间间隔为0.2秒,相对于微秒来说,相差太大,所以我们在执行某一指令时,秒,相对于微秒来说,相差太大,所以我们在执行某一指令时, 插入延时程序
34、,来达到我们的要求,但这样的延时程序是如何设计呢?下面具体插入延时程序,来达到我们的要求,但这样的延时程序是如何设计呢?下面具体 介绍其原理:介绍其原理: 如果使用的石英晶体为如果使用的石英晶体为12MHz,则,则1个机器周期为个机器周期为1微秒微秒 MOV R6,#20 2个机器周期 D1: MOV R7,#248 2个机器周期 DJNZ R7,$ 2个机器周期 DJNZ R6,D1 2个机器周期 因此,上面的延时程序时间为因此,上面的延时程序时间为2+20(2+2+2248)=10.002ms 延时程序的思路:延时程序的思路: 第六章mcs-51单片机IO端口(1) 由以上可知,当由以上可
35、知,当R610、R7248时,延时时,延时5ms,R620、R7248时,延时,延 时时10ms,以此为基本的计时单位。如本实验要求以此为基本的计时单位。如本实验要求0.2秒秒200ms,10msR5 200ms,则,则R520,延时子程序如下:,延时子程序如下: DELAY: MOV R5,#20 D1: MOV R6,#20 D2: MOV R7,#248 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET (2) 输出控制输出控制 如图如图1所示,当所示,当P1.0端口输出高电平,即端口输出高电平,即P1.01时,根据发光二极管的单向导时,根据发光二极管的单向导 电性
36、可知,这时发光二极管电性可知,这时发光二极管L1熄灭;当熄灭;当P1.0端口输出低电平,即端口输出低电平,即P1.00时,时, 发光二极管发光二极管L1亮;我们可以使用亮;我们可以使用SETBP1.0指令使指令使P1.0端口输出高电平,使端口输出高电平,使 用用CLRP1.0指令使指令使P1.0端口输出低电平。端口输出低电平。 第六章mcs-51单片机IO端口(1) 5 程序框图程序框图 如图所示如图所示 6 汇编源程序汇编源程序 ORG 0 START: CLR P1.0 LCALL DELAY SETB P1.0 LCALL DELAY LJMP START DELAY: MOV R5,#
37、20 ;延时子程序,延时延时子程序,延时0.2秒秒 D1: MOV R6,#20 D2: MOV R7,#248 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET END 第六章mcs-51单片机IO端口(1) 例例2、多路开关状态指示、多路开关状态指示 如图如图 所示,所示,AT89S51 单片机单片机 的的 P1.0P1.3 接四个发光二极管接四个发光二极管 L1L4,P1.4P1.7 接了四个开接了四个开 关关 K1K4,编程将开关的状态,编程将开关的状态 反映到发光二极管上。(开关闭反映到发光二极管上。(开关闭 合,对应的灯亮,开关断开,对合,对应的灯亮,开关断开
38、,对 应的灯灭)。应的灯灭)。 对于开关状态检测,相对单对于开关状态检测,相对单 片机来说,是输入关系,我们可片机来说,是输入关系,我们可 轮流检测每个开关状态,根据每轮流检测每个开关状态,根据每 个开关的状态让相应的发光二极个开关的状态让相应的发光二极 管指示,可以采用管指示,可以采用 JB P1.X, REL 或或 JNB P1.X,REL 指令来完成;指令来完成; 也可以一次性检测四路开关状态,也可以一次性检测四路开关状态, 然后让其指示,可以采用然后让其指示,可以采用 MOV A, P1 指令一次把指令一次把 P1 端口的状态全端口的状态全 部读入,然后取高部读入,然后取高 4 位的状态来位的状态来 指示。指示。 第六章mcs
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年科研项目管理试题及答案
- 2025年上海市免疫学研究所招聘笔试模拟试题参考答案详解
- 第三单元 长方体和正方体 专项提升讲义 五年级下册数学人教版(含答案)
- 2025年防机械伤害考试题及答案
- 车间安全知识培训方案课件
- 【核心素养】双减作业本2.1地形 粤教版八年级上册(含答案)
- 教学课件制作技巧及方法
- 语文阅读汇报课教学课件
- 大班感恩有你教学课件
- 车辆春季换季保养
- 中国古建筑文化与鉴赏智慧树知到期末考试答案章节答案2024年清华大学
- 性骚扰培训课件
- 偏执性反应的护理查房
- 定密管理制度
- 绿豆芽成长记-A4打印版
- 3D打印技术教程
- 食材配送投标方案(技术方案)
- 佩戴腰围护理规范
- 建设工程质量检测人员考试:建设工程质量检测人员真题模拟汇编(共906题)
- 中国地理(第二版)赵济王静爱
- 【课件】等差数列的概念2说课课件-2022-2023学年高二上学期数学人教A版(2019)选择性必修第二册
评论
0/150
提交评论