此参考设计可通过将 3.3V 和 GND 连接到板连接器 J8 来供电。
MSPM0G1106 器件为运行计量库提供极少的资源,并具有连接独立 ADC 和 PC GUI 所需的外设。
所需的 MCU 外设模块为:
- 使用外部 XTAL 的 HF 时钟子系统
- 具有 DMA 的 SPI(独立 ADC 与 MSPM0 MCU 之间的数据传输)
- 用于外部 SPI 闪存器件的 SPI
- 具有 DMA 的 UART(外部 PC GUI 和 MSPM0 MCU 之间的传输数据,以读取校准和计量值)
- GPIO(具有中断的输入或用于 LED 和 ADC 控制的输出)
- 适用于 TMAG5273 接口的 I2C
- RTC(日历模式基于内部 LFOSC 的 32.768kHz 频率)
上述所有外设或 MCU 模块均通过 MSPM0-SDK 中间件中的 TIDA-010944.syscfg
文件进行配置,同时使用图形 SysConfig 工具,该工具可通过 GUI 界面实现直观的 MCU 配置更改。
- M0+ 时钟方案源自外部 16.384MHz XTAL,外部 XTAL 馈送至 PLL 模块,它乘以和除以特定因数,得出 79.87MHz 的 MCLK 频率(CPU 时钟速度)。同一外部 16.384MHz XTAL 除以 2 并输出到具有高驱动能力的 GPIO 引脚,以创建 M0_CLKOUT 的 8.192MHz 输出频率。
- 两个 ADC 共享 SPI 总线,MCU 具有一个 SPI 控制器,该控制器具有两条单独的 CS(片选)线路,每条线路连接一个 ADC。SPI 总线以 19.968 或 13,312MHz 数据速率运行,提供 DMA 支持,使用两个通道,一个通道用于发送,一个通道用于接收。SPI PICO 和 POCI 数据线路是共享的,因为这些线路是按顺序驱动的,一次只有一条 CS 线路处于活动状态。来自 M0+ MCU SPI 外设的 SPI 时钟连接到两个 ADC。
- MSPM0G1106 配置为通过非隔离式 UART 连接以最大 115,200 波特和 8N1 与 PC GUI 进行通信。UART 驱动程序支持具有最小 MCU 中断负载的双向传输(使用两个 DMA 通道,一个用于发送,一个用于接收)。
- 两条 DRDY 线路(每个 ADC 各一条)连接到 MSPM0+ MCU 的两个 GPIO 输入,在下降沿启用中断。需要三个 MCU GPIO 输出:SYNC_RESET 线路用于同时触发所有 ADC(由所有 ADC 共享),以及 ACT 和 REACT 输出。这些脉冲输出用于通过计量中间件计算的有功和无功电能,并通过使用读取脉冲的外部测试系统来测量 TIDA-01044 的精度。
- 使用 I2C 接口连接 TMAG5273 3D 霍尔传感器器件,并将 MCU 用作 I2C 发送器。
- RTC 模块支持日历模式,这是电表的常见要求。M0+ MCU 内部 32.768kHz LFOSC 用作器件辅助时钟 (RTCCLK) 的时钟源。
- 由于两个 ADC 都需要有一个同步时钟,因此将 CLKIN 信号连接到 8.192MHz M0_CLKOUT 输出引脚。