本程序用于测试, 编译器采用CodeVisionAVR #include <delay.h> #include <mega8.h> #define IN_A PINB.1 #define IN_B PINB.2 unsigned char encoder_now;//本次值 unsigned char encoder_ago;//上次值 flash signed char encoder_tab[4][4]= { {0 ,1 ,-1 ,0}, {-1, 0, 0, 1}, {1 ,0, 0 ,-1 }, {0 ,-1 ,1 ,0 }, }; signed char encoder_read(void) { signed char a=0; unsigned char encoder_filter=0; //滤波 while(a<10)//判断次数,进行滤波 { enco...