单片机加pid算法去控制步进电机的具体措施或方法 2009-7-25 12:13 最 佳答案 //P1
1(T0):Count They Distance //P0
4:Tx //P0
5:Rx #include //SFR declarations #include //Standard I/O definition file #include //Math library file #include #include unsigned int j,i; char a=0; unsigned int t=0; //sbit led=P0^2; //P0
0(PWM0):给定左轮速度
sbit vls=P0^4; //P0
4(GPIO):给定左轮方向
sbit vlf=P0^6; //P0
6(T0) :反馈左轮速度
sbit dlf=P1^0; //P1
0(GPIO): 反馈左轮方向
2(PWM0):给定右轮速度
sbit vrs=P0^5; //P0
5(GPIO):给定右轮方向
sbit vrf=P0^7; //P0
7(T0) :反馈右轮速度
sbit drf=P1^1; //P1
1(GPIO): 反馈右轮方向
int ol; //左轮给定值 int len; int len_1,len_2; int lyn_1,lyn_2; int vl1,vl2; //反馈左轮速度值(取样周期内的方波数) int lfz; //运算后赋给 PWM 的值 int lyn,lynn; int lun=0,lun_1=0; //偏差校正值 即校正 PWM 输出 int lunp,luni,lund; //PID 校正值 int or; //右轮给定值 int ren; int ren_1,ren_2; int ryn_1,ryn_2; int vr1,