深度解析 C8051T600/1/2/3/4/5/6 微控制器:特性、应用与设计要点
在当今复杂多样的电子系统设计中,高性能、低功耗的微控制器是实现各种功能的核心。C8051T600/1/2/3/4/5/6 系列微控制器凭借其丰富的特性和出色的性能,成为了众多工程师的首选。今天,我们就一起来深入剖析这一系列微控制器,探讨其特性、应用场景以及设计过程中的关键要点。
文件下载:C8051T601-GS.pdf
一、器件概述
C8051T600/1/2/3/4/5/6 是一组高度集成的混合信号片上系统 MCU,具备多种强大的功能。它拥有高速流水线架构的 8051 兼容微控制器核心,最高可达 25 MIPS 的处理能力,能够快速高效地执行各种任务。同时,该系列器件支持片上全速、非侵入式调试接口,方便工程师进行代码开发和调试。此外,它还集成了 10 位 500 ksps 单端 ADC、模拟多路复用器、温度传感器、精密校准的 24.5 MHz 内部振荡器等丰富的外设,为设计提供了更多的可能性。
1.1 主要特性亮点
- 高性能核心:采用高速流水线架构的 8051 兼容核心,70%的指令可在 1 或 2 个系统时钟周期内执行,显著提高了指令执行效率。在 25 MHz 时钟频率下,可达到 25 MIPS 的峰值吞吐量。
- 丰富的外设资源:集成了多种模拟和数字外设,如 10 位 500 ksps ADC、三个 16 位通用定时器、可编程计数器阵列(PCA)、SMBus/I²C 接口和 UART 接口等,满足不同应用场景的需求。
- 低功耗设计:具备空闲和停止两种软件可编程电源管理模式,可根据实际需求灵活控制功耗。同时,可通过启用或禁用单个外设来进一步优化功耗。
- 安全可靠:提供安全选项,可通过 EPROM 中的安全字节锁定程序内存,防止未经授权的查看和修改。此外,还集成了 CRC 引擎,可对 EPROM 内容进行校验,确保代码的完整性。
1.2 产品选型
C8051T600/1/2/3/4/5/6 系列包含多个不同型号的产品,每个型号在功能和性能上可能存在一些差异,以满足不同用户的需求。在选型时,需要根据具体的应用场景,综合考虑 MIPS 峰值、OTP EPROM 容量、RAM 大小、是否具备校准内部振荡器、是否支持 SMBus/I²C 和 UART 接口、定时器数量、可编程计数器阵列等因素。例如,如果你需要处理大量数据和复杂任务,可选择 MIPS 峰值较高、EPROM 容量和 RAM 较大的型号;如果你对功耗要求较高,可选择支持低功耗模式的型号。
二、关键模块功能详解
2.1 10 位 ADC(仅 C8051T600/2/4)
ADC0 是一个 500 ksps、10 位逐次逼近寄存器(SAR)ADC,具备集成的跟踪保持功能、可编程增益级(1x 或 0.5x)和可编程窗口检测器。通过特殊功能寄存器,可对 ADC 进行完全软件配置,以测量各种不同的信号。其输出代码可根据 AD0LJST 位的设置进行右对齐或左对齐。此外,ADC 支持 8 位模式,可通过设置 ADC08BE 位来启用,该模式下可加快转换速度。
在启动转换方面,ADC0 提供了六种方式,可根据 ADC0CN 寄存器中的 ADC0 转换模式位(AD0CM2 - 0)进行编程选择。同时,还具备跟踪模式,可通过 AD0TM 位启用延迟转换,以满足不同应用场景的需求。需要注意的是,每次转换前需要一定的跟踪时间,以确保转换的准确性,该跟踪时间由串联阻抗、ADC 采样电容和所需的转换精度决定。
2.2 温度传感器(仅 C8051T600/2/4)
片上温度传感器可通过 ADC 多路复用器直接访问。在使用时,需将 ADC 多路复用器通道配置为连接到温度传感器。温度传感器的输出电压与温度呈线性关系,通过测量输出电压,结合其斜率和偏移参数,可计算出实际温度。
为了提高温度测量的准确性,建议进行偏移和/或增益校准。在生产测试过程中,会对每个器件进行单点偏移测量,测量结果存储在 TOFFH 和 TOFFL 寄存器中,这些寄存器代表了在 0 °C 时读取温度传感器并使用内部调节器作为电压参考时 ADC 的输出。
2.3 电压参考选项
ADC 的电压参考多路复用器可配置为使用外部连接的电压参考、未调节的电源电压(VDD)或调节后的 1.8 V 内部电源。通过 REF0CN 寄存器中的 REFSL 位可选择参考源,同时可通过 REGOVR 位覆盖该选择,使用内部调节器作为参考源。
在使用外部电压参考时,需将 VREF 引脚配置为模拟引脚,并通过数字交叉开关跳过该引脚,以确保参考电压的准确性。
2.4 比较器 0
C8051T600/1/2/3/4/5/6 系列器件集成了一个片上可编程电压比较器 Comparator0,具备可编程响应时间和滞后功能、模拟输入多路复用器以及两个可选输出(同步“锁存”输出 CP0 或异步“原始”输出 CP0A)。异步 CP0A 信号即使在系统时钟不活动时也可用,使得比较器在 STOP 模式下也能正常工作。
比较器的输入由比较器输入多路复用器选择,其响应时间可通过 CPT0MD 寄存器进行软件配置,滞后功能可通过 CPT0CN 寄存器进行编程设置。此外,比较器还可作为中断源或复位源使用,为系统设计提供了更多的灵活性。
2.5 CIP - 51 微控制器
CIP - 51 微控制器核心与 MCS - 51 指令集完全兼容,可使用标准的 803x/805x 汇编器和编译器进行软件开发。它采用流水线架构,大大提高了指令执行吞吐量,70%的指令可在一两个系统时钟周期内执行,最高可达 25 MIPS 的峰值吞吐量。
在指令集方面,CIP - 51 与标准 MCS - 51 指令集完全相同,但指令时序有所不同。所有指令时序均以时钟周期为单位进行指定,由于采用了流水线架构,大多数指令的执行时间与指令中的程序字节数相同。
2.6 存储器组织
CIP - 51 系统控制器的存储器组织与标准 8051 相似,分为程序存储器和数据存储器两个独立的空间。程序存储器为 64 kB 空间,不同型号的器件实现了不同容量的片上可字节编程 EPROM,用于存储程序代码。需要注意的是,部分地址空间(如 C8051T600/1 中的 0x1E00 - 0x1FFF)为工厂保留,不可用于用户程序存储。
数据存储器方面,C8051T600/1/2/3/4/5 器件包含 256 字节的 RAM,C8051T606 器件包含 128 字节的 RAM。这些 RAM 被映射到 8051 控制器核心的内部数据存储器空间,可通过直接或间接寻址方式进行访问。其中,0x00 - 0x7F 的 128 字节可用于通用寄存器和暂存存储器,可使用直接或间接寻址;C8051T600/1/2/3/4/5 中 0x80 - 0xFF 的上 128 字节只能通过间接寻址访问。
2.7 中断系统
C8051T600/1/2/3/4/5/6 包含一个扩展的中断系统,支持总共 12 个中断源,分为两个优先级级别。每个中断源都有一个或多个相关的中断挂起标志,位于特殊功能寄存器中。当外设或外部源满足有效中断条件时,相关的中断挂起标志将被置为逻辑 1。
中断可通过设置相关的中断使能位进行单独启用或禁用,但需要先通过设置 EA 位(IE.7)全局启用中断。部分中断挂起标志会在 CPU 向量到中断服务程序(ISR)时由硬件自动清除,而大多数标志需要在 ISR 返回前由软件手动清除,以避免新的中断请求产生。
2.8 电源管理模式
该系列器件具备两种软件可编程的电源管理模式:空闲模式和停止模式。在空闲模式下,CPU 停止工作,但外设和时钟保持活动状态,功耗取决于系统时钟频率和进入空闲模式前保持活动的外设数量。停止模式下,CPU 停止工作,所有中断和定时器(除丢失时钟检测器外)均不活动,内部振荡器停止运行,此时功耗最低。
通过设置 PCON 寄存器中的空闲模式选择位(PCON.0)和停止模式选择位(PCON.1),可分别进入空闲模式和停止模式。在空闲模式下,可通过使能的中断或复位来终止该模式;停止模式只能通过内部或外部复位来终止。
2.9 复位源
器件的复位电路可使其轻松进入预定义的默认状态。在进入复位状态时,CIP - 51 会停止程序执行,特殊功能寄存器(SFR)会被初始化为其定义的复位值,外部端口引脚会被强制到已知状态,中断和定时器会被禁用。
复位源包括上电复位、电源故障复位/VDD 监测、外部复位、丢失时钟检测器复位、比较器 0 复位、PCA 看门狗定时器复位、EPROM 错误复位和软件复位等。不同的复位源有不同的触发条件和操作方式,例如上电复位会在 VDD 稳定高于 VRST 后,经过一定延迟后释放复位状态;电源故障复位会在 VDD 下降到 VRST 以下时触发,当 VDD 恢复到 VRST 以上时,器件会退出复位状态。
2.10 EPROM 存储器
片上集成了电可编程只读存储器(EPROM),用于存储程序代码。可通过 C2 调试和编程接口对 EPROM 进行编程,每个地址只能编程一次。在编程和读取 EPROM 时,需要按照特定的步骤进行操作,如复位器件、设置程序模式、施加编程电压、写入或读取数据等。
为了保护程序代码的安全,器件提供了安全选项,可通过设置 EPROM 地址空间中的安全字节来锁定程序存储器,防止未经授权的读取和写入。此外,片上集成的 CRC 引擎可对 EPROM 内容进行校验,可进行 16 位 CRC 校验(针对 256 字节的块)或 32 位 CRC 校验(针对整个存储器空间)。
2.11 振荡器和时钟选择
器件包含一个可编程内部高频振荡器和一个外部振荡器驱动电路。系统时钟可以由内部振荡器或外部振荡器提供,可通过 OSCICN 寄存器中的 CLKSL 位进行选择。内部振荡器可通过 OSCICN 和 OSCICL 寄存器进行启用、禁用和校准,默认情况下,系统时钟由内部振荡器提供,并经过 8 分频。
外部振荡器电路可驱动外部电容或 RC 网络,也可使用 CMOS 时钟作为输入。在使用外部振荡器时,需将时钟源连接到 EXTCLK 引脚,并通过 OSCXCN 寄存器选择外部振荡器类型和设置频率控制位。
2.12 端口输入/输出
C8051T600/1/2/3/4/5 具有八个 I/O 引脚,C8051T606 具有六个 I/O 引脚,这些引脚可定义为通用 I/O(GPIO)、分配给内部数字资源或分配给模拟功能。通过优先级交叉开关解码器,可灵活地分配这些功能。
端口引脚可配置为模拟 I/O 或数字 I/O 模式,模拟输入引脚可减少功耗并隔离数字干扰,数字输入引脚可用于数字外设或外部数字事件捕获功能。输出模式可选择推挽或开漏,根据具体应用需求进行配置。
2.13 SMBus
SMBus 是一种两线、双向串行总线,符合 System Management Bus 规范版本 1.1,并与 I²C 串行总线兼容。可作为主设备和/或从设备进行通信,支持多主设备总线。在通信过程中,可实现字节级的串行数据传输、时钟信号生成、仲裁、超时/总线错误识别等功能。
在配置 SMBus 时,需要通过 SMB0CF 寄存器启用主设备和/或从设备模式、选择时钟源和设置时序及超时选项;通过 SMB0CN 寄存器控制接口并提供状态信息。在进行数据传输时,分为主设备写序列、主设备读序列、从设备写序列和从设备读序列四种模式,每种模式都有特定的操作流程和注意事项。
2.14 UART0
UART0 是一个异步、全双工串行端口,支持标准 8051 UART 的模式 1 和 3。具有增强的波特率支持,可通过多种时钟源生成标准波特率。接收数据可进行缓冲,允许在软件读取上一个数据字节之前开始接收下一个数据字节。
UART0 有 8 位和 9 位两种操作模式,可通过 SCON0 寄存器中的 S0MODE 位进行选择。在 9 位模式下,可用于多处理器通信,通过特殊使用第九位数据位来实现主处理器与从处理器之间的通信。
2.15 定时器
每个 MCU 包含三个计数器/定时器:两个 16 位计数器/定时器与标准 8051 中的类似,另一个 16 位自动重载定时器可用于 ADC、SMBus 或通用用途。这些定时器可用于测量时间间隔、计数外部事件和生成周期性中断请求。
定时器 0 和定时器 1 有四种主要操作模式:13 位计数器/定时器、16 位计数器/定时器、8 位计数器/定时器带自动重载和两个 8 位计数器/定时器(仅定时器 0)。定时器 2 提供 16 位和拆分 8 位定时器功能,可进行自动重载。定时器的时钟源可通过相关寄存器进行选择和配置,以满足不同的应用需求。
2.16 可编程计数器阵列(PCA)
可编程计数器阵列(PCA0)提供了增强的定时器功能,相比标准 8051 计数器/定时器,需要更少的 CPU 干预。它由一个专用的 16 位计数器/定时器和三个 16 位捕获/比较模块组成,每个模块都有自己的 I/O 线(CEXn),通过交叉开关路由到端口 I/O。
PCA 的计数器/定时器由可编程时基驱动,可选择六种不同的时钟源。每个捕获/比较模块可独立配置为六种操作模式之一:边缘触发捕获、软件定时器、高速输出、频率输出、8 位脉冲宽度调制器或 16 位脉冲宽度调制器。此外,PCA 模块 2 还可用作看门狗定时器(WDT),以防止软件在系统故障时失控。
2.17 C2 接口
C2 接口是一个片上两线调试接口,允许使用安装在最终应用中的生产部件进行 EPROM 编程和系统内调试。仅需使用两个引脚:双向数据信号(C2D)和时钟输入(C2CK)。通过 C2 接口,可访问多个特殊寄存器,用于执行 EPROM 编程、读取设备 ID 和修订 ID、控制设备状态等操作。
在实际应用中,C2 引脚可与用户功能共享,因为 C2 通信通常在设备处于暂停状态时进行,此时所有片上外设和用户软件都处于暂停状态,不会对通信产生干扰。但在进行调试功能时,可能需要外部电阻来隔离 C2 接口流量与用户应用,具体配置需根据实际应用情况进行调整。
三、设计要点与注意事项
3.1 电源管理设计
在设计使用 C8051T600/1/2/3/4/5/6 系列微控制器的系统时,电源管理至关重要。合理选择电源管理模式(空闲模式和停止模式)可以有效降低系统功耗。例如,在系统不需要实时处理数据时,可进入空闲模式或停止模式,以减少不必要的能量消耗。
此外,还需注意内部电压调节器的使用。如果使用外部调节器为器件供电,可将内部调节器置于旁路模式,但必须确保使用外部 1.8 V 调节器,否则可能会对器件造成永久性损坏。同时,可通过设置 REG0CN 寄存器中的 STOPCF 位,在停止模式下关闭调节器和内部电源网络,进一步节省电源。
3.2 时钟源选择与配置
时钟源的选择直接影响系统的性能和稳定性。内部高频振荡器具有快速启动和精度较高的特点,可作为默认的系统时钟源。但在某些对时钟精度要求极高的应用中,可能需要使用外部振荡器。
在使用外部振荡器时,需根据具体的应用场景选择合适的振荡器电路(如 RC 振荡器、电容振荡器或 CMOS 时钟),并正确配置 OSCXCN 寄存器中的相关位。同时,要确保端口引脚的配置正确,以避免干扰外部振荡器的正常工作。
3.3 端口引脚配置与使用
端口引脚的配置和使用
发布评论请先 登录
深度解析 C8051T600/1/2/3/4/5/6 微控制器:特性、应用与设计要点
评论