MSP432 (Cortex-M4F)
(注意点はウイルスチェックが動いていると警告が出ます。私はウイルスチェックを
一時、外してインストールしました。)
CCS マニュアル | CCSv6 インストレーションガイド | TI
3色LEDがあるのでこれを点滅させてみる。
まず、サンプルを動かしてみる。
Devices → MSP432P4xx → MSP432P401R(CMSIS) と選択する。
プロジェクト名で「msp432p401_1」を選択する。
サンプルの main 関数が見えます。
LED1 ( Red のみ) の点滅です。以下のように3色LED の点滅を追加し、ビルドします。
#include "msp.h"
#include <stdint.h>
#define RGB_LED_WAIT 100000
#define RGB_OFF_WAIT 100000
int main(void) {
volatile uint32_t i;
WDT_A->CTL = WDT_A_CTL_PW | WDT_A_CTL_HOLD; // Stop WDT
P1->DIR |= BIT0; // P1.0 set as output
P2->DIR |= BIT0; // P2.0 set as output (Red)
P2->DIR |= BIT1; // P2.1 set as output (Green)
P2->DIR |= BIT2; // P2.2 set as output (Blue)
while (1) // continuous loop
{
P1->OUT ^= BIT0; // Blink P1.0 LED
for (i = 20000; i > 0; i--); // Delay
P2->OUT = 0x0000 ;
P2->OUT = 0x0001 ; // Blink P2.0 LED (Red)
for (i = RGB_LED_WAIT; i > 0; i--); // Delay
P2->OUT = 0x0000 ;
for (i = RGB_OFF_WAIT; i > 0; i--); // LED All Off Delay
P2->OUT = 0x0002 ; // Blink P2.1 LED (Green)
for (i = RGB_LED_WAIT; i > 0; i--); // Delay
P2->OUT = 0x0000 ;
for (i = RGB_OFF_WAIT; i > 0; i--); // LED All Off Delay
P2->OUT = 0x0004 ; // Blink P2.2 LED (Blue)
for (i = RGB_LED_WAIT; i > 0; i--); // Delay
P2->OUT = 0x0000 ;
for (i = RGB_OFF_WAIT; i > 0; i--); // LED All Off Delay
}
}
ビルドが成功すれば RUN → Debug でプログラムはターゲットボードに転送され、
int main ( void ) で停止しています。Run → Resume でプログラムが走りだします。