2020-02-10から1日間の記事一覧

外部クロックをタイマー1でカウントする

DS3231から出力する1Hzの方形波をタイマー1でカウントし、カウント数に応じて一定周期で何かをする。 #include <avr/io.h> #include <util/delay.h> #include "DS3231.h" #include "USART.h" volatile uint8_t periodElapsed = 0; ISR(TIMER1_OVF_vect){ periodElapsed = 1; } void i</util/delay.h></avr/io.h>…

AVRのI2CとSPI / 温度センサーLM75BD、EEPROM、リアルタイムクロックDS3231によるデータロガー / アラーム割り込みのタイミングでロギングする

以下のいずれかのタイミングでロギングするのであれば、DS3231のINT信号でAVRへ外部割り込み(またはピン変化割り込み)をかけてロギングルーチンを実行するのが簡単でよい。AVRの内蔵タイマーでも同じことはできるが、超長時間タイマーを作るのは面倒である。…