/* AT-WALKER サーボを中心位置に設定するプログラム 2005.9.29(c)AsakusaGiken */ #include /* IO関連 */ #include /* 割り込み関連 */ #include /* 割り込みベクタ関連 */ /* -----グローバル変数----- */ char phase = 0; /* フェーズを表す変数(PORTC操作用にも使うのでバイトサイズ) */ char ServoPos[8] = {94, 94, 94, 94, 94, 94, 94, 94}; /* サーボの位置を示す変数 */ //char HomePos[8] = {94, 94, 94, 94, 94, 94, 94, 94}; /* ホームポジション */ /*-----タイマカウンタ0(8bit)比較マッチ割り込み(サーボパルス幅生成)-----*/ SIGNAL(SIG_OUTPUT_COMPARE0) { PORTC &= ~((1< 7) { phase = 0; /* フェーズが7を超えたらフェーズ0に戻る */ } } /*-----メイン-----*/ void main(void) { /* PC0端子の設定 */ DDRC |= (1<