Other Parts Discussed in Thread: C2000WARE, SYSCONFIG
I am creating a CCS project for the F280049 microcontroller. CCS is version 11.0.0.00012 C2000Ware is version 4.00.00.00
I am using a .syscfg file for pin configuration.
I have tried two methods for creating the syscfg file: The integrated sysconfig tool in CCS as well as the stand-alone sysconfig tool. The problem that I am having occurs with both methods.
The version of Sysconfig (both the integrated and stand-alone) is 1.10.0.2163
When you first create a new syscfg file, the creation dialog allows for optionally specifying a "Software Product". One option for this is "C2000 sysconfig 3.01.00.00". If a software product is specified, then the tool generates a .h and .c file with higher-level functions into C2000Ware. If a "software product" is omitted, it is considered a "bare metal" project, and the tool generates .c and .h files with low-level (register) based routines to configure the pins.
This is the problem that I have observed:
When I configure a GPIO pin (in this case a digital, push-pull output) and specify a "Software Product", the generated .c file init routines do not fully configure the GPIO pin(s). They omit the disabling of "analog mode", even though the GPIO's were specified as digital in the designer.
These lines should be generated in the .c file, but they are not:
GPIO_setAnalogMode(22U, GPIO_ANALOG_DISABLED);
GPIO_setAnalogMode(23U, GPIO_ANALOG_DISABLED);
However, if I create the sysconfig project without specifying a software product (i.e. generate files for a bare metal application), the .c file created DOES include disabling of analog mode (the register equivalents of it.).
I am new to the sysconfig tool and may be missing something obvious, but this appears to be a bug. Otherwise, I'd appreciate it if someone could explain what I am doing wrong.
The workaround is to manually insert the two lines shown above in main.c (or somewhere prior to utilizing the GPIO's).