//******************** サーボ制御用PICに命令を出す ************************// // 試験用プログラム // 2009.12.15 // // printf関数に CODE,サーボ番号、回転角度の引数を渡してシリアル送信 // サーボ番号は0~Fの16 // 回転角度は限界を超えると動作不定となるので注意 // ±4000を限界値の目安とする // //****************************************************************************// #include <12f683.h> #fuses INTRC_IO,NOWDT,NOPROTECT,NOMCLR,BROWNOUT #use delay(clock = 4000000) #use rs232(BAUD =9600, XMIT = PIN_A2, RCV = PIN_A3) #define CODE "%d%ld\n" void main(){ int num = 0; set_tris_a(0x08); output_a(0x00); while(1){ printf(CODE,0,4000); delay_ms(1000); printf(CODE,0,-4000); printf(CODE,1,4000); delay_ms(1000); printf(CODE,1,-4000); printf(CODE,2,4000); delay_ms(1000); printf(CODE,2,-4000); } }