基于MSP430F5529的循迹壁障无线控制智能小车设计报告(7)

2019-05-18 16:58

华中科技大学2013年TI杯电子设计竞赛总结报告

#include

unsigned int mode_flag=0xffff;

void Init_PWM_Driver() // 初始化电机驱动电路 {

P4DIR |=BIT0+BIT1+BIT2+BIT3; //IN1~IN4

P2DIR |=BIT0+BIT1;//复用p2.0为使能端ENA,复用p2.1为使能端ENB P2SEL |=BIT0+BIT1;

TA1CTL |=MC_1+TASSEL_1+ID_0; TA1CCTL1=OUTMOD_7; TA1CCTL2=OUTMOD_7; TA1CCR0=1024; TA1CCR1=512; TA1CCR2=512; }

/*转弯部分*/

void Turn_Left() //左转函数 {

//TA1CCTL1=OUTMOD_7; //TA1CCTL2=OUTMOD_7; //TA1CCR0=1024; //TA1CCR1=0; //TA1CCR2=512;

P4OUT &=~(BIT0+BIT1+BIT2); P4OUT |=BIT3; }

void Turn_Right()//右转函数 {

//TA1CCTL1=OUTMOD_7; //TA1CCTL2=OUTMOD_7; //TA1CCR0=1024; //TA1CCR1=512; //TA1CCR2=0;

P4OUT &=~(BIT0+BIT2+BIT3);

华中科技大学2013年TI杯电子设计竞赛总结报告

P4OUT |=BIT1; }

void Turn_Normal()//直行函数 {

//TA1CCTL1=OUTMOD_7; //TA1CCTL2=OUTMOD_7; //TA1CCR0=1024; //TA1CCR1=768; //TA1CCR2=768;

P4OUT &=~(BIT0+BIT2); P4OUT |=BIT1+BIT3; }

void Turn_Back()//直退函数 {

//TA1CCTL1=OUTMOD_7; //TA1CCTL2=OUTMOD_7; //TA1CCR0=1024; //TA1CCR1=768; //TA1CCR2=768;

P4OUT |=(BIT0+BIT2); P4OUT &=~(BIT1+BIT3); }

void Stop()//刹停函数 {

P4OUT |=BIT0+BIT1+BIT2+BIT3;

}

void wuxian(void) {

P4DIR&=~(BIT4+BIT5+BIT6+BIT7);//p4.4、p4.5、p4.6、p4.7输入 P2DIR&=~BIT6; P2REN|=BIT6;

P2IES&=~BIT6;//设p1.0——上升沿触发

华中科技大学2013年TI杯电子设计竞赛总结报告

P2IE|=BIT6;//允许中断 P2IFG&=0x00; }

long int count; long int i;

void bizhang() {

P7DIR|=BIT7; P7OUT&=~BIT7;

//P1DIR&=~BIT0; //P1IES&=~BIT0; //P1IE|=BIT0; P2DIR &=~BIT4; P2IES&=~BIT4; P2IE|=BIT4;

TB0CTL|=MC_1+TASSEL_2+ID_0+TBIE;//定时器TB0设置为增量计数模式,SMCLK为时钟,无分频

TB0CCR0=65536-1; TB0CCR1=60000; TB0CCTL1|=CCIE;

TA2CTL|=MC_1+TASSEL_2+ID_0;//定时器TB0设置为增量计数模式,SMCLK为时钟,无分频

TA2CCR0=65536-1; while(!mode_flag)

{

//Turn_Normal(); } }

#pragma vector=TIMER0_B1_VECTOR __interrupt void TB_ISR(void){ switch(TB0IV){

华中科技大学2013年TI杯电子设计竞赛总结报告

case 2:

P7OUT|=BIT7;

for(i=0;i<10;i++){ }

P7OUT&=~BIT7; break; case 10: break; }

}

/*#pragma vector=PORT1_VECTOR __interrupt void P1_ISR(void){ if(P1IFG&BIT0){ TA2R=0;

TA2CTL|=MC_1+TASSEL_2+ID_0; while(P1IN&BIT0){ }

TA2CTL&=~(MC0+MC1);//定时器暂停 count=TA2R; if(count>1470){ Turn_Normal();

}

else{

Turn_Left(); }

}

P1IFG=0; return; }*/

#pragma vector=PORT2_VECTOR __interrupt void P2_ISR(void) {

if(P2IFG&BIT6)

华中科技大学2013年TI杯电子设计竞赛总结报告

{

switch(P4IN&0xE0) {

case 0x00:

while(!(P4IN&(BIT5+BIT6+BIT7))) {

Turn_Normal(); } }

case 0x20:

while(P4IN&BIT5) {

Turn_Right(); }

break; case 0x40:

while(P4IN&BIT6) {

Turn_Left(); }

break; case 0x80:

while(P4IN&BIT7) {

Stop();

}

mode_flag=~mode_flag; break;


基于MSP430F5529的循迹壁障无线控制智能小车设计报告(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:计算机组成原理习题 第三章存储系统

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: