|
/*~~~~~~~~~~~~~藍牙小車~~~~~~~~~~~~~*/
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit IN1=P2^1;//前驅動電機
sbit IN2=P2^2;
sbit IN3=P2^6;
sbit IN4=P2^4;
//sbit IN5=P1^1;//后驅動電機
//sbit IN6=P1^2;
//sbit IN7=P1^3;
//sbit IN8=P1^4;
#define quan_go IN1=1,IN2=0,IN3=1,IN4=0//,IN5=0,IN6=1,IN7=1,IN8=0 //全前進
#define quan_hui IN1=0,IN2=1,IN3=0,IN4=1//,IN5=1,IN6=0,IN7=0,IN8=1 //全后退
#define quan_down IN1=0,IN2=0,IN3=0,IN4=0//,IN5=0,IN6=0,IN7=0,IN8=0 //全停
#define turn_left IN1=0,IN2=0,IN3=1,IN4=0//,IN5=0,IN6=0,IN7=1,IN8=0 //右側前進
#define turn_right IN1=1,IN2=0,IN3=0,IN4=0//,IN5=0,IN6=1,IN7=0,IN8=0 //左側前進
uchar a;
void go()
{
quan_go;
}
void hui()
{
quan_hui;
}
void stop()
{
quan_down;
}
void turnleft()
{
turn_left;
}
void turnright()
{
turn_right;
}
void init()
{
TMOD=0x20;//T1定時模式,方式2
TH1=0xFd;//T1定時器初值
TL1=0xFd;
SCON=0x50;//工作方式1,10位異步收發器,波特率可變
PCON=0x00;//波特率不加倍
TR1=1;//T1運行控制位
ES=1;//串口中斷允許位
EA=1;
}
void main()
{
init();
while(1)
{
if(a=='A') go();
else if(a=='B') hui();
else if(a=='C')turnleft();
else if(a=='D') turnright();
else stop();
}
}
void serial() interrupt 4
{
a=SBUF;//讀取數據
RI=0;//軟件清除串口響應
}
|
-
-
藍牙05.zip
2021-2-6 21:54 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
4.26 MB, 下載次數: 8, 下載積分: 黑幣 -5
|