MSSP波特率发生器详解:I2C与SPI通信的核心
需积分: 46 151 浏览量
更新于2024-08-08
收藏 5.02MB PDF 举报
"波特率发生器在微控制器中的应用"
在微控制器,如PIC16F18324中,波特率发生器(BRG)是一个关键组件,尤其在进行串行通信协议如I2C和SPI时。该发生器用于生成正确的时钟速率,以确保数据在这些总线上的正确传输。MSSP(多串行同步外围接口)模块包含了波特率发生器,它通过SSP1ADD寄存器设置重载值来控制计数器的递减。
当向SSP1BUF寄存器写入数据时,波特率发生器自动启动,按照预设的SSP1ADD值开始计数。计数结束后,内部时钟停止,时钟引脚保持其最后状态。这个过程由图30-40所示的内部“重载”信号触发,SSP1ADD的值被加载到BRG计数器中,每经过一个模块时钟周期,这个过程会发生两次。重载信号的有效时间取决于MSSP当前的工作模式。
表30-4列出了不同指令周期下的时钟速率和加载到SSPADD的BRG值。公式30-1则给出了计算波特率的公式,其中FCLOCK是系统时钟频率,FOSC是振荡器频率,SSP1ADD是设定的重载值。需要注意的是,当用作I2C的波特率发生器时,SSP1ADD的值0x00、0x01和0x02是无效的,这是由于实现的限制。
PIC16F18324是一款具备模拟和数字外设、低功耗特性的单片机,适用于多种应用。它具有C编译器优化的RISC架构,48条指令集,可在高达32MHz的时钟频率下工作。该芯片还包括中断系统、16级深度硬件堆栈、多个定时器以及各种复位功能,如低电流上电复位(POR)、上电延时定时器(PWRT)和欠压复位(BOR)。
此外,它还提供了7KB的闪存程序存储器、512字节的数据SRAM和256字节的EEPROM。工作电压范围从1.8V到3.6V(对于PIC16LF18324/18344),或2.3V到5.5V(对于PIC16F18324/18344)。超低功耗特性使得它在休眠模式下能实现极低的电流消耗,如40nA的空闲模式电流和8μA的工作电流(在32kHz、1.8V条件下)。
为了进一步降低功耗,该微控制器提供了空闲模式、打盹模式和休眠模式,以及外设模块禁止(PMD)功能,可以关闭未使用的外设电源,减少不必要的能耗。数字外设包括可配置逻辑单元(Configurable Logic Cell, CLC)、比较器、PWM和通信接口等,增强了设计的灵活性和功能多样性。
波特率发生器是微控制器中实现串行通信的关键部分,而在PIC16F18324这样的芯片中,它与一系列低功耗和高效能的特性相结合,为各种应用提供了强大的支持。
2012-06-23 上传
2008-05-30 上传
2012-10-19 上传
2010-01-14 上传
2022-05-21 上传
2012-09-21 上传
点击了解资源详情
2015-08-18 上传
MICDEL
- 粉丝: 36
- 资源: 3946
最新资源
- 俄罗斯RTSD数据集实现交通标志实时检测
- 易语言开发的文件批量改名工具使用Ex_Dui美化界面
- 爱心援助动态网页教程:前端开发实战指南
- 复旦微电子数字电路课件4章同步时序电路详解
- Dylan Manley的编程投资组合登录页面设计介绍
- Python实现H3K4me3与H3K27ac表观遗传标记域长度分析
- 易语言开源播放器项目:简易界面与强大的音频支持
- 介绍rxtx2.2全系统环境下的Java版本使用
- ZStack-CC2530 半开源协议栈使用与安装指南
- 易语言实现的八斗平台与淘宝评论采集软件开发
- Christiano响应式网站项目设计与技术特点
- QT图形框架中QGraphicRectItem的插入与缩放技术
- 组合逻辑电路深入解析与习题教程
- Vue+ECharts实现中国地图3D展示与交互功能
- MiSTer_MAME_SCRIPTS:自动下载MAME与HBMAME脚本指南
- 前端技术精髓:构建响应式盆栽展示网站