int Flag; int LED; //LED点灯/消灯モード int exLED_PIN = 0; struct repeating_timer timer; //インスタンス生成 //repeating_timer_t timer; //インスタンス生成 bool callback_timer(struct repeating_timer *t){ //コールバック関数 //戻り値 intはNG Flag = 1; return 1; //1: 必須 //return 0; : 点灯のまま → NG } void setup() { pinMode(LED_BUILTIN, OUTPUT); //内臓LED接続ポート 出力モード設定 gpio_init(exLED_PIN); gpio_set_dir(exLED_PIN, GPIO_OUT); //ピン出力モード設定 add_repeating_timer_ms(1000, callback_timer, NULL, &timer);//コールバック関数 及びインターバル時間の設定 //add_repeating_timer_us(1000000, callback_timer, NULL, &timer); //μsec単位 } void loop() { if(Flag == 1) { Flag = 0; if(LED == 0) //消灯モードの場合 { LED = 1; digitalWrite(LED_BUILTIN, HIGH); //内臓LED: 点灯 digitalWrite(exLED_PIN, 1); //外付けLED: 点灯 } else //点灯モードの場合 { LED = 0; digitalWrite(LED_BUILTIN, LOW); //内臓LED: 消灯 digitalWrite(exLED_PIN, 0); //外付けLED 消灯 } } }