ZHCUAN6E October 2022 – May 2025 MSPM0L1105 , MSPM0L1106 , MSPM0L1116 , MSPM0L1117 , MSPM0L1227 , MSPM0L1227-Q1 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346 , MSPM0L2227 , MSPM0L2227-Q1 , MSPM0L2228 , MSPM0L2228-Q1
控制位 CTL1.MSB 定义了数据输入和输出的方向,最高有效位 (MSB) 或最低有效位 (LSB) 在前。如果启用奇偶校验,则奇偶校验位始终作为最后一个位接收。
使用控制寄存器位 CTL0.DSS 时,每次传输的位长度将定义为 4-16 位(对于控制器模式)和 7-16 位(对于外设模式)。
写入 TX 缓冲区寄存器将触发传输。数据写入至少需要提供传输的位数。例如,如果仅将一个字节写入 TX 缓冲区但传输的长度大于 8,则丢失的位将用 0 填充。在接收路径上,接收到 CTL0.DSS 寄存器中定义的位数后,接收到的数据将移至 RXFIFO 或 RX 缓冲区。
访问 RX 和 TX 缓冲区时,位数应至少能够覆盖一次传输。时钟极性 (CTL0.SPO) 用于控制不传输数据时的时钟极性,仅在 Motorola SPI 帧模式下使用。
可以将 SPI 配置为在外设模式下工作,CTL1.MS 位 = 0。在外设模式下,时钟由控制器提供,并可用于 CLK 引脚上的外设(需要针对输入进行配置)。不使用时钟选择和分频器控制位。CS 输入信号用于在 4 线制模式下选择/启用外设的数据接收路径。
SPI 可配置为用作控制器,CTL1.MS 位 = 1。在控制器模式下,需要通过使用时钟选择位选择可用的时钟源来生成时钟。还需要根据所选协议控制 CS 信号。
设置 CTL1.PEN 位时,最后一位将用作奇偶校验,以评估先前位的完整性。CTL1.PES 位选择奇偶校验模式为偶数或奇数。检测到故障时,设置中断标志 RIS.PER 以将数据标记为无效。奇偶校验特性旨在提高通信稳健性。