正文描述:《msp430循迹小车程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、#include#defineucharunsignedcharucharPWM1,PWM2;ucharCYCLE;voiddelay(intz){intx,y;for(x=z;x>0;x--)for(y=124;y>0;y--);}voidmain(void){WDTCTL=WDTPW+WDTHOLD;P4DIR=0X00;P6DIR=0X40;P6OUT=0x00;P8DIR=0X01;P8OUT=0x00;TA0CTL=TASSEL0+TACLR;TA0CCTL0=CCIE;TA0CCR0=30;TA0CTL
2、=MC0;_EINT
3、();TA1CTL=TASSEL0+TACLR;TA1CCTL0=CCIE;TA1CCR0=30;TA1CTL
4、=MC0;_EINT();CYCLE=10;while(1){switch(P4IN&0x0f){case0x00:PWM1=2;PWM2=2;break;case0x08:PWM1=0;PWM2=3;break;case0x04:PWM1=0;PWM2=2;break;case0x0c:PWM1=0;PWM2=4;break;case0x0e:PWM1=0;PWM2=7;break;case0x01:PWM1=3;PWM2=0;break;case0x0
5、2:PWM1=2;PWM2=0;break;case0x03:PWM1=4;PWM2=0;break;case0x07:PWM1=7;PWM2=0;break;default:P6OUT=0x00;P8OUT=0x00;break;}}}#pragmavector=TIMER0_A0_VECTOR__interruptvoidTimer_A(void){staticunsignedcharcount1;if(count1==PWM1){P6OUT=0x40;//直流电机转}count1++;if(count1==CYCLE){count1=0;if(PWM1!=0)
6、//如果左右时间是0保持原来状态{P6OUT=0x00;//直流电机不转}}}#pragmavector=TIMER1_A0_VECTOR__interruptvoidTimer_B(void){staticunsignedcharcount2;if(count2==PWM2){P8OUT=0x01;//直流电机转}count2++;if(count2==CYCLE){count2=0;if(PWM2!=0)//如果左右时间是0保持原来状态{P8OUT=0x00;//直流电机不转}}}
显示全部收起
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。