第1页共30页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第1页共30页图1比赛场地示意图图2机器人出发区示意图4第2页共30页第1页共30页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第2页共30页//-------------------------------------------------------------------------*//机器人搬运比赛程序如下://项目名:基于FreescaleAW60的*//硬件连接:*//程序描述:定时器2作为颜色传感器计数器;定时器1通道0-1作为PWM输出;通道2作为颜色传感器的定时器溢出中断//超声波计数用定时器1*//说明:*//?*//*//作者信息?*//版本信息?*//完成时间?*//修订记录:*//时间:*//内容:?*//-------------------------------------------------------------------------*//调用头文件#include"Includes.h"voidmain(void){//定义变量,不管在主程序还是子函数,都需要把变量的定义放在最前面,否则会报错intD=0;intm=0;charnum1=0;//用于计数用charnum2=0;//用于转弯计数用charflag_forward=1;//前进的标志位charflag_backward=1;//后退的标志位//用到的端口,一定要记得初始化端口数据方向寄存器//液晶模块//PTGDD|=0b00011111;//液晶模块IO的输入输出配置//颜色传感器模块//PTCDD|=0b00101100;//配置颜色传感器模块//PTFDD&=0b11111110;//红外传感器模块及驱动模块PTDDD=0b00000111;//PTDD4作为定时器2的外部时钟输入PTBDD=0b01000000;//前五个是红外传感器,最后两个是超声波的发送和接收PTEDD|=0b11111100;//配置驱动模块第3页共30页第2页共30页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第3页共30页//PTEDD&=0b11111110;//配置红外接近传感器PTADD=0xFF;//PTFDD=0b00111111;//前两个口左右计数的口//2关总中断DisableInterrupt();//禁止总中断//3芯片初始化MCUInit();//4模块初始化PWM_Init(1,0x0fa0);//用作PWM输出控制电机周期最佳控制大概400ms左右(控制舵机用TPM_NUM_1,CH_2)//TPMinit(2);//用来作为颜色传感器的计数用外部时钟/*rb=0;//值的初始化bb=0;//值的初始化gb=0;//值的初始化ryz=0;//值的初始化byz=0;//值的初始化gyz=0;//值的初始化flag=0;//值的初始化*/num_black=0;num_left=0;num_right=0;D=60;//baipingheng();//EnableInterrupt();////开总中断*/while(1){//-------------------------------------------------------------------------*//文件名:无*//说明:完成直推三个目标*//作者:*//初始时间:*//修订记录:*//备注:程序顺序执行一遍就走完了全程,回到出发区*//-------------------------------------------------------------------------*/*while(num_black<2){第4页共30页第3页共30页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第4页共30页num_black=black_num(0);xunji_forward_3();}if(num_black==2){stop(0);DelayMs(100);while(num_right<=1){num_right=black_num(1);xunji_forward_3();}stop(0);//到达目的地num_right=0;num_black=0;flag_backward==0;//作为后退的准备}while(flag_backward==0)//后退到赛道中心的程序{back_faward();DelayMs(1000);//等待黑线的过去if(COUNT_RIGHT==1){flag_backward=1;}}turn_left(2);//左转90角度.推第二个目标while(flag_forward==0){xunji_forward_3();第5页共30页第4页共30页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第5页共30页if(COUNT_RIGHT==1){flag_forward=1;//直推完成flag_backward=0;//开始后退的旅程}}while(flag_backward==0){back_faward();if(COUNT_RIGHT==1){flag_backward=1;}}middle_faward(70);DelayMs(100);//避免再碰到黑线stop(0);DelayMs(2);//减缓电机的抖动Eleft(70);while(num_left<=3)//左转180度推第三个目标{num_left=black_num(1);}if(num_left==3){num_left=0;num_black=0;//黑线数清零?}DelayMs(10);第6页共30页第5页共30页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第6页共30页while(flag_forward==0){xunji_forward_3();if(COUNT_RIGHT==1){flag_forward=1;//...