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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 3119|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

藍(lán)牙,超聲波,怎樣集合

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:149774 發(fā)表于 2017-2-14 21:37 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
#include <reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
//sfr  T2MOD=0xc9;
sbit in1  =P1^0;
sbit in2  =P1^1;
sbit in3  =P1^2;
sbit in4  =P1^3;
sbit in5  =P1^4;
sbit in6  =P1^5;
sbit in7  =P1^6;
sbit in8  =P1^7;

sbit ina  =P3^4;  //電機(jī)PWM-A
sbit ina2 =P3^5;
sbit inb  =P3^6;  //電機(jī)PWM-B
sbit inb2  =P3^7;

sbit bz_l =P2^0;  //避障左
sbit bz_r =P2^1;  //避障右

sbit moto_pwm =P3^2;//PWM輸出腳控制舵機(jī)

unsigned int  time=0;
unsigned long S=0;

sbit Trig = P0^2;
sbit Echo = P0^3;

uint tt = 0;//變量定義
uint num=0;//變量定義

uchar pwm_lefr=0;//定義 定時(shí)器自加1變量

uchar duojiguizhong=14;//舵機(jī)歸中1.5ms
uchar duojiguizhong1=14;//舵機(jī)歸中1.5ms
uchar tmp,w,sudu;
void Conut();
void  StartModule();
void init() ;
void delay1(uint z)//延時(shí)函數(shù)
{
        uint x,y;
        for(x=z;x>0;x--)
                for(y=120;y>1;y--);
}
void delay(uint z)
{
        uint x,y;
        for(x=0;x<z;x++)
        for(y=0;y<1000;y++);

}


void pwmmaic()//產(chǎn)生PWM
{
        if(pwm_lefr<=duojiguizhong)        
                moto_pwm=1;    //舵機(jī)PWM
                else
                moto_pwm=0;
                if(pwm_lefr>=200)
                pwm_lefr=0;               
}

void duoji_kz()//舵機(jī)控制
{

        duojiguizhong=9;      
        delay(100);  //轉(zhuǎn)頭時(shí)間
        StartModule();
        //Conut();     //測(cè)速運(yùn)行程序就卡死了
       
        duojiguizhong=16;        
        delay(100);

       
        duojiguizhong=24;        
        delay(100);

       
        duojiguizhong=16;        
        delay(100);

}

void qianjin()
{
        in1=1;in2=0;in3=1;in4=0;in5=1;in6=0;in7=1;in8=0;

}   
void houtui()
{
        in1=0;in2=1;in3=0;in4=1;in5=0;in6=1;in7=0;in8=1;

}  
void zuozhuan()
{
        in1=0;in2=1;in3=0;in4=1;in5=1;in6=0;in7=1;in8=0;

}
void youzhuan()
{
        in1=1;in2=0;in3=1;in4=0;in5=0;in6=1;in7=0;in8=1;

}  
void tingzhi()
{
        in1=0;in2=0;in3=0;in4=0;in5=0;in6=0;in7=0;in8=0;

}
void bizhang()        //避障
{
    if(bz_l==1&&bz_r==1)
         qianjin();
        if(bz_l==0&&bz_r==1)
         zuozhuan();
         if(bz_l==1&&bz_r==0)
         youzhuan();
         if(bz_l==0&&bz_r==0)
         {        
                 tingzhi();
                delay(100);
                houtui();
                delay(500);
                zuozhuan();
                delay(200);
                qianjin();
         }
                                                                                                  
}


