- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章 89C51单片机硬件结构和原理 3、内部数据存储器(共256个单元) 2.2 89C51单片机引脚及其功能 §2.2.1 89C51单片机引脚 §2.2.1 89C51单片机引脚 1、准双向 当I/O口作为输入时,应先向此口锁存器写入全1, 此时该口引脚浮空,可作高阻抗输入。 2、P0口: 漏极开路的8位准双向I/O口,每位能驱动8个LS型TTL负载。 P0口可作为一个数据输入/输出口; 在CPU访问片外存储器时,P0口为分时复用的低8位地址总线和8位数据总线。 3、P1口: 带内部上拉电阻的8位准双向I/O端口,每位能驱动4个TTL负载。 4、P2口: P2口:带内部上拉电阻的8位双向I/O端口,每位能驱动4个TTL负载。在CPU访问片外存储器时,它输出高8位地址。 5、P3口: 带内部上拉电阻的8位双向I/O端口,每位能驱动4个TTL负载。P3口除作为一般I/O口外,每个引脚都有第二功能。 6、RST:复位信号 当输入的复位信号延续两个机器周期以上的高电平时即为有效; 完成单片机的复位初始化操作; 复位: PC=0000H,表示程序从0000H开始执行; SP=07H, 堆栈区栈顶地址; P0~P3值为FFH,使P0~P3口用作输入口做好准备。 §2.3 89C51存储器配置 §2.3.1 89C51存储器分类 §2.3.2 程序存储器地址空间 §2.3.3 数据存储器地址空间 一、物理结构(哈佛结构) §2.3.2 程序存储器地址空间 一、用途: 用于存放编好的程序和表格常数。 二、编址: 89C51片内Flash ROM的容量为4KB。地址为0000H~0FFFH。 片外最多可扩至64KB ROM/EPROM,地址为1000H~FFFFH。 片内外统一编址。 三、寻址方式: 1、当 EA=“1”时: 89C51的PC在0000~0FFFH范围内执行片内ROM中的程序,当指令地址超过0FFFH 后就自动转向片外ROM中取指令。 2、当 EA=”0”时: 89C51片内ROM不起作用,CPU只能从片ROM/EPROM中取指令。可以从 0000H 开始寻址。由于8031片内不带ROM ,所以使用时必须 EA=”0” §2.3.3 数据存储器地址空间 一、用途: 用于存放运算的中间结果、数据暂存和缓冲、标志位等。 二、片外RAM: 地址:0000H~FFFFH 寻址:用MOVX指令 特殊功能寄存器共21个; ①特殊功能寄存器种类: a. 累加器ACC b. 寄存器B c. 程序状态字PSW d. 数据指针DPTR e. 堆栈指针SP 1)累加器Accumulator( ACC )(E0H) 功能: 累加器A是一个最常用的专用寄存器,大部分单操作指令的一个操作数取自累加器,很多双操作数指令中的一个操作数也取自累加器。 加、减、乘、除法运算的指令,运算结果都存放于累加器A或寄存器B中。 6)堆栈指针SP(Stack Pointer) 指明堆栈区栈顶单元的地址,8位,可软件设置初值, 复位时SP = 07H。 注意:入栈时,堆栈指针SP的值先加1, 出栈 ,是先将数据取出,然后SP指针 减1。 89C51单片机的堆栈操作遵循先入后出的原则。 §2.7 输出/输入端口结构 I/O端口概述 1.89C51单片机有四个8位并行I/O端口:P0、P1、P2和P3。 2.每个端口都是8位准双向口,共占32根引脚。 3.每一条I/O线都能独立地用作输入或输出。 4.每个端口都包括一个锁存器(即特殊功能寄存器P0~P3),一个输出驱动器和输入缓冲器,作输出是数据可以锁存,作输入时数据可以缓冲。 输入/输出指令: 1. 输出数据34H到P0口 MOV P0,#34H 2. 从P0口输入数据 MOV P0,#0FFH MOV A,P0 小结: 1. 输入数据时必须使P0口先置1 2.P0口在作输出口使用时,由于它无内部上拉电阻,为了在口线上输出高电平并具有一定的驱动能力,必须外接上拉电阻。 ● P1口 从单片机的使用角度来看,P1是一个真正的双向口,而其他三个端口都是准双向口。 注意:1. 和P0一样,为防止口锁存器对输入口线造成影响,P1
文档评论(0)