欢迎来到天天文库
浏览记录
ID:56758232
大小:48.50 KB
页数:6页
时间:2020-07-07
《智能循迹小车变速转弯程序.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、.#include#defineucharunsignedchar#defineuintunsignedintuchara,i,time_count=0,count=0,Dutycycle0=50,Dutycycle1=50,flag;ucharstate;/***定义电机控制位***/sbitINT11=P0^0;//电机控制位,左电机左,芯片中的总开关sbitINT22=P0^1;//右电机控制位,高电平有效sbitINT33=P0^2;//控制左电机,从而控制其中的车轮sbitINT44=P0^3;sbitfunpwm0
2、=P1^3;///两个控制PWM的端口sbitfunpwm1=P1^4;sbitIO4=P2^0;//ST188输出端口sbitIO1=P2^1;sbitIO2=P2^2;sbitIO3=P2^3;sbitIO5=P0^7;sfrCCON=0xD8;//PCA控制寄存器sbitCCF0=CCON^0;//PCA模块0中断标志sbitCCF1=CCON^1;//PCA模块0中断标志sbitCR=CCON^6;//PCA计数器阵列溢出标志位sbitCF=CCON^7;//PCA计数器阵列运行控制位sfrCMOD=0xD9;//PCA工作模式寄存器s
3、frCL=0xE9;//PCA的16位计数器----低8位sfrCH=0xF9;//PCA的16位计数器----高8位sfrCCAPM0=0xDA;//PCA模块0的输出脉冲频率sfrCCAP0L=0xEA;//PCA捕获、比较寄存器——低位字节sfrCCAP0H=0xFA;//PCA捕获、比较寄存器——高位字节sfrCCAPM1=0xDB;//PCA模块1的输出脉冲频率sfrCCAP1L=0xEB;//同上sfrCCAP1H=0xFB;//同上sfrPCAPWM0=0xf2;//PCA模块0的PWM寄存器sfrPCAPWM1=0xf3;//P
4、CA模块1的PWM寄存器Word文档./*------------------------------------------------uS延时函数,含有输入参数unsignedchart,无返回值unsignedchar是定义无符号字符变量,其值的围是0~255这里使用晶振12M,精确延时请使用汇编,大致延时长度如下T=tx2+5uS------------------------------------------------*/voidDelayUs2x(unsignedchart){while(--t);}/*------------
5、------------------------------------mS延时函数,含有输入参数unsignedchart,无返回值unsignedchar是定义无符号字符变量,其值的围是0~255这里使用晶振12M,精确延时请使用汇编------------------------------------------------*/voidDelayMs(unsignedchart){while(t--){//大致延时1mSDelayUs2x(245);DelayUs2x(245);}}/**************************
6、**速度设定:通过改变参数a,b来来改变两路pwm的占空比数值越大占空比越小*******************************************/voidpwm0(unsignedinta){CCAP0L=a;CCAP0H=a;}voidpwm1(unsignedintb){CCAP1L=b;CCAP1H=b;Word文档.}voidpwm_Init(){CL=0;CH=0;CMOD=0x00;CCAP0H=CCAP0L=0x00;CCAPM0=0x42;CCAP1H=CCAP1L=0x00;CCAPM1=0x42;CR=1;
7、}delay(i){intk,j;for(j=1000;j>0;j--)for(k=200;k>0;k--)i--;}former(){INT11=1;INT22=0;INT33=1;INT44=0;pwm0(45);pwm1(40);DelayMs(1000);}turnleft0()Word文档.{pwm0(130);pwm1(30);DelayMs(1000);}turnright0(){pwm0(30);pwm1(130);DelayMs(1000);}turnleft1(){pwm0(0Xff);pwm1(0);DelayMs(100
8、0);}turnright1(){pwm0(0);pwm1(0Xff);DelayMs(1000);}stop(){INT11=1;INT22=1;I
此文档下载收益归作者所有