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

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

QQ登錄

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

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

單片機(jī)pwm和三個(gè)超聲波一起,但是超聲波用不了,不知道問(wèn)題出在哪,求大神指點(diǎn)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:480013 發(fā)表于 2019-3-5 22:19 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
#include"reg51.h"
#include<intrins.h>
#define PWM_T 100    //pwm周期100
unsigned char speed_L;    //左輪脈寬調(diào)值
unsigned char speed_R;     //右輪脈寬調(diào)值
unsigned char pwm_speed;  //定義自加變量
unsigned long time;     //讀取時(shí)間
unsigned long s;
unsigned long s1;
unsigned long s2;    //保存計(jì)算距離
sbit DA_L=P3^6;
sbit DA_R=P3^7;          //PWM高低電平輸出口
sbit L_1=P2^0;
sbit L_2=P2^1;          //左電機(jī)
sbit R_1=P2^2;
sbit R_2=P2^3;           //右電機(jī)
sbit RX=P1^0;                    //超聲波接收
sbit TX=P1^1;        //超聲波發(fā)送
sbit RX_1=P1^2;                    ///超聲波接收
sbit TX_1=P1^3;         //超聲波發(fā)送
sbit RX_2=P1^4;                    //超聲波接收
sbit TX_2=P1^5;       //?超聲波發(fā)送
void delay(unsigned char x)
{
  while(x--);
}            
void count()
{   
while(!RX);
TR0=1;
while(RX);
TR0=0;
    time=TH0*256+TL0;
TH0=0;
TL0=0;
s=(time*1.7)/100;
}
void count1()
{   
while(!RX_1);
TR0=1;
while(RX_1);
TR0=0;
    time=TH0*256+TL0;
TH0=0;
TL0=0;
s1=(time*1.7)/100;
}
void count2()
{   
while(!RX_2);
TR0=1;
while(RX_2);
TR0=0;
    time=TH0*256+TL0;
TH0=0;
TL0=0;
s2=(time*1.7)/100;
}
void status(unsigned char i)
{
   switch(i)
   {
     case 0: L_1=1; L_2=0; R_1=1; R_2=0;    break;     //前進(jìn)
  case 1: L_1=0; L_2=1; R_1=0; R_2=1;    break;     //后退
  case 2: L_1=1; L_2=0; R_1=0; R_2=1;    break;     //右轉(zhuǎn)
  case 3: L_1=0; L_2=1; R_1=1; R_2=0;    break;     //左轉(zhuǎn)
  case 4: L_1=0; L_2=0; R_1=0; R_2=0;    break;     //停止
   }      
}
void main()               
{
   TMOD|=0x11;   
   TH0=0;
   TL0=0;      
   ET0=1;
   TH1=(65536-1000)/256;
   TL1=(65536-1000)%256;   
   ET1=1;
   EA=1;         
   TR1=1;     
   
      while(1)      
      {  
   TX=1;
   delay(2);
   TX=0;
   count();
   TX_1=1;
   delay(2);
   TX_1=0;
   count1();
   TX_2=1;
   delay(2);
   TX_2=0;
      count2();
   if(s<=20&&s1<=20&&s2<=20)
   {
    speed_L=100;
    speed_R=100;
    status(1);
   }
   else if(s1<=20&&s<=20&&s2>=20)
   {
    speed_L=20;
    speed_R=100;
    status(0);
   }
   else if(s1>=20&&s<=20&&s2<=20)
   {
    speed_L=100;
    speed_R=20;
    status(0);
   }
   else
   {
    speed_L=100;
    speed_R=100;
    status(0);
   }
      
   }
}
void csbyc() interrupt 1
{
}
void time0_pwm()interrupt 3   
{
  TH1=(65536-1000)/256;
  TL1=(65536-1000)%256;
  if(pwm_speed<=PWM_T)
  {
     pwm_speed++;
  }
  else
  {
    pwm_speed=0;
  }           
  if(pwm_speed<speed_L)      
  {
    DA_L=1;
  }
  else
  {
    DA_L=0;        
  }
  if(pwm_speed<speed_R)
  {
    DA_R=1;
  }
  else
  {
    DA_R=0;
  }
}              
/*加一個(gè)超聲波就能用,但是兩個(gè)以上就不行了,試了好多種方法了,兩個(gè)以上時(shí)pwm也能用。現(xiàn)在是程序燒進(jìn)去小車總保持第一個(gè)狀態(tài)有時(shí)候改了些東西就沒(méi)反應(yīng)了。求大神指點(diǎn)下,哪里出的毛病,想好幾天了,一點(diǎn)進(jìn)展都沒(méi)有。*/


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

使用道具 舉報(bào)

沙發(fā)
ID:480013 發(fā)表于 2019-3-5 22:21 | 只看該作者
原程序里if中s<=20有括號(hào)括著
回復(fù)

使用道具 舉報(bào)

板凳
ID:480013 發(fā)表于 2019-3-7 15:26 來(lái)自手機(jī) | 只看該作者
求大神指點(diǎn)啊
回復(fù)

使用道具 舉報(bào)

地板
ID:480013 發(fā)表于 2020-10-31 09:28 | 只看該作者
這個(gè)問(wèn)題以前已經(jīng)解決了,能用的,只是因?yàn)闆](méi)有連接外設(shè),程序被卡在了循環(huán)等待超聲波返回
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 激情久久久久 | 一区二区在线免费播放 | 国产精品不卡一区 | 久久精品亚洲国产奇米99 | 日本韩国电影免费观看 | 久久成人高清视频 | 久久精品国产精品青草 | 久久久久国产精品 | 成人美女免费网站视频 | 国产美女久久 | 青青草在线播放 | 久久精品国产久精国产 | 亚洲成av人片在线观看 | 一区二区视频在线 | www.av在线| 国产一区二区视频在线观看 | 国产在线资源 | 久久夜夜 | 欧美自拍第一页 | 欧美一级免费看 | www.亚洲| 中文字幕视频在线观看免费 | 欧美在线一区视频 | 色综合美女 | 一级毛片免费 | 91在线精品秘密一区二区 | 91看片在线观看 | 干狠狠| 九九av | 日韩电影免费观看中文字幕 | 亚洲国产一区二区视频 | 一本一道久久a久久精品蜜桃 | 亚洲经典一区 | 国产成人精品一区二区 | 亚洲一区二区三区免费在线观看 | 久久久免费 | 午夜日韩视频 | 最新黄色毛片 | 天天射天天干 | 国产精品日日做人人爱 | 91麻豆久久久 |