This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LAUNCHCC3235MOD: Using Mikroe PROFET15 with boosterpack pins configuration

Part Number: LAUNCHCC3235MOD
Other Parts Discussed in Thread: SYSCONFIG

I've got the following pins to connect and configure and connect with FF jumpers::

IS SENSE:

On the boosterpack pins, what is "analog input 2"? Pin 6 GPIO_4/A2?

Then I just need two nonconflicting GPIO for DEN(high diagnostic enable) and OUT(high output enable)?

i#ifndef PROFET15W
#define PROFET15W
#define PF_AN BROWN // IS SENSE ADC
#define PF_DEN BLUE // DEN DIAGNOSIICS ENABLE
#define PF_IN YELLOW // OUTPUT ENABLE
#define PF_3V3 ORANGE // 3V3
#define PF_GND GREEN // GND(2)
#endif

  • I can't yet know IS(SENSE) is less than 1.8V, co forget about DEN and IS. 

    I added  to sysconfig IN(enable Output):

    GPIO4.$name = "CONFIG_GPIO_PF15IN"; Use Hardware = "None"; GPIO4.mode = "Output"; Strength="Medium"; Initial State "Low"

    and I see at the bootom of common.sysconfig:

    GPIO3.gpioPin.$suggestSolution = "boosterpack.29";
    GPIO4.gpioPin.$suggestSolution = "boosterpack.19";

    /**
     * These arguments were used when this file was generated. They will be automatically applied on subsequent loads
     * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
     * @cliArgs --board "/ti/boards/CC3235SF_LAUNCHXL" --rtos "tirtos7" --product "simplelink_cc32xx_sdk@7.10.00.13"
     * @versions {"tool":"1.17.0+3128"}
     */
    
    /**
     * Import the modules used in this configuration.
     */
    const DriverLib      = scripting.addModule("/ti/devices/DriverLib");
    const Display        = scripting.addModule("/ti/display/Display");
    const Display1       = Display.addInstance();
    const Board          = scripting.addModule("/ti/drivers/Board");
    const Crypto         = scripting.addModule("/ti/drivers/Crypto");
    const Crypto1        = Crypto.addInstance();
    const DMA            = scripting.addModule("/ti/drivers/DMA");
    const GPIO           = scripting.addModule("/ti/drivers/GPIO");
    const GPIO1          = GPIO.addInstance();
    const GPIO2          = GPIO.addInstance();
    const GPIO3          = GPIO.addInstance();
    const GPIO4          = GPIO.addInstance();
    const I2C            = scripting.addModule("/ti/drivers/I2C", {}, false);
    const I2C1           = I2C.addInstance();
    const I2S            = scripting.addModule("/ti/drivers/I2S", {}, false);
    const I2S1           = I2S.addInstance();
    const Power          = scripting.addModule("/ti/drivers/Power");
    const SPI            = scripting.addModule("/ti/drivers/SPI");
    const SPI1           = SPI.addInstance();
    const Timer          = scripting.addModule("/ti/drivers/Timer");
    const Timer1         = Timer.addInstance();
    const Timer2         = Timer.addInstance();
    const Timer3         = Timer.addInstance();
    const Watchdog       = scripting.addModule("/ti/drivers/Watchdog");
    const Watchdog1      = Watchdog.addInstance();
    const SimpleLinkWifi = scripting.addModule("/ti/drivers/net/wifi/SimpleLinkWifi");
    const atcmd          = scripting.addModule("/ti/drivers/net/wifi/atcmd", {}, false);
    const atcmd1         = atcmd.addInstance();
    const net_utils      = scripting.addModule("/ti/drivers/net/wifi/net_utils", {}, false);
    const net_utils1     = net_utils.addInstance();
    const HTTPClient     = scripting.addModule("/ti/net/HTTPClient", {}, false);
    const HTTPClient1    = HTTPClient.addInstance();
    const MQTT           = scripting.addModule("/ti/net/MQTT", {}, false);
    const MQTT1          = MQTT.addInstance();
    const SNTP           = scripting.addModule("/ti/net/SNTP");
    const SlNet          = scripting.addModule("/ti/net/SlNet");
    const SlNet1         = SlNet.addInstance();
    const Settings       = scripting.addModule("/ti/posix/tirtos/Settings");
    const BIOS           = scripting.addModule("/ti/sysbios/BIOS");
    const Event          = scripting.addModule("/ti/sysbios/knl/Event");
    const Idle           = scripting.addModule("/ti/sysbios/knl/Idle", {}, false);
    const Idle2          = Idle.addInstance();
    const Mailbox        = scripting.addModule("/ti/sysbios/knl/Mailbox");
    const Error          = scripting.addModule("/ti/sysbios/runtime/Error");
    const SysCallback    = scripting.addModule("/ti/sysbios/runtime/SysCallback");
    const Timestamp      = scripting.addModule("/ti/sysbios/runtime/Timestamp");
    const JSON           = scripting.addModule("/ti/utils/JSON");
    
    /**
     * Write custom configuration values to the imported modules.
     */
    Display1.$name                          = "CONFIG_Display_0";
    Display1.$hardware                      = system.deviceData.board.components.XDS110UART;
    Display1.uart.$name                     = "CONFIG_UART2_0";
    Display1.uart.uart.$assign              = "UART0";
    Display1.uart.uart.txPin.$assign        = "GP01";
    Display1.uart.uart.txDmaChannel.$assign = "UDMA_CH9";
    Display1.uart.uart.rxPin.$assign        = "GP02";
    Display1.uart.uart.rxDmaChannel.$assign = "UDMA_CH8";
    
    Crypto1.$name = "CONFIG_Crypto_0";
    
    GPIO1.$hardware        = system.deviceData.board.components.SW2;
    GPIO1.$name            = "CONFIG_GPIO_BUTTON_0";
    GPIO1.interruptTrigger = "Rising Edge";
    GPIO1.gpioPin.$assign  = "boosterpack.3";
    
    GPIO2.$hardware        = system.deviceData.board.components.SW3;
    GPIO2.$name            = "CONFIG_GPIO_BUTTON_1";
    GPIO2.interruptTrigger = "Rising Edge";
    GPIO2.gpioPin.$assign  = "boosterpack.11";
    
    GPIO3.$hardware = system.deviceData.board.components.LED_BLUE;
    GPIO3.$name     = "CONFIG_GPIO_LED_0";
    
    GPIO4.$name = "CONFIG_GPIO_PF15IN";
    GPIO4.mode  = "Output";
    
    I2C1.$hardware = system.deviceData.board.components.LP_I2C;
    I2C1.$name     = "CONFIG_I2C_TMP";
    
    I2S1.$name = "CONFIG_I2S_0";
    
    Power.ioRetentionShutdown = ["GRP_1"];
    Power.parkPins.$name      = "ti_drivers_power_PowerCC32XXPins0";
    
    SPI1.$name                    = "CONFIG_SPI_0";
    SPI1.mode                     = "Four Pin CS Active Low";
    SPI1.defaultTxBufferValue     = "0";
    SPI1.spi.$assign              = "SPI0";
    SPI1.spi.sclkPin.$assign      = "boosterpack.7";
    SPI1.spi.pociPin.$assign      = "boosterpack.14";
    SPI1.spi.picoPin.$assign      = "boosterpack.15";
    SPI1.spi.dmaRxChannel.$assign = "UDMA_CH6";
    SPI1.spi.dmaTxChannel.$assign = "UDMA_CH7";
    SPI1.spi.csnPin.$assign       = "boosterpack.18";
    
    Timer1.$name         = "CONFIG_TIMER_0";
    Timer1.timerType     = "32 Bits";
    Timer1.timer.$assign = "Timer0";
    
    Timer2.$name         = "CONFIG_TIMER_1";
    Timer2.timer.$assign = "Timer1";
    
    Timer3.$name         = "CONFIG_TIMER_2";
    Timer3.timer.$assign = "Timer1";
    
    Watchdog1.$name            = "CONFIG_WATCHDOG_0";
    Watchdog1.watchdog.$assign = "WATCHDOG0";
    
    atcmd1.$name = "CONFIG_ATCMD_0";
    
    net_utils1.$name = "CONFIG_NET_UTILS_0";
    
    HTTPClient1.$name = "CONFIG_HTTPCLIENT_0";
    
    MQTT1.$name = "CONFIG_MQTT_0";
    
    SlNet1.$name  = "CONFIG_SLNET";
    SlNet1.ifName = "CC32xx";
    
    BIOS.assertsEnabled = false;
    BIOS.heapBaseAddr   = "__primary_heap_start__";
    BIOS.heapEndAddr    = "__primary_heap_end__";
    
    const Hwi           = scripting.addModule("/ti/sysbios/family/arm/m3/Hwi", {}, false);
    Hwi.enableException = false;
    
    Idle2.$name   = "powerIdle";
    Idle2.idleFxn = "Power_idleFunc";
    
    const Semaphore            = scripting.addModule("/ti/sysbios/knl/Semaphore", {}, false);
    Semaphore.supportsPriority = false;
    
    const Task             = scripting.addModule("/ti/sysbios/knl/Task", {}, false);
    Task.checkStackFlag    = false;
    Task.defaultStackSize  = 512;
    Task.idleTaskStackSize = 512;
    
    Error.policy       = "Error_SPIN";
    Error.printDetails = false;
    
    const System           = scripting.addModule("/ti/sysbios/runtime/System", {}, false);
    System.abortFxn        = "System_abortSpin";
    System.exitFxn         = "System_exitSpin";
    System.extendedFormats = "%f";
    System.supportModule   = "SysCallback";
    
    /**
     * Pinmux solution for unlocked pins/peripherals. This ensures that minor changes to the automatic solver in a future
     * version of the tool will not impact the pinmux you originally saw.  These lines can be completely deleted in order to
     * re-solve from scratch.
     */
    GPIO3.gpioPin.$suggestSolution         = "boosterpack.29";
    GPIO4.gpioPin.$suggestSolution         = "boosterpack.19";
    I2C1.i2c.$suggestSolution              = "I2C0";
    I2C1.i2c.sdaPin.$suggestSolution       = "boosterpack.10";
    I2C1.i2c.sclPin.$suggestSolution       = "boosterpack.9";
    I2S1.i2s.$suggestSolution              = "McASP0";
    I2S1.i2s.SD0Pin.$suggestSolution       = "boosterpack.17";
    I2S1.i2s.SD1Pin.$suggestSolution       = "boosterpack.30";
    I2S1.i2s.SCKPin.$suggestSolution       = "boosterpack.4";
    I2S1.i2s.WSPin.$suggestSolution        = "boosterpack.27";
    I2S1.i2s.dmaRxChannel.$suggestSolution = "UDMA_CH18";
    I2S1.i2s.dmaTxChannel.$suggestSolution = "UDMA_CH19";
    

    How do I assign a hardware pin that I would know is free? It would seem boosterpack 19 is used by COEX_WAKEUP?

  • I wandered into sysconfig and selected a use available for CONFIG_GPIO_PF15IN PinMux P53/28 (Header) and the enable works.  I guessed that meant pin 28 on the BoosterPack Plug-in Module Pinout. I used GPIO_write(CONFIG_GPIO_PF15IN,<0 or 1>) to control,  for me guessing CONFIG_GPIO_PF15IN might work even though it resolved to 30 , neither 53 or 28. When I quit debugging I wonder how to stopthread  while(1) in i2c getting temperature and turning something on or off as it keep working in debug after termination. Not a problem if power intentionally removed to stop, but it would be nice to have a function returning it to off state when debug terminated.