« Nucleo買った | トップページ | 初マムシ »

2016年4月27日 (水)

NucleoでLチカ

先日、手に入れたNucleoボードでLEDの点滅に挑戦した。
スイッチとLEDの初期設定だけでも、かなり長いコードを記述しなくてはならない。
Arduinoなら、きっとこんな感じだが、

	pinMode(13, INPUT);
	pinMode( 5, OUTPUTP);

STM32F401だと、こんなに長いコードを記述する必要がある。

	GPIO_InitTypeDef gpio;				// 初期設定用データ

	gpio.GPIO_Pin = GPIO_Pin_13;		// PIN13=USER_BUTTONを...
	gpio.GPIO_Mode = GPIO_Mode_IN;		// 入力モード
	gpio.GPIO_PuPd = GPIO_PuPd_NOPULL;	// プルアップしない
	gpio.GPIO_Speed = GPIO_Speed_100MHz;// 100MHzで動作
	RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE);	// PORTCの設定開始
	GPIO_Init(GPIOC, &gpio);			// 設定

	gpio.GPIO_Pin = GPIO_Pin_5;			// PIN15=LEDを...
	gpio.GPIO_Mode = GPIO_Mode_OUT;		// 出力モード
	gpio.GPIO_OType = GPIO_OType_PP;	// PUSHPULL
	gpio.GPIO_PuPd = GPIO_PuPd_NOPULL;	// プルアップしない
	gpio.GPIO_Speed = GPIO_Speed_100MHz;// 100MHzで動作
	RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);	// PORTAの設定開始
	GPIO_Init(GPIOA, &gpio);			// 設定
	GPIO_ResetBits(GPIOA, GPIO_Pin_5);	//LED消灯

マイコンだったら、これくらいは普通なんだけど、記述量が多くてウンザリ。
Arduinoが大ヒットしたのもわかる気がする。

« Nucleo買った | トップページ | 初マムシ »

お仕事」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/24707/65337029

この記事へのトラックバック一覧です: NucleoでLチカ:

« Nucleo買った | トップページ | 初マムシ »

最近のトラックバック