ZHCAC41 February 2023 TMS320F280025C
基于 CLB 的串行接口设计要求在(1. CLB 串行器和 CLB FIFO)以及(2. CLB FIFO 和 MCU RAM)之间移动数据。CLB 逻辑块中的 HLC 可以在串行器和 FIFO 之间移动数据。但是,HLC 无法在 FIFO 和 MCU RAM 之间直接移动数据,因为它不是 MCU 架构中的主器件。截至编写本应用手册时,C28x CPU 和 CLA 是唯一能够将数据移入和移出 CLB FIFO 的主器件,因此 DMA 不能用于此数据移动。
CPU 可以使用 CLB 本地写入接口总线直接加载计数器和 HLC 寄存器。这对于设置 CLB 逻辑块的初始状态很有用。例如,在GUID-06F5CC7A-786F-4C51-A4F0-1CE7ABF98DC3.html#GUID-06F5CC7A-786F-4C51-A4F0-1CE7ABF98DC3 中,使用 CLB 为照明应用中的 LED 驱动器实施定制通信总线,在启用 CLB TX 逻辑块进行发送之前,在计数器中加载发送字总数。以下代码显示了如何使用 C2000ware driverlib 函数执行此操作的示例。有关 CLB 本地写入接口总线的信息,请参阅器件特定的 TRM。
CLB_writeInterface(TX_TILE_BASE, CLB_ADDR_COUNTER_1_LOAD, 0xFFFFFFFF);
CLB_writeInterface(TX_TILE_BASE, CLB_ADDR_HLC_R2, 0x0);