超音波浮揚の実験3 of 3 / 一往成功した
参考:
makezine.com
// ヒューズのCKDIV8ビットは解除しておく。 // クロックは内蔵9.6 MHzを使う。 #include <avr/io.h> #include <avr/interrupt.h> ISR(TIM0_COMPA_vect){ PORTB ^= 0b11; // コンペアマッチするたびにPB1:0をトグルする。 } int main(){ DDRB = 0b11; // PB1:0からパルスを出力することにする。 PORTB = 0b01; // 最初にPB1とPB0とのロジックを互い違いにしておく(だから0b10でもよい)。 TCCR0A = 1 << WGM01; // CTCモード TCCR0B = 1 << CS00; // クロックを分周せずにカウント OCR0A = 114; // コンペア値A (この値を調整して周波数を40 kHzにする) TIMSK0 = 1 << OCIE0A; // コンペアマッチA割り込みを有効化 sei(); while(1); return 0; }
ultra /ʌ́ltrə/