AVR – sbi(port,bit) cbi(port,bit)
やっとビット演算関連がわかった。
記念にcbiとsbiをマクロ定義したので書いておく。
#define sbi(PORT,BIT) PORT|=_BV(BIT) // PORTの指定BITに1をセット
#define cbi(PORT,BIT) PORT&=~_BV(BIT) // PORTの指定BITをクリア
これでWinAVR20050214で消えてたsbiとcbiが使えるようになる。
sbi(PORTB, PB1); // PB1だけ点灯
cbi(PORTB, PB1); // PB1だけ消灯
アセンブラのsbiやcbiとは違うけど。

AVR-GCCのレジスタ操作関数&マクロ
今日畑山さんにAVR-GCCについて質問されたので、5月あたりから俺が多用してい...