ZHCA963 August 2019 TMS320F280040-Q1 , TMS320F280040C-Q1 , TMS320F280041 , TMS320F280041-Q1 , TMS320F280041C , TMS320F280041C-Q1 , TMS320F280045 , TMS320F280048-Q1 , TMS320F280048C-Q1 , TMS320F280049 , TMS320F280049-Q1 , TMS320F280049C , TMS320F280049C-Q1 , TMS320F28374D , TMS320F28375D , TMS320F28376D , TMS320F28377D , TMS320F28377D-EP , TMS320F28377D-Q1 , TMS320F28378D , TMS320F28379D , TMS320F28379D-Q1
要将信号从 GPIO 导入到 CLB(BOUNDARY INz,其中的 z 是 0 到 7 的任意数字),必须配置输入 X-BAR 和 CLB X-BAR。将信号从 GPIO 导入到 CLB 时,需要执行的步骤包括:
Figure 16 显示了如何从全局输入、局部输入或 GPREG 位中选择 CLB BOUNDARY 输入。
以下代码片段展示了如何使用器件驱动程序库来完成上述步骤。
//
// Configure GPIO4 for Button
//
GPIO_setPinConfig(GPIO_4_GPIO4);
GPIO_setDirectionMode(4, GPIO_DIR_MODE_IN);
GPIO_setPadConfig(4, GPIO_PIN_TYPE_PULLUP);
//
// Configure Input-XBAR INPUT1 to GPIO4
//
XBAR_setInputPin(XBAR_INPUT1, 4);
//
// Configure CLB-XBAR AUXSIG0 as INPUT1
//
XBAR_setCLBMuxConfig(XBAR_AUXSIG0, XBAR_CLB_MUX01_INPUTXBAR1);
XBAR_enableCLBMux(XBAR_AUXSIG0, XBAR_MUX01);
CLB_configLocalInputMux(CLB1_BASE, CLB_IN0, CLB_LOCAL_IN_MUX_GLOBAL_IN);
CLB_configGlobalInputMux(CLB1_BASE, CLB_IN0, CLB_GLOBAL_IN_MUX_CLB_AUXSIG0);
CLB_configGPInputMux(CLB1_BASE, CLB_IN0, CLB_GP_IN_MUX_EXTERNAL);