智能循迹小车程序
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
//D0-D7:f,b,a,e,d,h,c,g 共阴 依次编码
//74LS04反相器驱动数码管
uchar code table[10] = {0x5F,0x42,0x9E,0xD6,0xC3,0xD5,0xDD,0x46,0xDF,0xD7};
uchar i = 0; //用于0-3数码管轮流显示
uint j = 0;
//计时的次数 uint time=0; uint pwm=16; uint speed; //计时 //占空比 //调制PWM波的当前的值
sbit R=P3^2; //右边传感器 P3^2
sbit L=P3^3; //左边传感器 P3^3
//电机驱动口定义
sbit ENB=P1^0; //前轮电机停止控制使能
sbit ENA=P1^1; //后轮控制调速控制端口
sbit IN1=P1^2;
sbit IN2=P1^3;
sbit IN3=P1^4;
sbit IN4=P1^5;
void Init()
{
TMOD = 0x12;
//定时器0用方式2,定时器1用方式1 //前轮 //前轮 //后轮 //后轮 TH0=(256-200)/256; //pwm
TL0=(256-200)/256;
TH1 = 0x0F8; //定时2ms
TL1 = 0x30;
EA = 1;
ET0 = 1; ET1 = 1; TR0 = 1;
TR1 = 1;
}
void tim0(void) interrupt 1 //产生PWM
{
speed ++; if(speed <= pwm) //pwm 就相当于占100的比例
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库智能循迹小车程序[1]在线全文阅读。
相关推荐: