Hi Folks,
I have a CC3200 Module in our design. We are using SWD mode to debug the chip, and the TDO and TDI pins are being used for a UART (UART1). If I run it in UART mode it works fine. But if I try to turn the UART pins into GPIO pins I cannot get the TDO or TDI pins to be controllable as GPIO pins. I have even bypassed any UART mode and defined the pins as GPIO outputs and it still doesn't work. My code in pin_mux_config.c is as follows:
PinTypeGPIO(PIN_16, PIN_MODE_0, false); GPIODirModeSet(GPIOA2_BASE, 0x80, GPIO_DIR_MODE_OUT); PinTypeGPIO(PIN_17, PIN_MODE_0, false); GPIODirModeSet(GPIOA3_BASE, 0x1, GPIO_DIR_MODE_OUT);
I have tried various ways to get the pins to go up and down, and none have worked. Here is the code I am using to try to get the pins to go from low to high, etc...
// Pin 18 GPIO_IF_GetPortNPin(24, &vaddr, &vpin); GPIO_IF_Set(24, vaddr, vpin, 0); /// '1' for HIGH; '0' for LOW GPIO_IF_Set(24, vaddr, vpin, 1); /// '1' for HIGH; '0' for LOW // Pin 12 GPIO_IF_GetPortNPin(23, &vaddr, &vpin); GPIO_IF_Set(23, vaddr, vpin, 0); /// '1' for HIGH; '0' for LOW GPIO_IF_Set(23, vaddr, vpin, 1); /// '1' for HIGH; '0' for LOW MAP_GPIOPinWrite(GPIOA3_BASE,0x1, 0x1); MAP_GPIOPinWrite(GPIOA3_BASE,0x1,0);
MAP_GPIOPinWrite(GPIOA2_BASE,0x80, 0x80);
MAP_GPIOPinWrite(GPIOA2_BASE,0x80,0);
Neither of these methods get the TDO or TDI pin to move as a GPIO.
Any suggestions as to what I can do to get this pin to be usable as a GPIO pin?
Thanks,
Vic