1.4.7 嵌入式 FLASH 接口(EFM) FLASH 接口通过 AHB I-CODE 和 D-CODE 对 FLASH 访问,可对 FLASH 执行编程、擦除和全擦除操作;通过指令提取和缓存机制加速代码执行。 主要特性: ? 512KByte FLASH 空间 ? I-CODE 总线 16Byte 预取值 ? I-CODE 和 D-CODE 总线上的共享 64 个缓存(1Kbyte) ? 提供 960Bbyte 一次性编程区域(OTP) ? 支持低功耗读取操作 ? 支持指导交换功能 ? 支持安全保护和数据加密*1 *1:关于 Flash 具体规格的安全保护和数据加密,请咨询销售窗口 1.4.8 内置 SRAM(SRAM) 本产品带有 4KB 保持掉电模式 SRAM ( Ret_SRAM ) 和 188KB 系 统 SRAM (SRAMH/SRAM1/ SRAM2/SRAM3)。SRAM 可按字节、半字(16 或全字(32 位)访问。读写操作以 CPU 速度执行,可插入等待周期。Ret_SRAM 可在 Power down 模式下提供 4KB 数据保持空间。SRAM3 带有 ECC 校验(Error Checking and Correcting),ECC 校验为纠一检二码,即可以纠正一位错误,检查两位错误;SRAMH/SRAM1/SRAM2/Ret_SRAM 奇偶校验(Even-parity check),每个字节数据都有一个验证位。 1.4.9 通用 IO(GPIO) GPIO 主要特性: ? 每组 Port 配有 16 个 I/O Pin,根据实际配置可能不足 16 个 ? 支持上拉 ? 支持推拉、开漏输出模式 ? 支持高、中、低驱动模式 ? 支持外部中断输入 ? 支持 I/O pin 复用周边功能,每一个 I/O pin 最多 16 可选复用功能,部分 I/O 多达 64 个功能可选 ? 各个 I/O pin 可独立编程 ? 各个 I/O pin 可以选择 2 同时有效(不支持) 2 输出功能同时有效) 1.4.10 中断控制(INTC) 中断控制器(INTC)选择中断事件请求作为中断输入的功能 NVIC,唤醒 WFI; 唤醒事件输入 WFE。选择中断事件请求作为低功耗模式(休眠模式和停止模式)的唤醒条件;外管脚 NMI 和 EIRQ 中断控制功能;软件中断的中断/事件选择功能。 主要规格:
- NVIC 中断向量:实际使用中断向量请参考用户手册 Cortex?-M4F 的 每个中断向量可根据中断选择寄存器,选择相应的外设中断事件请求。更多关于异常和 NVIC 请参考编程说明《ARM Cortex?-M4F 技术参考手册 中的第 5 章:异常和第 8 章:嵌套向量中断控制器。
- 可编程优先级:16 可编程优先级(使用 4 位中断优先级)。
- 不能屏蔽中断:除 NMI 除了管脚作为不可阻挡的中断源外,还可以独立选择各种系统中断事件请求作为不可阻挡的中断,每个中断事件请求都配备了独立的使量选择、悬挂和清除悬挂存储器。
- 配备 16 外管脚中断。
- 配置各种外设中断事件请求,请参考中断事件请求序列表。
- 配备 32 软件中断事件请求。
- 中断可唤醒系统的休眠模式和停止模式。 1.4.11 键盘扫描(KEYSCAN) KEYSCAN 模块支持键盘行列扫描,与外部中断 IRQ 组合可以实现按键识别功能,可以支持 16*8 键盘阵列。 1.4.12 储存保护单元(MPU) MPU 通过防止非授权访问,可以提供对存储器的保护,提高系统的安全性。 本产品为主机内置了四个内置产品 MPU 单位和针对性 IP 的 MPU 单元。其中 ARM MPU 提供 CPU 对全部 4G 控制地址空间的访问权限。DMA MPU(DMPU)提供 DMA_1/DMA_2/USB FS DMA 对全部 4G 读写访问权限控制地址空间。访问禁止空间时,可以设置 MPU 动作无视/总线错误/无屏蔽中断/复位。IP MPU 当系统提供非特权模式时,对系统进行非特权模式 IP 和安全相关 IP 访问权限控制。。 1.4.13 DMA 控制器(DMA) DMA 用于在存储器和外围功能模块之间传输数据 CPU 存储器、存储器和外围功能模块之间的数据交换不参与。 ? DMA 总线独立于 CPU 总线,按照 AMBA AHB-Lite 协议传输总线 ? 拥有 8 个独立通道(DMA_1 和 DMA_2 各 4 通道),可独立操作不同的通道 DMA传输功能 ? 通过独立触发源选择寄存器配置各通道的启动请求源 ? 每次请求传输一个数据块 ? 数据块小至 1 最多可以是个数据 1024 个数据 ? 每个数据可以配置为 8bit,16bit 或 32bit ? 可以配置 65535 次传输 ? 源地址和目标地址可独立配置为固定、自增、自减、循环或指定偏移 3 种子中断、块传输中断、传输中断和传输错误中断。每个中断都可以配置是否屏蔽。块传输完成后,传输完成可作为事件输出和其他具有硬件触发功能的外围模块的触发源输入 ? 支持连锁传输功能,可实现多个数据块的一次请求传输 ? 支持外部事件触发通道重置 ? 不使用时可设置进入模块停止状态,以降低功耗 1.4.14 电压比较器(CMP) CMP 是两个模拟电压 INP 和 INM 进行比较,并输出比较结果的外设模块。CMP 共有 3 模拟每个比较通道的独立比较通道的电压 INP 和 INM 均有 4 个输入源。使用时可选择一个 INP 与一个 INM 单一比较也可以是多个 INP 与同一个 INM扫描比较。比较结果可以通过寄存器读取,也可以输出到外管脚,也可以产生中断和事件。 1.4.15 模数转换器(ADC) 12 位 ADC 它是一种模拟数字转换器,采用一次接近的方式。它拥有 16 可转换外端口和内部模拟信号的模拟输入通道。这些通道可以组合成一个序列进行逐次扫描和转换,序列可以单次或连续扫描。支持连续多次转换任何指定通道,平均转换结果。ADC 模块还配备了模拟看门狗功能,监控任何指定通道的转换结果,检测是否超过用户设定的阀值。 ADC 主要特性 ? 高性能 – 可配置 12 位、10 位和 8 位分辨率 – 周边时钟 PCLK4 和 A/D 转换时钟 ADCLK 可选择的频率比: ? PCLK4:ADCLK=1:1,2:1,4:1,8:1,1:2 ? ADCLK 可选系统时钟 HCLK 异步的 PLL,此时 PCLK4 与 ADCLK 的时 钟源同时固定 PLL,且频率比为 1:1原分频设置无效 – 2MSPS(PCLK4=ADCLK=60MHz, 12 位,采样 17 周期) – 独立编程各通道采样时间 – 各渠道独立数据寄存器 – 数据寄存器可以配置数据对齐 – 连续多次转换平均功能 – 模拟看门狗,监视转换结果 – 不使用时可以使用 ADC 模块设置为停止状态模拟输入通道 – 16 外部模拟输入通道 – 1 内部基准电压转换的开始条件 – 软件设置转换开始 – 周边外设同步触发转换开始 – 外引脚触发转换开始转换模式 – 2 个扫描序列 A、B,可任意指定单个或多个通道 – 序列 A 单次扫描 – 序列 A 连续扫描 – 扫描双序列,序列 A、B 触发源的独立选择,序列 B 优先级高于 A – 同步模式(适用于具有两个或三个 ADC 设备)中断和事件信号输出 – 序列 A 中断扫描结束 EOCA_INT 和事件 EOCA_EVENT – 序列 B 中断扫描结束 EOCB_INT 和事件 EOCB_EVENT – 模拟门狗通道比较中断 CHCMP_INT 和事件 CHCMP_EVENT,序列中断 SEQCMP_INT 和事件 SEQCMP_EVENT – 上述 4 所有事件都可以启动 DMA 1.4.16 温度传感器(OTS) OTS 为了支持系统的可靠性操作,可以获得芯片内部的温度。使用软件或硬件触发启动温度测量,OTS 通过计算公式提供一组与温度相关的数字来计算温度值。