void  StartModule()                          //啟動(dòng)模塊
{
          Trig=1;                                             //啟動(dòng)一次模塊
          _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()
{
     while(!Echo);//當(dāng)RX為零時(shí)等待
     TR0=1;//開(kāi)啟計(jì)數(shù)
    while(Echo);        //當(dāng)RX為1計(jì)數(shù)并等待
   TR0=0;               
   time=TH0*256+TL0;
   TH0=0;
  TL0=0;
  S=(time*1.7)/100;  //算出來(lái)是CM
}


void init()   //串口初始化
{                                                                       //關(guān)中斷
    SCON =0x50; //串口模式1,允許接收                  
    TMOD =0x20;//定時(shí)器1為模式2 8-bit自動(dòng)裝載方式用于產(chǎn)生波特率
    PCON=0x00;//波特率不倍增
        TH1=0xfd;//波特率9600  11.0592M
        TL1=0xfd;
TH0=0;
TL0=0;
        ET0=1; //        T0中斷允許
        TR0=1; //        啟動(dòng)T0定時(shí)器
        TR1=1; //        啟動(dòng)T1定時(shí)器
        EA=1;
        ES=1;       
        duojiguizhong=16;
        duojiguizhong1=16;
}


void ctrl() //接收處理函數(shù)
{
   switch(tmp)
   {         
     case 1:qianjin();break;                                                     
     case 2:houtui();break;                                                                             
     case 3:zuozhuan();break;
     case 4:youzhuan();break;  
     case 0:tingzhi(); break;
     case 7:duoji_kz();break;        //舵機(jī)         C
     case 8:bizhang();break;        //避障        D

   }
}


void tiaosu () //調(diào)速
{
        switch(sudu)
        {
                                case 5: w=40; break;         //A
                                case 6: w=75; break;         //B               
        }
}


void main()
{
   init();         
   while(1)
   {
        ctrl();
        tiaosu();  
   }
}


void time0() interrupt 1
{  
                                TH0=0xfd;
                                TL0=0xae;
         tt++;
        pwm_lefr++;
        pwmmaic();
        if(tt<w)
        {
                ina=1;
         ina2=1;
                inb=1;
         inb2=1;
        }
        else
        {
                ina=0;
         ina2=0;
                inb=0;
         inb2=0;
        }
        if(tt==100)
        {tt=0;
}
}


void ckzd() interrupt 4
{
        ES=0;
        RI=0;
        tmp=SBUF;
        sudu=SBUF;
        ES=1;
}
問(wèn)下 Conut() 運(yùn)行無(wú)效??是定時(shí)器問(wèn)題嗎?

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

使用道具 舉報(bào)

沙發(fā)
ID:164717 發(fā)表于 2017-2-15 10:01 | 只看該作者
很給力!
回復(fù)

使用道具 舉報(bào)

板凳
ID:149774 發(fā)表于 2017-2-15 21:23 | 只看該作者
沒(méi)高手高速我或給個(gè)思路嗎
回復(fù)

使用道具 舉報(bào)

地板
ID:164859 發(fā)表于 2017-2-16 09:12 來(lái)自手機(jī) | 只看該作者
藍(lán)牙是用來(lái)控制小車(chē)模式還是運(yùn)動(dòng)形式的,可以將藍(lán)牙的命令放在串口中斷中執(zhí)行
回復(fù)

使用道具 舉報(bào)

5#
ID:123289 發(fā)表于 2017-2-16 18:22 | 只看該作者
1、首先藍(lán)牙、超聲波與單片機(jī)在硬件上是如何搭接的。(如:都接串口)
2、兩者的數(shù)據(jù)與單片機(jī)的如何協(xié)議的。(如:波特率、串行格式)
3、程序中當(dāng)有分別處理二者的子程序。
4、系統(tǒng)中二者有數(shù)據(jù)中斷時(shí),各子的處理子程序應(yīng)分別響應(yīng)(或先做標(biāo)記,而后再處理)
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 精品一区二区三区在线观看国产 | 一区二区三区在线免费观看 | 亚洲 成人 av| 久久综合爱 | 欧美一区二区三区久久精品 | 中文一区二区 | 欧美成人aaa级毛片在线视频 | 九色在线视频 | 黄色三级免费 | 韩日一区二区三区 | 欧美综合久久久 | 成人h视频在线 | 成人h动漫精品一区二区器材 | 久久久久久久一区 | 一级日韩 | 成人av电影免费在线观看 | 欧美精品一区在线发布 | 综合一区二区三区 | 一级毛片播放 | 亚洲成人精品在线观看 | 毛片一级片 | 91成人在线视频 | 正在播放国产精品 | 美女在线一区二区 | 国产a一区二区 | 在线资源视频 | 日韩视频一区二区 | 精品日韩一区二区 | 亚洲精品久久久久久首妖 | 亚洲第一av| 国产高清视频一区 | 超碰电影 | 最新中文字幕久久 | 精品久久不卡 | 我要看黄色录像一级片 | 亚洲精品www久久久久久广东 | 欧美xxxx性xxxxx高清 | 亚洲久久| 国产精品久久久久aaaa樱花 | 亚洲天堂av一区 | av电影一区二区 |