单片机原理及应用教案(3--4)

单片机原理及应用教案(3--4)

ID:14475359

大小:1.67 MB

页数:56页

时间:2018-07-28

单片机原理及应用教案(3--4)_第1页
单片机原理及应用教案(3--4)_第2页
单片机原理及应用教案(3--4)_第3页
单片机原理及应用教案(3--4)_第4页
单片机原理及应用教案(3--4)_第5页
资源描述:

《单片机原理及应用教案(3--4)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、单片机原理及应用教案(3--4)第3章MCS-51单片机的内部资源及应用主要内容:MCS-51单片机内部各器件的具体结构、组成原理、工作方式的设置及典型应用,为读者后续学习单片机应用系统设计、充分利用单片机内部资源解决工程实际问题奠定基础。重点在于各器件工作方式的设置及灵活应用,难点在于中断系统和定时器/计数器的应用。3.1MCS-51单片机的并行I/O口3.1.1MCS-51内部并行I/O口8051有4个8位并行I/O口,分别命名为P0,P1,P2和P3口。1.P0口P0口为双向三态输入/输出口,P0口

2、既可作为地址/数据总线口,又可作为通用I/O口,可驱动8个TTL输入。在访问外部存储器时,P0口作地址/数据总线复用口,是一个真正的双向口,并分时送出地址的低8位和送出(或接收)相应存储单元的数据。作通用I/O口时,P0口只是一个准双向口,需要在外部引脚处外接上拉电阻。P0口的位结构如下图所示。2.P2口P2口常用做外部存储器的高8位地址口。当不用做地址口时,P2口也可作为通用I/O口,这时它也是一个准双向I/O口。不必外接上拉电阻就可以驱动任何MOS驱动电路,且只能驱动4个TTL输入。P2口的位结构如下

3、图所示。3.P1口P1口常用做通用I/O口,它也是一个标准的准双向I/O口,不必外接上拉电阻就可以驱动任何MOS驱动电路,且只能驱动4个TTL输入。P1口的位结构如下图所示。4.P3口P3口是一个双功能口,第一功能与P1口一样可用做通用I/O口,也是一个准双向I/O口,能驱动4个TTL输入。另外还具有第二功能。P3口工作在第二功能时各管脚定义如下表所示。P3口的位结构图如下图所示。表3.1.1P3口工作在第二功能时各管脚定义表引脚功能引脚功能P3.0串行输入口(RXD)P3.4定时器/计数器0的外部输入口

4、(T0)P3.1串行输出口(TXD)P3.5定时器/计数器1的外部输入口(T1)P3.2外中断0(INT0)P3.6外部数据存储器写选通(WR)P3.3外中断1(INT1)P3.7外部数据存储器读选通(RD)3.1.2MCS-51内部并行I/O口的应用MCS-51I/O端口的操作方式:(1)输出数据方式:CPU通过一条数据传送指令就可以把输出数据写入P0~P3的端口锁存器,然后通过输出驱动器送到端口引脚线。例如,下面的指令均可在P0口输出数据。MOVP0,AANLP0,#dataORLP0,A(2)读端口

5、数据方式:CPU读入的这个数据并非端口引脚线上的数据。读端口数据可以直接读端口。例如,下面的指令均可以从P1口输入数据。MOVA,P1MOV20H,P1MOVR0,P1MOV@R0,P1(3)读端口引脚方式:读端口引脚方式可以从端口引脚上读入信息。在这种方式下,CPU首先必须使欲读端口引脚所对应的锁存器置1,然后才能读端口引脚。因此,用户在读引脚时必须先置位锁存器后读,连续使用两条指令。例如,下面的程序可以读P1引脚上的低4位信号。MOVP1,#0FH;置位P1引脚的低4位锁存器MOVA,P1;读P1引脚

6、上的低4位信号送累加器A1.I/O口直接用于输入/输出在I/O口直接用做输入/输出时,CPU既可以把它们看做数据口,也可以看做状态口,这是由用户决定的。[例题1]要求将两个BCD拨码开关的数字和,在LED数码管上显示出来。(用CD4511驱动LED)解:CD4511是BCD锁存—段码译码—共阴LED驱动集成电路,其引脚如下图所示,各引脚功能如下:VCC:接正电源;VSS:接地;A,B,C,D:BCD码输入脚(A为最低位,D为最高位);Qa~Qg:段码输出脚,高电平有效,最大可输出25mA电流;BI:熄灭,

7、接低电平则Qa~Qg全部输出低电平;LC:点亮测试,接低电平则Qa~Qg全部输出高电平;LE:锁存允许,接高电平锁存,则输出不会随BCD码输入改变。硬件电路设计:BCD拨码开关为4位,两个BCD拨码开关分别接至P3口的高四位和低四位(注意:应连接上拉电阻),由P1口的高四位和低四位通过两片CD4511分别扩展两位LED。硬件电路如下图所示。软件设计思想:读P3口引脚,得到输入数据,将数据分成2个4位BCD码,求BCD码和,输出到P1口,通过CD4511驱动LED显示。程序如下:ORG0100HMOVP3,

8、#0FFH;读引脚先对其写1MOVA,P3;读引脚CPLA;取反,取真正的键值MOV20H,A;A中的数据送20H单元保存SWAPA;A中的内容半字节交换ANLA,#0FH;A中得到原高4位的反码ANL20H,#0FH;20H单元中得到原低4位的反码ADDA,20H;A中为原高低4位反码之和DAA;BCD码调整MOVP1,A;输出到P1口SJMP$;程序执行完,“原地踏步”END2.I/O口扩展外部锁存器为了提高数据传输速率,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。