【单片机原理与应用复习知识点】
一、单片机概述
1.1 单片机不仅是CPU,它实际上是一种微型计算机,集成了CPU、内存(包括RAM和ROM)、定时器/计数器以及多种I/O接口等核心组件。与传统计算机相比,单片机更加小巧、低功耗,常用于嵌入式系统。
1.2 MCS-51系列单片机基本芯片包括8051、8031、8052、8751等。它们之间的差异主要体现在内置RAM、ROM的大小、额外的I/O端口和附加功能上。例如,8031没有内部ROM,而8051和8052则具有内部ROM,且8052比8051多了一个串行通信口和额外的RAM空间。
二、51单片机的硬件结构
2.1 51单片机有40个引脚,其中16个引脚用于I/O口。
2.2 需要接上拉电阻的I/O口是P0,因为它是开漏输出,需要外接上拉电阻才能实现高电平输出。
2.3 P3口的第二功能包括输入/输出、中断请求、读写控制等,具体如P3.0~P3.3为RXD/TXD(串行通信),P3.4~P3.7为第二功能I/O。
2.4 PSEN是程序存储器选通信号,EA是外部访问允许,RST是复位,ALE是地址锁存使能。
2.5 通过观察P3.2(TXD)或P3.3(RXD)引脚的信号变化,可判断51单片机是否在进行串行通信,从而大致确认其工作状态。
2.6 中断入口地址通常为0003H、000BH、0013H、001BH、0023H。
2.7 RAM的位寻址区中,20H.1的位地址是21H,26H.0的位地址是27H。
2.8 PSW中的C是进位标志,OV是溢出标志,P是奇偶标志,分别用于判断运算过程中是否有进位、溢出和计算结果的奇偶性。
2.9 无符号数相加减时,用CY(进位标志)判断计算结果是否正确。
2.10 有符号数相加减时,使用OV(溢出标志)判断结果是否正确。
2.11 两个有符号数相加,当正数加上负数结果超出负数的最大范围时,或负数加上正数结果超出正数的最大范围时,OV=1。
2.12 A=62H(-94D)时,P=1;A=63(-93D)时,P=0。
2.13 RS1和RS0用于选择工作寄存器组,设置不同的寄存器组。
2.14 单片机复位后,R4对应的存储单元地址是04H。
2.15 机器周期是单片机执行一条指令所需的最短时间,与晶振频率成反比。若采用12MHz晶振,1个机器周期为1us。
2.16 51单片机的寻址方式包括立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、相对寻址等。例如,MOV A, #30H是立即寻址,MOV B, R1是寄存器寻址。
2.17 入栈指令PUSH将累加器A的内容压入堆栈,SP指针减1;出栈指令POP从堆栈弹出内容到累加器A,SP指针加1。
2.18 SP是堆栈指针,DPTR是数据指针,PC是程序计数器。其中SP和DPTR可以进行位寻址,而PC不行。
2.19 51单片机可以进行位寻址的特殊功能寄存器包括P0~P3、B、DPL、DPH、TH0、TH1、TL0、TL1、TMOD、TCON、SCON、IP、IE等。
2.20 51单片机共有21个特殊功能寄存器,实际占用16个物理空间。
三、MCS-51的指令系统
3.1 寻址方式与第二章重复,同2.16。
3.2 基址加变址寻址中,基址寄存器通常是DPTR或R0-R7,变址寄存器通常是R0或R1。
3.3 51指令系统最长执行时间为7个机器周期,最大字节数为3字节。
四、MCS-51汇编语言程序设计
4.1 用于程序设计的语言主要包括汇编语言和高级语言(如C语言)。汇编语言接近机器语言,效率高但编写复杂;高级语言可读性强,编程简便但执行效率相对较低。
4.2 程序示例:
(1) 初始化R1为40H,A为48H,然后A与43H相加,结果存回A,标志位C和OV根据计算结果更新。DA A指令用于修正BCD码,最后将结果存入R1。
(2) 八只发光二极管流水点亮程序,使用循环和延迟子程序,具体实现略。
4.3 将二进制数转换为十进制并分配到相应存储单元的程序略。
五、硬件资源
5.1 中断响应的条件包括:中断允许标志位打开,中断请求被提出,当前指令执行完毕。
5.2 51单片机串行口有四种工作模式,包括方式0(同步移位寄存器)、方式1(8位UART)、方式2(波特率可变的UART)和方式3(两线半双工UART)。
六、单片微机基本系统扩展
5.1 使用74LS138扩展1片6264数据存储器的具体硬件连接及地址范围配置略。
5.2 MCS-51系列单片机的最小系统包括电源、晶体振荡器、复位电路和单片机本身,无需扩展外部存储器。
以上内容涵盖了单片机的基本概念、51单片机的硬件结构、指令系统、程序设计以及硬件资源的利用,这些知识对于理解和应用单片机至关重要。