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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

我有個小車 需要一個超聲波(有云臺) 壁障小車程序 麻煩各位哥哥姐姐咯

[復制鏈接]
跳轉到指定樓層
樓主
ID:275019 發表于 2018-1-13 16:08 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
500黑幣
我的單片機用的是C51  小車電機占的IO口 為P2口  前左電機為P1-0(正傳)和P-1(反轉)前右電機P2-2(正轉)和P2-3(反轉) 后左電機P-4(正轉)和P2-5反轉  后右電機P2-6(正轉)和P2-7(反轉)   。 其中(電機  正反轉只需  其中一個為1 另一個為0);
其中 超聲波  輸出口為P1-0口 接收口為P3-2口
  舵機輸出口為P1-1口;

先謝過 各位哥哥姐姐咯   ;需要一個能超聲波壁障的程序    其他程序都不用

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

使用道具 舉報

來自 2#
ID:275019 發表于 2018-1-14 17:23 | 只看該作者
/*****花了  幾天的時間寫出來了   對于我這初學者 還是蠻開心的*************/


#include<reg52.h>
#define car P2
#include <intrins.h>    //nop頭文件
typedef unsigned int u16;
typedef unsigned char u8;
sbit car_0 = P2^0;       //前左電機正轉
sbit car_1 = P2^1;       //前左電機反轉
sbit car_2 = P2^2;       //前右電機正轉
sbit car_3 = P2^3;       //前右電機反轉
sbit car_4 = P2^4;       //后左電機正轉
sbit car_5 = P2^5;       //后左電機反轉
sbit car_6 = P2^6;       /后右電機正轉
sbit car_7 = P2^7;       // 后右電機反轉
sbit trig  = P1^0;       //超聲波輸出口
sbit echo  = P3^2;       //超聲波接收口
sbit dj    = P1^1;       //舵機控制口
u16 time,S,S1,S2,S3,S4,push_val_left,pwm_val_left,timer;
#define Left_moto_go    {car_0=0,car_1=1,car_4=0,car_5=1;}   //左邊兩個電機向前走#define Left_moto_back  {car_0=1,car_1=0,car_4=1,car_5=0;}         //左邊兩個電機向后走#define Left_moto_Stop  {car_0=1,car_1=1,car_4=1,car_5=1;}         //左邊兩個電機停止
#define Right_moto_go   {car_2=0,car_3=1,car_6=0,car_7=1;}         //右邊兩個電機向前走
#define Right_moto_back {car_2=1,car_3=0,car_6=1,car_7=0;}         //右邊兩個電機向后走
#define Right_moto_Stop {car_2=1,car_3=1,car_6=1,car_7=1;}         //右邊兩個電機停止
/************************************************************************/
//前進
void qianj(void)                   //前進
{
        Left_moto_go ;                
        Right_moto_go ;               
}
/************************************************************************/
void hout(void)                                   //后退
{
        Left_moto_back ;        
        Right_moto_back ; }  
/************************************************************************/
//左轉                         
void zuoz(void)
{
        Left_moto_back ;       
        Right_moto_go ;        
//        zxdzz ();                          
}
/************************************************************************/
//右轉
void youz(void)                        
{
        Left_moto_go ;                
        Right_moto_back ;           
//        zxdyz ();                                 
}
/************************************************************************/
//STOP
void tingz(void)                           //停止
{                                                 
        Left_moto_Stop ;                  
        Right_moto_Stop ;        
//        zxdgd ();                       
}
/************************************************************************/
//超聲波發射信號
void StartModule()
{
         trig = 1
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        trig=0;
}
/***************************************************/
/**************************************************/
void         Conut (void) //計算距離
{
                while(!echo);   
                TR0=1;           
                while(echo);   
                TR0=0;         
                time=TH0*256+TL0
                TH0=0;
                TL0=0;
                S=(time*1.7)/100

}


void COMM( void )         //方向判斷
{

        push_val_left=5;
        timer=0;
        while(timer<=4000);
        StartModule();     
        Conut();           
        S2=S;
       
        push_val_left=23;
        timer=0;
        while(timer<=4000);
        StartModule();     
        Conut();         
        S4=S;
       
        push_val_left=13;   
        timer=0;
        while(timer<=4000);
        StartModule();     
        Conut();         
        S1=S;
       
        if((S2<20)||(S4<20)
        {
                hout();         
                timer=0;
                while(timer<=4000);
        }

        if(S2>S4)
        {
                youz();      
                timer=0;
                while(timer<=4000);
        }
        else
        {
                        zuoz();     
                        timer=0;
                while(timer<=4000);
        }
}


void main (void)
{
          push_val_left =  13;
    car = 0xff;
          TMOD = 0x11;
          TH1 = 0x0FF;
    TL1 = 0x0A4;
          ET1 = 1;
          TR1 = 1;
          TH0 = 0;
    TL0 = 0;
    ET0 = 1;
          EA = 1;
  while(1)
        {        

       
                        if(timer>=1000)
                        {
                                timer = 0;
                                StartModule();
                                Conut();
                                if(S<45)
                                {
                                        hout();
                                        hout();
                                        hout();
                                        tingz();
                                        COMM();
                                }
                                else
                                        if(S>45)
                                        qianj();
                        }
        }


        }

/***************************************************/
///定時器3
void pwmdins()interrupt 3
{

    TH1 = 0x0FF;
    TL1 = 0x0A4;
    timer++;                                       
          pwm_val_left++;                                         
          if(pwm_val_left<=push_val_left)
               dj = 1;
           else
              dj = 0;
           if(pwm_val_left>=200)
              pwm_val_left=0;         
                          

}


避障.zip

39.18 KB, 下載次數: 9

回復

使用道具 舉報

板凳
ID:265553 發表于 2018-1-13 23:44 | 只看該作者
我也是初學都 ,
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品一区二区久久精品爱微奶 | 婷婷丁香综合网 | 黑人精品 | 日韩视频中文字幕 | 全免费a级毛片免费看视频免 | 国产成人免费视频 | 99re在线视频 | 日本免费一区二区三区 | 91亚洲精品在线 | 大陆一级毛片免费视频观看 | 中文字幕av亚洲精品一部二部 | 亚洲精品久久久久久久久久久 | 成人免费福利 | 日日天天| 黄色片大全在线观看 | 欧美黑人体内she精在线观看 | 久久久精品综合 | 久久99网| 野狼在线社区2017入口 | v片网站 | 日韩精品一区二区三区在线播放 | 亚洲精品久久久一区二区三区 | 日韩欧美一区二区三区免费看 | 国产99精品 | 久久夜夜| 亚洲狠狠| 国产成人综合久久 | 免费影视在线观看 | 精品国产一区二区在线 | www.4hu影院 | 精品二三区 | 国产一级视频在线播放 | 免费看一区二区三区 | 午夜99 | 一级a爱片久久毛片 | 玖玖视频免费 | 精品一区二区三区在线观看国产 | av天天干 | 久久久久国产一级毛片高清网站 | www网站在线观看 | 91精品国产乱码久久久久久 |