TentoBugのアイコン画像
TentoBug 2025年01月26日作成 (2025年01月27日更新)
セットアップや使用方法 セットアップや使用方法 Lチカ Lチカ 閲覧数 333
TentoBug 2025年01月26日作成 (2025年01月27日更新) セットアップや使用方法 セットアップや使用方法 Lチカ Lチカ 閲覧数 333

SPRESENSEで割り込みの実験をしました。

はじめに

タイマーの間隔より作業することが長い時の動作が気になり試してみました。
さらに割込みが入ると、どんな動きになるのかと思い実験しました。

回路図

Lチカ

#include <time.h> #include <stdio.h> unsigned int timer1(void){ digitalWrite(PIN_D22, HIGH); delay(500); //ms digitalWrite(PIN_D22, LOW); delay(500); return 500; } unsigned int photosensor(void){ digitalWrite(PIN_D23, HIGH); delay(1000); digitalWrite(PIN_D23, LOW); return 1; } void setup() { /* ポートの設定 */ pinMode(PIN_D02, OUTPUT); pinMode(PIN_D22, OUTPUT); pinMode(PIN_D23, OUTPUT); pinMode(PIN_D21, INPUT_PULLDOWN); pinMode(PIN_D16, INPUT_PULLDOWN); pinMode(PIN_D17, INPUT_PULLDOWN); /* シリアル通信設定 */ Serial.begin(115200); sleep(3); attachInterrupt(PIN_D21, photosensor, RISING); attachTimerInterrupt(timer1,500);//us /* Set serial baudrate. */ Serial.begin(115200); } long long l=0; void loop() { char Buffer[256]; sprintf(Buffer, "%ld\r\n\0", l ); Serial.print(Buffer); l++; }

結果

キャプションを入力できます
こんなイメージのような感じがしました。私がこんな感じに仕事させられたら、もーとなりそうです。あっちたてこっちたてとしているうちに真っ白になりそうです。なんかうまく処理するのだな。

今後の課題

  • 優先順位とかあるのだろうか。
  • マルチコアの機能を使うとタイマーの内容をずらさずに点灯さすことができるのかな?
  • R5の抵抗値と入力電圧の検討。紙の色などで電圧が変わるから。
TentoBugのアイコン画像
テントウ虫も好きなのですが、違います。アマチュアとしてプログラムを書くので、バグや虫が10個以上はあります。誤記脱字も多いところからつけた名前です。回路やプログラムも怪しいのを掲載していて、動作を保証できませんがヨロシクお願いします。
ログインしてコメントを投稿する