沈阳航空航天大学课程设计说明书 参考文献
trig = 1; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); trig = 0;
//800MS 启动一次模块
} }
void Timer2(void) interrupt 5 //T2中断 {
TF2 = 0; // T2定时器发生溢出中断时,需要用户自己清除溢出标记
23
沈阳航空航天大学课程设计说明书 参考文献
RCAP2H = 0x0fe; }
void main() {
RCAP2L = 0x33; /*恢复定时器初始值*/ ++click;
if (click>=100) //电机pwm输出,占空比zk1% click=0; if (click<=ZK1)
PWM1=1;
else PWM1=0;
if (click<=ZK2)
PWM2=1; else
PWM2=0;
//主函数
//设T0为方式1,GATE=1;
TMOD = 0x19; TH0 = 0;
TL0 = 0; TH1 = 0x0f8; TL1 = 0x30;
ET0 = 1; //允许T0中断 ET1 = 1; TR1 = 1;
//允许T1中断 //开启定时器
//2MS定时
Timer2Interrupt(); EA = 1;
//开启总中断
24
沈阳航空航天大学课程设计说明书 参考文献
}
ZK1 = 40; ZK2 = 40; while(1) { }
while(INT0==0); TR0=1; while(INT0==1); TR0=0; Conut();
//当外部中断为1计数并等待 //关闭计数
//当外部中断为0时等待
//计算
//控制加速
if (S<100) { ZK2=30; ZK1=100; }
else if(S>100) { ZK1=90; ZK2=90; delay_1(); }
//控制转向
2.小车实物图
25
沈阳航空航天大学课程设计说明书 参考文献
26