当前位置:首页 > (完整word版)单片机原理及应用总结
单片机原理及应用
第一章 绪论
1.什么叫单片机?其主要特点有哪些?
在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机。 特点:控制性能和可靠性高、体积小、价格低、易于产品化、具有良好的性价比。
? EA/VPP:内外存储器选择引脚/片
内EPROM编程电压输入引脚; ? PSEN:外部程序存储器选通信号输出引脚
b.非总线型DIP20封装的引脚 ? RST:复位信号输入引脚 4.80C51的片内存储器
增强型单片机片内数据存储器为256字节,地址范围是00H~FFH。低128字节的配情况与基本型单片机相同。高128字节一般为RAM,仅能采用寄存器间接寻址方式询问。注意:与该地址范围重叠的特殊功能寄存器SFR空间采用直接寻址方式询问。 5.80C51的时钟信号
晶振周期为最小的时序单位。一个时钟周期包含2个晶振周期。晶振信号12分频后形成机器周期。即一个机器周期包含12个晶振周期或6个时钟周期。
6.80C51单片机的复位
定义:复位是使单片机或系统中的其他部件处于某种确定的初始状态。 a.复位电路
两种形式:一种是上电复位;另一种是上电与按键均有效的复位。 b.单片机复位后的状态
单片机的复位操作使单片机进入初始化状态。初始化后,程序计数器PC=0000H,所以程序从0000H地址单元开始执行。
特殊功能寄存器复位后的状态是确定的。P0~P3为FFH,SP为07H,SBUF不定,IP、IE和PCON的有效位为0,其余的特殊功能寄存器的状态为00H.相应的意义为: ? P0~P3=FFH,相当于各口锁存器已
写入1,此时不但可用于输出,也可以用于输入; ? SP=07H,堆栈指针指向片内RAM
第二章 80C51的结构和原理
1.80C51的基本结构
a.CPU系统
? 8位CPU,含布尔处理器; ? 时钟电路;
? 总线控制逻辑。 b.存储器系统
? 4K字节的程序存储器
(ROM/EPROM/FLASH,可外扩至64KB);
? 128字节的数据存储器(RAM,可
外扩至64KB);
? 特殊功能寄存器SFR。 c.I/O口和其他功能单元 ? 4个并行I/O口;
? 2个16位定时/计数器; ? 1个全双工异步串行口;
? 中断系统(5个中断源,2个优先
级)
2.80C51的应用模式
a.总线型单片机应用模式
? 总线型应用的“三总线”模式; ? 非总线型应用的“多I/O”模式 3.80C51单片机的封装和引脚 a.总线型DIP40引脚封装 ? RST/VPO:复位信号输入引脚/备用
电源输入引脚; ? ALE/PROG:地址锁存允许信号
输出引脚/编程脉冲输入引脚;
的07单元;
? IP、IE和PCON的有效位为0,各
中断源处于低优先级且均被关断、串行通讯的波特率不加倍; ? PSW=00H,当前工作寄存器为0
组。
7.80C51的存储器组织
功能:存储信息(程序和数据) a.程序存储器低端的一些地址被固定地用作特定的入口地址:
? 0000H:单片机复位后的入口地
址;
? 0003H:外部中断0的中断服务程
序入口地址;
? 000BH:定时/计数器0溢出中断
服务程序入口地址;
? 0013H:外部中断1的中断服务程
序入口地址;
? 001BH:定时/计数器1溢出中断
服务程序入口地址;
? 0023H:串行口的中断服务程序入
口地址。
8.80C51单片机的数据存储器配置 80C51单片机数据存储器分为片外RAM和片内RAM两大部分。 80C51片内RAM的128B部分分成工作寄存器区、位寻址区、通用RAM三大部分。
基本型单片机片内RAM的地址范围是00H~7FH。
增强型单片机片内除地址范围为
00H~7FH的128B RAM外,又增加了80H~FFH的高128B的RAM。增加的这部分RAM仅能采用间接寻址方式访问。
片外RAM地址空间为64KB,地址范围是0000H~FFFFH。
与程序存储器地址空间不同的是,片外RAM地址空间与片内RAM地址空间在地址的低端0000H~007FH是重叠的。访问片外RAM时采用指令MOVX实现,访问片内RAM采用指令MOV,无读写信号产生。 a.工作寄存器区 80C51单片机片内RAM低端的
00H~1FH共32B,分成4个工作寄存器组,每组占8个单元。
? 寄存器0组:地址00H~07H; ? 寄存器1组:地址08H~0FH; ? 寄存器2组:地址10H~17H; ? 寄存器3组:地址18H~1FH。 程序运行时,只能有一个工作寄存器组作为当前工作寄存器组;当前工作寄存器组的选择由特殊功能寄存器中得程序状态字寄存器PSW的RS1、RS0来决定。 b.位寻址区
内部RAM的20H~2FH共16个字节是位寻址区。其128位的地址范围是00H~7FH。 c.通用RAM区
位寻址区之后的30H~7FH共80个字节为通用RAM区。这些单元可以作为数据缓冲器使用。
实际应用中,常需在RAM区设置堆栈。80C51的堆栈一般设在30H~7FH的范围内,栈顶的位置由堆栈指针SP指示。复位时SP的初值为07H,在系统初始化时可以重新设置。
9.80C51单片机的特殊功能寄存器 a.程序状态字寄存器PSW,8位。含义如下:
? CY:进位、借位标志。有进位、
借位时CY=1,否则CY=0; ? AC:辅助进位、借位标志
? F0:用户标志位,由用户自己定义 ? RS1、RS0:当前工作寄存器组选择位 ? OV:溢出标志位。有溢出时OV=1,
否则0V=0 ? P:奇偶标志位。存于ACC中的运算结果有奇数个“1”时P=1,否则P=0。
10.P0口、P2口的结构
P0口作为分时复用的低8位地址/数据总线,P2口作为高8位地址总线。 a.P0口的结构
? P0用作通用I/O口
输出驱动级工作在需外接上拉电阻的漏极开路方式;
P0口在作为通用I/O口,属于准双向口。
? P0用作地址/数据总线 b.P2口的结构
P2口的输出驱动电路与P0口不同,内部设有上拉电阻。 ? P2用作通用I/O口
P2口在作为通用I/O口,属于准双向口。
? P2用作地址总线 11.P3口结构
a.P3用作第一功能的通用I/O口 b.P3用作第二功能使用
? 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(片外数据存储器“写”
选通控制输出);
? P3.7:RD(片外数据存储器“读”
选通控制输出)。
第三章 80C51的指令系统
1.80C51的寻址方式
表3.1 寻址方式所对应的寄存器和存储空间 序号 寻址方式 寄存器或存储空间 1 寄存器R0~R7,A、AB、DPTR和C寄存器寻址 (布尔累加器) 基2 直接寻址 片内RAM低128字节、SFR 本方片内RAM(@R0,@R1,SP) 3 寄存器间接寻址 式片外RAM(@R0,@R1,@DPTR) 4 5 6 7 立即寻址 ROM ROM(@A+DPTR,@A+PC) ROM(PC当前值的-128~+127字节) 可寻址位(内部RAM20H~2FH单元的位和部分SFR的位) 变址寻址 相对寻址 位寻址 扩展方式
2.特殊传送指令 编号 1 2 3 4 5 6 7 表3.3特殊传送指令 指令分类 指令 机器码字节 MOVC A,@A+DPTR 93H ROM查表 MOVC A,@A+PC 83H MOVX A,@DPTR E0H 读片外RAM MOVX A,@Ri E2H(~E3H) MOVX@DPTR,A F0H 写片外RAM MOVX@Ri,A F2H(~F3H) PUSH direct C0H 堆栈操作 机器周期数 2 2 2 2 2 2 2
8 POP direct direct D0H direct 2 ? 堆栈操作 在80C51单片机中,堆栈的生长方向是向上的。入栈操作时,先将SP+1,然后将指令指定的直接地址单元的内容存入SP指向的单元;出栈操作时,将SP指向的单元内容传送到指令指定的直接地址单元,然后SP-1。 系统复位时,SP的内容位07H。SP的值越小,堆栈深度越深。 PUSH direct:SP?(SP)?1,(SP)?(direct) POP direct:direct?((SP)),SP?(SP)?1
一般在中断、子程序调用时发生堆栈操作 ? MOV、MOVX、MOVC区别
MOV:单片机内部数据传递;MOVX:单片机与片外RAM和I/O口电路的数据传递;MOVC:ROM的查表 3.逻辑运算与循环类指令 逻辑与: 编号 指令分类 指令 1 ANL direct,A 2 ANL direct,#data 逻3 ANL A,Rn 辑4 ANL A,direct 与5 ANL A,@Ri 6 ANL A,#data 前两条把源操作数与直接地址指示内容相与; 后四条是把源操作数与累加器A的内容相与,送入A 逻辑或: 编号 指令分类 指令 1 ORL direct,A 2 ORL direct,#data 逻3 ORL A,Rn 辑4 ORL A,direct 或5 ORL A,@Ri 6 ORL A,#data 逻辑异或: 编号 指令分类 指令 1 XRL direct,A 2 XRL direct,#data 逻3 XRL A,Rn 辑异4 XRL A,direct 或5 XRL A,@Ri 6 XRL A,#data
共分享92篇相关文档