第2讲 C8051F020单片机总体结构及CIP51内核
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CY AC F0 RS1 RS0 OV
PSW.0
P
▼CY(PSW.7)进位/借位标志位。若ACC在运算过程中
发生了进位或借位,则CY=1;否则=0。它也是布尔处理 器的位累加器,可用于布尔操作。
▼AC(PSW.6)半进位/借位标志位。若ACC在运算过程
中,D3位向D4位发生了进位或借位,则CY=1,否则=0。机 器在执行“DA A”指令时自动要判断这一位,我们可以暂 时不关心它。
2、系统复位源框图
3、上电复位/掉电复位
上电复位:在上电期间,器件保持在复位状态,/RST引脚被驱动到低电平,
直到VDD上升到超过VRST电平。从复位开始到退出复位状态要经过一个延时。
上电和VDD监视器复位时序
掉电复位:
当发生掉电或因电源波动导致VDD降到VRST以下时,电源监视器 将/RST引脚驱动为低电平并使CIP-51保持复位状态。当VDD又回到高 于VRST的电平时,CIP-51将退出复位状态。
高速微控制器内核
数字 IO
模拟外设
2.1.1 高速控制器内核
◆高速、流水线结构的8051 兼容的CIP-51 内核(可达 25MIPS) ◆64K 字节可在系统编程的FLASH 存储器 ◆4352(4096+256)字节的片内RAM
◆全速、非侵入式的在系统调试接口(片内)
◆时钟电路 ◆片内看门狗定时器、VDD 监视器
P1MDOUT:端口0输出方式寄存器
Байду номын сангаас
(6) 配置端口引脚的输入方式
通过设置输出方式为“漏极开路”并向端口数据寄存器中的相应 位写‘1’将端口引脚配置为数字输入。
例如:
设置P3MDOUT.7 为逻辑‘0’,并设置P3.7 为逻辑‘1’ 即可将P3.7 配置为数字输入。
(7) 配置端口1 的引脚为模拟输入(AIN.[7:0])
OV=1时特指累加器在进行带符号数(-128—+127)运算时出 错(超出范围);OV=0时未出错。
▼P (PSW.0)奇偶标志位。
P=1表示累加器中“1”的个数为奇数 P=0表示累加器中“1”的个数为偶数 CPU随时监视着ACC中的“1”的个数, 并反映在PSW中
2、控制器(Controller)
3、单片机的状态
2.2.2 C8051F单片机的复位系统
1、 复位状态
复位电路可以将控制器置于一个预定的状态——复位状态。 在进入复位状态时,将发生以下过程: ������ ������ CIP-51 CPU停止程序执行 特殊功能寄存器(SFR)被初始化为所定义的复位值
������
������
2.2.3 C8051F单片机的时钟系统
外部晶体振荡器使用注意
当外部晶体振荡器稳定运行时,晶体振荡器有效标志 (OSCXCN 寄存器中的XTLVLD)被硬件置‘1’。 XTLVLD 检测电路要求在使能振荡器工作和检测XTLVLD 之 间至少有1 ms的启动时间。(在外部振荡器稳定之前就切换 到外部振荡器可能导致不可预见的后果。)
运算器
控制器
1、以ALU为中心的运算器
运算器又称算术逻辑部件(ALU, Aithmctieal Logic Unit), 主要完成对数据的算术运算和逻辑运算。
运算器相关的寄存器: ACC — 累加器 B — 寄存器 TEMP—暂存器 PSW—程序状态字寄存器
PSW—程序状态字寄存器
PSW.7 PSW.6 PSW.5
4、 外部复位
外部/RST引脚提供了使用外部电路强制MCU进入复位状态的手段。在 /RST引脚上加一个低电平有效信号将导致MCU进入复位状态。尽管在内部有 弱上拉,但最好能提供一个外部上拉和/或对/RST引脚去耦以防止强噪声引起复 位。从外部复位状态退出后,PINRSF标志(RSTSRC.0)被置‘1’。
端口1 的引脚可以用作ADC1 模拟多路开关的模拟输入。通过向P1MDIN 寄存器中的对应位写‘0’即可将端口引脚配置为模拟输入。 缺省情况下端口引脚为数字输入方式。
注意:
被配置为模拟输入的引脚所对应的P1MDOUT 位应被设置为逻辑‘0’ (漏极开路方式),对应的端口数据位应被设置为逻辑‘1’(高阻态)。
地运行。
程序计数器PC:
▼它是16位的按机器周期自动增1计数器 ▼总指向下一条指令所在首地址(当前PC值) ▼一切分支/跳转/调用/中断/复位 等操作的本质就是:改 变 PC 值 指令寄存器IR:是用来存放当前正在执行的指令。 指令译码器ID:是对存放在IR中的指令操作码进行解释, 产生相应的控制信号。 数据指针DPTR:是一个16位的寄存器,可以用来寻址外 部数据存储空间,也可以寻址外部程序存储空间,寻址范 围是64KB 。
5、 内部复位
软件强制复位:向SWRSEF位写1 将强制产生一个上电复位。 时钟丢失检测器复位: 时钟丢失检测器实际上是由MCU 系统 时钟触发的单稳态电路。如果未收到系统 时钟的时间大于100 微秒,单稳态电路将 超时并产生一个复位。
比较器0复位:
比较器0 复位是低电平有效:如果同相端输入电压 (CP0+引脚)小于反相端输入电压(CP0-引脚),则MCU 被置于复位状态。
第 2 讲 C8051F020单片机总体结构
与CIP51内核
2.1 C8051F020单片机总体结构
C8051F系列 单片机是集成混 合信号片上系统 SOC(System on chip),是与 MCS-51内核及指 令集完全兼容的 微控制器,由原 来美国Cygnal 公 司设计与制造。
C8051F020原理框图
2.1.2 模拟外设
SAR ADC ������ 12 位(C8051F020/1) ������ ������ ±1LSB INL ������ 可编程转换速率,最大 100ksps ������ 可多达8 个外部输入;������ 可编程放大器增益:16、8、4、 2、1、0.5 ������ 数据相关窗口中断发生器 ������ 内置温度传感器(±3°C) − 8 位 ADC ������ 可编程转换速率,最大 500ksps ������ 8 个外部输入 ������ 可编程放大器增益:4、2、1、 0.5 − 两个12 位DAC ������ 可以同步输出,用于产生无 抖动波形 − 两个模拟比较器 − 电压基准
(1) I/O 端口结构
(2) I/O 端口直流电气特性
(3) 低端口功能结构
C8051F020的数字资源需要通过4 个低端I/O 端口才能使用。每个引脚既可 定义为通用的端口I/O(GPIO)引脚,又可以分配给一个数字外设或功能.
(4) 优先权交叉开关译码器 及交叉开关配置
优先权交叉开关译码器,为每个I/O功能分配优先权,从优先权最 高的UART0开始。当一个数字资源被选择时,尚未分配的端口引脚中 的最低位被分配给该资源
外部端口引脚被置于一个已知状态
中断和定时器被禁止 端口I/O锁存器的复位值为0xFF(全部为逻辑‘1’),外部I/O引
脚处于高电平状态。复位之后弱上拉被使能。
在退出复位状态时:
程序计数器(PC)被复位,PC=0000H; CIP-51使用内部振荡器作为默认的系统时钟,约为2MHz; 看门狗定时器被使能,用系统时钟的12分频作为其时钟源; 程序从地址0x0000开始执行。
RS1,RS0 = 1 0 则选择了工作寄存器组 2 区 R0~R7分
别代表10H ~17H单元。
RS1,RS0 = 1 1 则选择了工作寄存器组 3 区R0~R7
分别代表18H ~1FH单元。
PSW.7 PSW.6 PSW.5
CY AC F0 RS1 RS0 OV
PSW.0
P
▼OV (PSW.2)溢出标志位。
交叉开关寄存器被正确配置后,通过将XBARE(XBR2.6) 设置为逻辑‘1’来使能交叉开关。
(5) 配置端口引脚的输出方式
每个端口引脚的输出方式都可被配置为漏极开路或推挽方式, 缺省状态为漏极开路。 端口0-3 引脚的输出方式由PnMDOUT 寄存器中的对应位决定。 例如:
P3MDOUT.7 为逻辑‘1’时将P3.7 配置为推挽方式; P3MDOUT.7为逻辑‘0’时将P3.7 配置为漏极开路方式。
2.1.3 数字外设
2.1.4 芯片的极限参数
2.2 C8051F单片机内核结构
2.2.1 C8051F单片机CPU结构 2.2.2 C8051F单片机的复位系统 2.2.3 C8051F单片机的时钟系统
2.2.1 C8051F单片机CPU结构
CPU(Central Processing Unit)是计算机的核心部件, 它由运算器和控制 器组成,还包括一些特殊功能寄存器完成计算机的运算和控制功能。
优 先 权 高
由低位端口开始分配
------------------------------
优 先 权 低
寄存器XBR0、XBR1 和XBR2用于为数字I/O资源分配物理I/O引脚。
XBR0:端口I/O交叉开关寄存器0
XBR1:端口I/O交叉开关寄存器1
XBR2:端口I/O交叉开关寄存器2
▼F0 (PSW.5)可由用户定义的标志位。
PSW.7 PSW.6 PSW.5
CY AC F0 RS1 RS0 OV
PSW.0
P
RS1,RS0 = 0 0 则选择了工作寄存器组 0 区R0~R7分
别代表00H ~07H单元。
RS1,RS0 = 0 1 则选择了工作寄存器组 1 区R0~R7分
别代表08H ~0FH单元。
5.2.5 单片机的初始化设置
单片机进行初始化,包括以下几点:
看门狗初始化-开启还是禁止、如果开启则喂狗周期为多少;
时钟系统的初始化-确定系统的工作时钟源及频率; I/O引脚输入输出方式初始化-输入:模拟还是数字、输出:推挽还是开漏; 数字外设的配置和交叉开关设置;
操作方法: 向C0RSEF 标志(RSTSRC.5)写‘1’可以将比较器0 配置为复位源。应在写 C0RSEF之前用CPT0CN.7使能比较器0,以防止通电瞬间在输出端产生抖动, 从而产生不希望的复位
看门狗定时器复位:
MCU 内部有一个使用系统时钟的可编程看门狗定时器(WDT)。
当看门狗定时器溢出时,WDT 将强制CPU 进入复位状态。
建议的过程为:
1. 使能外部振荡器 2. 等待至少1ms 3. 查询XTLVLD => ’1’ 4. 将系统时钟切换到外部振荡器
5.2.4 I/O端口和交叉开关特点及配置
C8051F020有按8 位端口组织的64 个数字I/O 引脚。 低端口(P0、P1、P2 和P3)既可以按位寻址也可以 按字节寻址。 高端口(P4、P5、P6 和P7)只能按字节寻址。 所有引脚都耐5V 电压,都可以被配置为: 漏极开路或 推挽输出方式和弱上拉。
控制器(Controller)主要包括定时和控制逻辑、指令 寄存器、译码器、地址指针DPTR和程序计数器PC等。
控制器是整个计算机 的指挥中心, 它负责从内 部存储器中取出指令并对 指令进行分析、判断, 并 根据指令发出控制信号, 使计算机的有关部件及设 备有条不紊地协调工作, 保证计算机能自动、连续
PSW.0
P
▼CY(PSW.7)进位/借位标志位。若ACC在运算过程中
发生了进位或借位,则CY=1;否则=0。它也是布尔处理 器的位累加器,可用于布尔操作。
▼AC(PSW.6)半进位/借位标志位。若ACC在运算过程
中,D3位向D4位发生了进位或借位,则CY=1,否则=0。机 器在执行“DA A”指令时自动要判断这一位,我们可以暂 时不关心它。
2、系统复位源框图
3、上电复位/掉电复位
上电复位:在上电期间,器件保持在复位状态,/RST引脚被驱动到低电平,
直到VDD上升到超过VRST电平。从复位开始到退出复位状态要经过一个延时。
上电和VDD监视器复位时序
掉电复位:
当发生掉电或因电源波动导致VDD降到VRST以下时,电源监视器 将/RST引脚驱动为低电平并使CIP-51保持复位状态。当VDD又回到高 于VRST的电平时,CIP-51将退出复位状态。
高速微控制器内核
数字 IO
模拟外设
2.1.1 高速控制器内核
◆高速、流水线结构的8051 兼容的CIP-51 内核(可达 25MIPS) ◆64K 字节可在系统编程的FLASH 存储器 ◆4352(4096+256)字节的片内RAM
◆全速、非侵入式的在系统调试接口(片内)
◆时钟电路 ◆片内看门狗定时器、VDD 监视器
P1MDOUT:端口0输出方式寄存器
Байду номын сангаас
(6) 配置端口引脚的输入方式
通过设置输出方式为“漏极开路”并向端口数据寄存器中的相应 位写‘1’将端口引脚配置为数字输入。
例如:
设置P3MDOUT.7 为逻辑‘0’,并设置P3.7 为逻辑‘1’ 即可将P3.7 配置为数字输入。
(7) 配置端口1 的引脚为模拟输入(AIN.[7:0])
OV=1时特指累加器在进行带符号数(-128—+127)运算时出 错(超出范围);OV=0时未出错。
▼P (PSW.0)奇偶标志位。
P=1表示累加器中“1”的个数为奇数 P=0表示累加器中“1”的个数为偶数 CPU随时监视着ACC中的“1”的个数, 并反映在PSW中
2、控制器(Controller)
3、单片机的状态
2.2.2 C8051F单片机的复位系统
1、 复位状态
复位电路可以将控制器置于一个预定的状态——复位状态。 在进入复位状态时,将发生以下过程: ������ ������ CIP-51 CPU停止程序执行 特殊功能寄存器(SFR)被初始化为所定义的复位值
������
������
2.2.3 C8051F单片机的时钟系统
外部晶体振荡器使用注意
当外部晶体振荡器稳定运行时,晶体振荡器有效标志 (OSCXCN 寄存器中的XTLVLD)被硬件置‘1’。 XTLVLD 检测电路要求在使能振荡器工作和检测XTLVLD 之 间至少有1 ms的启动时间。(在外部振荡器稳定之前就切换 到外部振荡器可能导致不可预见的后果。)
运算器
控制器
1、以ALU为中心的运算器
运算器又称算术逻辑部件(ALU, Aithmctieal Logic Unit), 主要完成对数据的算术运算和逻辑运算。
运算器相关的寄存器: ACC — 累加器 B — 寄存器 TEMP—暂存器 PSW—程序状态字寄存器
PSW—程序状态字寄存器
PSW.7 PSW.6 PSW.5
4、 外部复位
外部/RST引脚提供了使用外部电路强制MCU进入复位状态的手段。在 /RST引脚上加一个低电平有效信号将导致MCU进入复位状态。尽管在内部有 弱上拉,但最好能提供一个外部上拉和/或对/RST引脚去耦以防止强噪声引起复 位。从外部复位状态退出后,PINRSF标志(RSTSRC.0)被置‘1’。
端口1 的引脚可以用作ADC1 模拟多路开关的模拟输入。通过向P1MDIN 寄存器中的对应位写‘0’即可将端口引脚配置为模拟输入。 缺省情况下端口引脚为数字输入方式。
注意:
被配置为模拟输入的引脚所对应的P1MDOUT 位应被设置为逻辑‘0’ (漏极开路方式),对应的端口数据位应被设置为逻辑‘1’(高阻态)。
地运行。
程序计数器PC:
▼它是16位的按机器周期自动增1计数器 ▼总指向下一条指令所在首地址(当前PC值) ▼一切分支/跳转/调用/中断/复位 等操作的本质就是:改 变 PC 值 指令寄存器IR:是用来存放当前正在执行的指令。 指令译码器ID:是对存放在IR中的指令操作码进行解释, 产生相应的控制信号。 数据指针DPTR:是一个16位的寄存器,可以用来寻址外 部数据存储空间,也可以寻址外部程序存储空间,寻址范 围是64KB 。
5、 内部复位
软件强制复位:向SWRSEF位写1 将强制产生一个上电复位。 时钟丢失检测器复位: 时钟丢失检测器实际上是由MCU 系统 时钟触发的单稳态电路。如果未收到系统 时钟的时间大于100 微秒,单稳态电路将 超时并产生一个复位。
比较器0复位:
比较器0 复位是低电平有效:如果同相端输入电压 (CP0+引脚)小于反相端输入电压(CP0-引脚),则MCU 被置于复位状态。
第 2 讲 C8051F020单片机总体结构
与CIP51内核
2.1 C8051F020单片机总体结构
C8051F系列 单片机是集成混 合信号片上系统 SOC(System on chip),是与 MCS-51内核及指 令集完全兼容的 微控制器,由原 来美国Cygnal 公 司设计与制造。
C8051F020原理框图
2.1.2 模拟外设
SAR ADC ������ 12 位(C8051F020/1) ������ ������ ±1LSB INL ������ 可编程转换速率,最大 100ksps ������ 可多达8 个外部输入;������ 可编程放大器增益:16、8、4、 2、1、0.5 ������ 数据相关窗口中断发生器 ������ 内置温度传感器(±3°C) − 8 位 ADC ������ 可编程转换速率,最大 500ksps ������ 8 个外部输入 ������ 可编程放大器增益:4、2、1、 0.5 − 两个12 位DAC ������ 可以同步输出,用于产生无 抖动波形 − 两个模拟比较器 − 电压基准
(1) I/O 端口结构
(2) I/O 端口直流电气特性
(3) 低端口功能结构
C8051F020的数字资源需要通过4 个低端I/O 端口才能使用。每个引脚既可 定义为通用的端口I/O(GPIO)引脚,又可以分配给一个数字外设或功能.
(4) 优先权交叉开关译码器 及交叉开关配置
优先权交叉开关译码器,为每个I/O功能分配优先权,从优先权最 高的UART0开始。当一个数字资源被选择时,尚未分配的端口引脚中 的最低位被分配给该资源
外部端口引脚被置于一个已知状态
中断和定时器被禁止 端口I/O锁存器的复位值为0xFF(全部为逻辑‘1’),外部I/O引
脚处于高电平状态。复位之后弱上拉被使能。
在退出复位状态时:
程序计数器(PC)被复位,PC=0000H; CIP-51使用内部振荡器作为默认的系统时钟,约为2MHz; 看门狗定时器被使能,用系统时钟的12分频作为其时钟源; 程序从地址0x0000开始执行。
RS1,RS0 = 1 0 则选择了工作寄存器组 2 区 R0~R7分
别代表10H ~17H单元。
RS1,RS0 = 1 1 则选择了工作寄存器组 3 区R0~R7
分别代表18H ~1FH单元。
PSW.7 PSW.6 PSW.5
CY AC F0 RS1 RS0 OV
PSW.0
P
▼OV (PSW.2)溢出标志位。
交叉开关寄存器被正确配置后,通过将XBARE(XBR2.6) 设置为逻辑‘1’来使能交叉开关。
(5) 配置端口引脚的输出方式
每个端口引脚的输出方式都可被配置为漏极开路或推挽方式, 缺省状态为漏极开路。 端口0-3 引脚的输出方式由PnMDOUT 寄存器中的对应位决定。 例如:
P3MDOUT.7 为逻辑‘1’时将P3.7 配置为推挽方式; P3MDOUT.7为逻辑‘0’时将P3.7 配置为漏极开路方式。
2.1.3 数字外设
2.1.4 芯片的极限参数
2.2 C8051F单片机内核结构
2.2.1 C8051F单片机CPU结构 2.2.2 C8051F单片机的复位系统 2.2.3 C8051F单片机的时钟系统
2.2.1 C8051F单片机CPU结构
CPU(Central Processing Unit)是计算机的核心部件, 它由运算器和控制 器组成,还包括一些特殊功能寄存器完成计算机的运算和控制功能。
优 先 权 高
由低位端口开始分配
------------------------------
优 先 权 低
寄存器XBR0、XBR1 和XBR2用于为数字I/O资源分配物理I/O引脚。
XBR0:端口I/O交叉开关寄存器0
XBR1:端口I/O交叉开关寄存器1
XBR2:端口I/O交叉开关寄存器2
▼F0 (PSW.5)可由用户定义的标志位。
PSW.7 PSW.6 PSW.5
CY AC F0 RS1 RS0 OV
PSW.0
P
RS1,RS0 = 0 0 则选择了工作寄存器组 0 区R0~R7分
别代表00H ~07H单元。
RS1,RS0 = 0 1 则选择了工作寄存器组 1 区R0~R7分
别代表08H ~0FH单元。
5.2.5 单片机的初始化设置
单片机进行初始化,包括以下几点:
看门狗初始化-开启还是禁止、如果开启则喂狗周期为多少;
时钟系统的初始化-确定系统的工作时钟源及频率; I/O引脚输入输出方式初始化-输入:模拟还是数字、输出:推挽还是开漏; 数字外设的配置和交叉开关设置;
操作方法: 向C0RSEF 标志(RSTSRC.5)写‘1’可以将比较器0 配置为复位源。应在写 C0RSEF之前用CPT0CN.7使能比较器0,以防止通电瞬间在输出端产生抖动, 从而产生不希望的复位
看门狗定时器复位:
MCU 内部有一个使用系统时钟的可编程看门狗定时器(WDT)。
当看门狗定时器溢出时,WDT 将强制CPU 进入复位状态。
建议的过程为:
1. 使能外部振荡器 2. 等待至少1ms 3. 查询XTLVLD => ’1’ 4. 将系统时钟切换到外部振荡器
5.2.4 I/O端口和交叉开关特点及配置
C8051F020有按8 位端口组织的64 个数字I/O 引脚。 低端口(P0、P1、P2 和P3)既可以按位寻址也可以 按字节寻址。 高端口(P4、P5、P6 和P7)只能按字节寻址。 所有引脚都耐5V 电压,都可以被配置为: 漏极开路或 推挽输出方式和弱上拉。
控制器(Controller)主要包括定时和控制逻辑、指令 寄存器、译码器、地址指针DPTR和程序计数器PC等。
控制器是整个计算机 的指挥中心, 它负责从内 部存储器中取出指令并对 指令进行分析、判断, 并 根据指令发出控制信号, 使计算机的有关部件及设 备有条不紊地协调工作, 保证计算机能自动、连续