このおもちゃ、やだ・・・

自分のレベルだとおとなしく、Arduinoをやっとくべきだったと気づいた。

LEDチカチカに手ごろな空きポートがあることを回路図から発見しましたが、まずは構造体にしなきゃいけない。
いや、別にしなくてもいいけど、やらないと負けた気がする。

適当な順番でLEDポートの設定を見ていく。

  GPIO_InitStructure.GPIO_Pin = LD_GREEN_GPIO_PIN | LD_BLUE_GPIO_PIN | LD_BLUE_GPIO_PIN2 ;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
  GPIO_Init(LD_GPIO_PORT, &GPIO_InitStructure); 


http://www.minokasago.org/STM32wiki/index.php?GPIO_Init

まず、初期化のためにGPIO_InitStructureを生成してから、
ポインタとして使う。まず先に設定(スピードとか、入力か出力かとか)して、

GPIO_Init(LD_GPIO_PORT, &GPIO_InitStructure);

で設定を完了する。

STM32だとPA5、PA11が空きポートなので、

  /* Configure the LED_pin as output push-pull for GPIOA GPIO_Pin_5 & Pin_11 usage*/
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5 | GPIO_Pin_11  ;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
  GPIO_Init(GPIOA, &GPIO_InitStructure);
  
  /* Force a low level on LEDs*/ 
  
  GPIO_LOW(GPIOA,GPIO_Pin_5);	
  GPIO_LOW(GPIOA,GPIO_Pin_11);  

という感じで設定してやれば使えるはず・・・。もろもろの設定(RCCとか)はGPIOとして一括でやってるはず!!

構造体やポインタがわかってなくてメタメタだな・・・