久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

51單片機智能循跡避障計數小車程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:933150 發表于 2021-7-20 23:03 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
      這次我做的一個智能小車項目,可以延著黑線循跡,小于50cm自動避障,計數等等功能。

小車的功能如下:

1)開關S1控制全功能按鈕。按一下開關S1開啟全功能模塊,長按S1, 2s及以上時間退出。全功能模塊主要包括循跡跟著黑色線循跡,小車根據紅外識別結果進行循跡;到達停止線之后結束循跡,執行繼續前行任務,然后路過黑色計數線,統計路過的黑線條數;接著繼續前行直到前方50cm遇到障礙物右轉;右轉之后遇到黑線停止;結束任務,結束之后4個LED 以二進制的形式顯示計數結果;

(2)開關 S2 為紅外控制按鈕。按一下開關S2開啟紅外測試模式,4個紅外對應4個燈,紅外檢測到黑線對應的燈亮;長按 S2,2s及以上時間退出;

(3)開關 S3 為電機控制按鈕。按一下開關 S3 電機正轉,車子全速往前走;連續按兩下開關S3電機反向,全速倒退;長按 S3,2s及以上時間退出;  

(4)開關S4為電機控制按鈕。開啟S3的情況下。按一下 S4,車子轉速變為原來的一半,連續按兩下恢復原速。

在后面,我用了藍牙作為開關,實訓了用手機控制小車。

(5)這里用到3個定時器,寫的不好的地方,各位大佬多多指教.

代碼如下:

#include "wave.h"
#include "ray.h"


//定時器0用于pwm
void time0Init();//定時器0的初始化
void time0FW();

//定時器1用于藍牙模塊
void time1Init();//定時器1的初始化
void Bluetooth();//處理藍牙接收到的信息


uint pwm=60;      //表示啟動的時間,60表示啟動60ms
uint toray=0;//是否開啟循跡功能
uint count=0; //用于計數
uchar bloothFlag;
void main(void)
{
    EA=1;//打開總中斷
    time0Init();//定時器0初始化
      time2Init();//定時器2初始化
    start();//使車的方向一開始向前
     
    while(1)
            
    {
      time1Init();//定時器1初始化
        
        if(toray)
           ray();
                    if( bloothFlag%2)
                {
                     wave();

        }
                    if( bloothFlag%1)
                {
                    time1Init();//定時器1初始化
        }
        if(count>=100) //100ms一個周期
            count=0;
        if(count<pwm) //pwm表示啟動的時間
                      //pwm越大 速度越快
           forward();
        else if(count>=pwm)
           stop();
    }

}


void time0Init()//定時器0的初始化.
                //用于控制高低電平的時間
                //定時器比較準確
{
    TMOD|=0x01;//工作方式一
                //用或運算是為了不改變
                //定時器1對應位的值。
    TH0=0xfc;
    TL0=0x66;  //定時1ms

    ET0=1;//開啟定時器0的中斷
    TR0=1;//啟動定時器0
}

void time0FW() interrupt 1   //定時器0的服務函數
{
    TH0=0xfc;
    TL0=0x66;
    //1ms 中斷一次,count加一
    count++;
}

void time1Init()//定時器1的初始化
{
    TMOD=0x20;//定時器1,工作模式2,8位自動重裝模式
    TH1=0xfd;//9600波特率,要與藍牙的一致
    TL1=0xfd;
    //串口通信方式1
    SM0=0;
    SM1=1;
    PCON=0x00;//波特率不加倍
    SCON=0x50;//工作方式一
    REN=1;//允許接收
    ES=1;//開啟串口中斷
    TR1=1;//啟動定時1

}

void Bluetooth() interrupt 4 //中斷4
//處理藍牙接收到的信息
{
      uchar shuju;
    //等待接收完畢
    while(!RI);//當RI為0時沒有接收完畢
        
    //信息存存在sbuf中
    shuju=SBUF;//獲取接收的信息
    switch(shuju)
    {
        case 'f':  //前進
            forward();
            break;
        case 'b': //后退
            back();
            break;
        case 'l': //左轉
            turnLeft();
            break;
        case 'r': //右轉
            turnRight();
            break;
        case 's':    //停止
            stop();
            break;
        case 'o':
            start();
            break;//啟動
        case 't': //開啟循跡功能
            toray=1;
            break;
                case 'z': //開啟避障功能
                {
                  wave();
                    bloothFlag++;
                }
                break;
            case '1':  //一檔
            pwm=20;
            break;
        case '2':  //二檔
            pwm=40;
            break;
        case '3': //三檔
            pwm=60;
        case '4': //四檔
            pwm=80;
            break;  
                case '5': //五檔
            pwm=100;
            break;
               
        default:
            break;
    }

}

有寫的不好地方,請各位大佬多多指教
全部代碼51hei附件下載地址:
智能循跡避障小車.zip (67.48 KB, 下載次數: 20)


評分

參與人數 1黑幣 +40 收起 理由
admin + 40 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 剑来高清在线观看 | 欧美一级小视频 | 天堂素人约啪 | 久久国产精品亚洲 | 国产欧美精品一区 | 国产综合网址 | 中文字幕一区二区三区不卡 | 中文字幕在线免费 | 亚洲精品久久久久久一区二区 | 亚洲免费一区二区 | 在线观看视频亚洲 | 欧美激情综合网 | 欧美在线观看一区 | 日韩国产欧美视频 | 九九久久精品 | 国产日韩欧美一区 | 欧美日韩精品一区二区三区四区 | 国产伦精品一区二区三区高清 | 久久精品99| 免费在线观看一区二区三区 | 久久精品国产一区二区三区不卡 | 国产欧美日韩二区 | 国产日韩欧美在线观看 | 亚洲一区二区久久 | 精品亚洲第一 | 97碰碰碰 | 国产一区二区精品在线观看 | 国产三区av | 欧美九九九 | 欧美成人在线网站 | 亚洲欧美一区在线 | 精品亚洲一区二区 | 久久久久亚洲精品 | 亚洲精选一区二区 | 日韩一级 | 欧美在线天堂 | 午夜精品视频在线观看 | 久久69精品久久久久久久电影好 | 国产欧美一区二区三区在线播放 | 日韩一区欧美一区 | 色婷婷av99xx|