欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1788|回復: 0
打印 上一主題 下一主題
收起左側

求大神看一下這個四驅藍牙小車程序,芯片STC89C52,電機L298N,藍牙HC06

[復制鏈接]
跳轉到指定樓層
樓主
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char

sbit IN1=P1^0;//定義控制左邊電機的單片機引腳
sbit IN2=P1^1;//定義控制左邊電機的單片機引腳
sbit IN3=P1^2;//定義控制右邊電機的單片機引腳
sbit IN4=P1^3;//定義控制右邊電機的單片機引腳

sbit IN5=P2^0;//定義控制左邊電機的單片機引腳
sbit IN6=P2^1;//定義控制左邊電機的單片機引腳
sbit IN7=P2^2;//定義控制右邊電機的單片機引腳
sbit IN8=P2^3;//定義控制右邊電機的單片機引腳

uchar a=0;//定義一個變量a用來讀取串口的數據

void UART_INIT()//初始化子程序
{
        TMOD=0x20; //設置定時器T1為工作方式2
        TH1=0xfd;
        TL1=0xfd;//T1定時器裝初值
        TR1=1;//啟動定時器T1                                                  
        REN=1;//允許串口接收
        SM0=0;
        SM1=1;//設置串口工作方式1
        EA=1; //開總中斷
        ES=1;//開串口中斷
}
void QIAN()
{
        IN1=0;
        IN2=1;//左邊輪子正轉
        IN3=0;
        IN4=1;//右邊輪子正轉
         
        IN5=0;
        IN6=1;//左邊輪子正轉
        IN7=0;
        IN8=1;//右邊輪子正轉
       
}
void HOU()
{
        IN1=1;
        IN2=0;//左邊輪子倒轉
    IN3=1;
        IN4=0;//右邊輪子倒轉
       
        IN5=1;
        IN6=0;//左邊輪子倒轉
    IN7=1;
        IN8=0;//右邊輪子倒轉

}
void ZUO()//小車左轉程序
{
        IN1=1;
        IN2=0;        //左輪制動
    IN3=0;
        IN4=1;        //右輪正轉
       
        IN5=1;
        IN6=0;        //左輪制動
    IN7=0;
        IN8=1;        //右輪正轉


}

void YOU()//小車右轉程序
{
        IN1=0;
        IN2=1;        // 左邊輪子正轉
        IN3=0;          //右輪停止
    IN4=1;


    IN5=0;
        IN6=1;        // 左邊輪子正轉
        IN7=0;          //右輪停止
    IN8=1;

   }

void TING()//停止程序
{
        IN1=1;
        IN2=1;
        IN3=1;
        IN4=1;
    IN5=1;
        IN6=1;
        IN7=1;
        IN8=1;
}


void main()//主程序
{

        init();//調用初始化子程序
        while(1) //死循環
        {
                switch(a)//判斷a從串口讀取到的數據
                {
                case 0x4f: //0x1f 前進
                QIAN();
                break;
               
                case 0x3f: //0x2f 后退
                HOU();
                break;
               
                case 0x2f: // 0x3f 左轉
                ZUO();
                break;
               
                case 0x1f: //0x4f右轉
             YOU();
                break;
               
                case 0x00: //0x00停止
                TING();
                break;
                }
                       
        }
}

void UART_SER() interrupt 4//串口中斷服務
{
        RI=0;//軟件清除串口響應
        a=SBUF;//讀取單片機串口接收的藍牙模塊發送的數據
}

235933q8isjes38ep3t7v8.png (396.76 KB, 下載次數: 25)

235933q8isjes38ep3t7v8.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表