立秋個人用AVRwiki メモ用できたプログラムとかわかった仕組みとか記録用間違ってても知らん

チカチカなりましたか!
次はちょっとめんどくさいタイマ割り込みを使います。
細かい設定とかの説明はいつか書きたいと思ってます

タイマ割り込みって何


それ使ってどんなメリットがあるの

  • 途中でプログラムが止まらない(レベル1で使った_delay_ms()だとザ・ワールドする)
  • メイン文と別にプログラムが並行して動かせる

どうやったらタイマ割り込み使えるようになるの

  • 最初に#include <avr/interrupt.h> と書いて下さい
  • 割り込み処理ハンドラを作って下さい
    • ISR(ベクトル名){処理}ってやつです
  • 使用する割り込みに応じてレジスタを設定してあげて下さい
  • main文にsei();と書いて割り込みを許可して下さい
  • 以上です 結構めんどい…

タイマ割り込みにどんな種類があるの


プログラム概要

  • やってることはレベル1のチカチカと同じ
  • 点滅する間隔も同じにする
  • タイマ割り込みを使うことによって、点滅動作中も他のことができる
  • 今回はタイマ1のみ使う(タイマ0は未使用)

プログラム(+を押して下さい)


動作確認(動画)



応用編↓

プログラム概要

  • タイマ割り込みを使ってLEDチカチカ(同じ)
  • 同時押しの場合も考えて条件を書いてみた
    • 同時に押されたら、赤LEDの点滅間隔と緑LEDの点滅間隔の間の間隔で同時点滅

プログラム(+を押して下さい)


動作確認(動画)


次→LEDチカチカレベル2−2

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

どなたでも編集できます