开发板拿到的第一件事情是开箱,第二件事就是点灯了。只有点亮了灯,才能说明开发工作可以正常进行。
下载官方的mspm0_sdk_1_20_00_05.exe后安装到电脑,会解压出来一堆文件,其中有一些例子,接下来就先在例子的基础上跑一个Blinky试试看。
C:\ti\mspm0_sdk_1_20_00_05\examples\nortos\LP_MSPM0L1306\driverlib\gpio_toggle_output
- /* Port definition for Pin Group GPIO_LEDS */
- #define GPIO_LEDS_PORT (GPIOA)
- /* Defines for USER_LED_1: GPIOA.27 with pinCMx 28 on package pin 31 */
- #define GPIO_LEDS_USER_LED_1_PIN (DL_GPIO_PIN_27)
- #define GPIO_LEDS_USER_LED_1_IOMUX (IOMUX_PINCM28)
- /* Defines for USER_LED_2: GPIOA.26 with pinCMx 27 on package pin 30 */
- #define GPIO_LEDS_USER_LED_2_PIN (DL_GPIO_PIN_26)
- #define GPIO_LEDS_USER_LED_2_IOMUX (IOMUX_PINCM27)
- /* Defines for USER_LED_3: GPIOA.13 with pinCMx 14 on package pin 17 */
- #define GPIO_LEDS_USER_LED_3_PIN (DL_GPIO_PIN_13)
- #define GPIO_LEDS_USER_LED_3_IOMUX (IOMUX_PINCM14)
打开后,逐步分解程序,找到配置代码,如上所示,而根据开发板的手册,红色的LED在PA0上,低电平点亮。所以以上默认的代码不能操作到红色的独立LED。
阅读原理图发现开发板上还有一个RGB三色LED灯,在PA13,PA26,PA27上,因此上述的默认配置是该RGB LED灯的。所以咱们先测试一下默认代码看看。
配置烧录器选项
然后单击烧录,发现可以下载了,完成下载后,按单片机开发板的复位按钮,三色RGB开始闪烁,发现不是循环点亮的,修改代码让它三色循环。
- int main(void)
- {
- /* Power on GPIO, initialize pins as digital outputs */
- SYSCFG_DL_init();
- /* Default: LED1 and LED3 ON, LED2 OFF */
- DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN | GPIO_LEDS_USER_LED_2_PIN | GPIO_LEDS_USER_LED_3_PIN);
- DL_GPIO_setPins( GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN | GPIO_LEDS_USER_LED_2_PIN | GPIO_LEDS_USER_LED_3_PIN);
- while (1) {
- /*
- * Call togglePins API to flip the current value of LEDs 1-3. This
- * API causes the corresponding HW bits to be flipped by the GPIO HW
- * without need for additional R-M-W cycles by the processor.
- */
- delay_cycles(10000000);
- DL_GPIO_togglePins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN);
- delay_cycles(10000000);
- DL_GPIO_togglePins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_2_PIN);
- delay_cycles(10000000);
- DL_GPIO_togglePins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_3_PIN);
- }
- }
|