TI中文支持网
TI专业的中文技术问题搜集分享网站

关于CC3200 Pin01 复用的问题

我们自己项目的板子上把PIN01 作为了UART1的TX脚,也就是mode 7,

  // Enable Peripheral Clocks of UART1MAP_PRCMPeripheralClkEnable(PRCM_UARTA1, PRCM_RUN_MODE_CLK);// Config PIN_01 for UART1 UART1_TX// according to the swru367c , pin Multiplexing table 16-7 , pin mode 7MAP_PinTypeUART(PIN_01, PIN_MODE_7) ;// Config PIN_57 for UART1 UART1_RX , pin Multiplexing table 16-7 , pin mode 6MAP_PinTypeUART(PIN_57, PIN_MODE_6) ;

但是在使用camera的时候,参考SDK里面的例子,camera里面的I2C pinmux 操作把PIN01 配置成了GPIO 模式(mode 0)。

 //// Configure PIN_16 for I2C0 I2C_SCL//MAP_PinTypeI2C(PIN_16, PIN_MODE_9);//// Configure PIN_17 for I2C0 I2C_SDA//MAP_PinTypeI2C(PIN_17, PIN_MODE_9);//// Configure PIN_01 for MODE0//MAP_PinTypeI2C(PIN_01, PIN_MODE_0);

这样导致的问题是,UART1 和 Camera 分别用在两个Task里面,当使用camera操作的时候 UART1 就不能正常工作,因为pin01 被配置成了GPIO 模式,当UART1 工作的时候,camera 进行I2c配置的时候就会失败。  我尝试过在进行camera的pinmux操作时,把pin01 配置成mode 7 (

MAP_PinTypeUART(PIN_01, PIN_MODE_7) ; )
但是 这样camera 在进行I2c配置时依然会出现失败的情况。必须在操作camera时 把pin01 配置成 mode 0 才可以。 我在网上也查了大量的资料,
  • http://processors.wiki.ti.com/index.php/CC32xx_Summary_of_Known_Issues 

    这个连接里面也说 I2C默认使用 pin01 pin02 ,如果要更改i2c的默认配置的话,就要把pin01 pin02 配置成mode 0

    但是,是不是如果不用pin01 pin02 作为I2C模式使用的话只能把pin脚配置成GPIO 模式 ?

    如果是的话,在camera 例子里面 为什么pin02 可以被配置成mode 4,如果不是的话,为什么我把pin01 配置成 mode 7 ,I2C就不能正常工作了呢?



Viki Shi:

可以使用pinmux tool,这是介绍: processors.wiki.ti.com/…/TI_PinMux_Tool

赞(0)
未经允许不得转载:TI中文支持网 » 关于CC3200 Pin01 复用的问题
分享到: 更多 (0)