在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<abbr id="27omo"></abbr>

<menu id="27omo"><dl id="27omo"></dl></menu>
    • <label id="27omo"><tt id="27omo"></tt></label>

      新聞中心

      EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 比較簡(jiǎn)單的AVR單片機(jī)超聲波測(cè)距的實(shí)例

      比較簡(jiǎn)單的AVR單片機(jī)超聲波測(cè)距的實(shí)例

      作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò) 收藏

      voidsend40kHz(void)//發(fā)射40KHz超聲波
      {
      count=0;
      TIMSK&=0XDF;//禁止ICP1使能
      OCR2=0X64;
      TCCR2=0X19;
      }
      voidclose40kHz(void)//停止發(fā)射超聲波
      {
      TCCR2=0X00;
      }
      voidhextobcd(unsignedcharm)//將count十六進(jìn)制數(shù)據(jù)轉(zhuǎn)換為L(zhǎng)ED七段碼
      {
      unsignedchartemp;
      temp=m%10;
      ledbuff[0]=tab1[temp];//mm位
      m=m/10;
      temp=m%10;
      ledbuff[1]=tab1[temp];//lm位
      temp=m/10;
      ledbuff[2]=tab2[temp];//m位
      }
      voiddisplay3led(void)//數(shù)碼管顯示
      {
      unsignedchari;
      for(i=0;i<3;i++)
      {
      PORTD=ledbuff[i];
      PORTC=~(1<delay_1ms();
      PORTC=(1<}
      }

      voiddisplay8led(void)//8LED顯示
      {
      if(newcount<10)
      PORTD=0XFE;
      elseif(newcount<20)
      PORTD=0XFD;
      elseif(newcount<30)
      PORTD=0XFB;
      elseif(newcount<40)
      PORTD=0XF7;
      elseif(newcount<50)
      PORTD=0XEF;
      elseif(newcount<100)
      PORTD=0XDF;
      elseif(newcount<180)
      PORTD=0XBF;
      else
      PORTD=0X7F;
      }

      voidmcu_init(void)//MCU初始化
      {
      DDRD=0XFF;
      PORTD=0XFF;
      DDRC=0XDF;//PC5為輸入
      PORTC=0XFF;
      DDRB=0XFE;
      PORTB=0XF7;
      TCNT2=0X00;
      TCNT0=0XC6;//T0定時(shí)58US
      TCCR0=0X02;//T0定時(shí)器1/8分頻
      TCNT1=0X00;
      TCCR1A=0X00;
      TCCR1B=0X81;//輸入捕獲噪音抑制允許,ICP1下降沿觸發(fā),系統(tǒng)時(shí)鐘
      TIMSK=0X01;//使能T0定時(shí)溢出

      }
      voidmain(void)
      {
      unsignedchari;
      mcu_init();
      for(;;)
      {
      send40kHz();
      SREG|=0X80;
      delay_us(50);
      close40kHz();
      delay_us(20);
      TIMSK=0X21;
      if(!(PINC&0X20))//如果插上JD1短路塊,則數(shù)碼管顯示距離
      {
      if(newcount!=oldcount)
      oldcount=newcount;
      hextobcd(oldcount);
      for(i=0;i<20;i++)
      display3led();
      }
      else
      {
      PORTC=0XFF;
      display8led();
      delay_ms(100);
      }
      }

      }

      雙龍SL-SRF-25超聲波避障程序—51單片機(jī)
      /***********************************************************************/
      /*
      廣州雙龍電子
      WWW.SL.COM.CN
      功能:
      超聲波避障,避障距離為10cm;前進(jìn)遇障后退左轉(zhuǎn)彎.
      接線方法:
      52板P1.0(用短線)接超聲波傳感器J1-1(J1插針的第一腳)
      注意:
      用戶可以根據(jù)自已的避障距離,把52板P1.0腳連接到超聲波傳感器的相應(yīng)腳
      以下是避障距離范圍情況:
      1:J1-1避障距離范圍5~9cm
      2:J1-2避障距離范圍10~19cm
      3:J1-3避障距離范圍20~29cm
      4:J1-4避障距離范圍30~39cm
      5:J1-5避障距離范圍40~49cm
      6:J1-6避障距離范圍50~99cm
      7:J1-7避障距離范圍100~179cm
      8:J1-8避障距離范圍180~250cm
      Chiptype:AT89S52
      Clockfrequency:24MHz
      */
      /************************************************************************/
      #include"reg52.h"
      sbitP1_0=P1^0;//定義避障距離檢測(cè)腳
      voiddelay_1ms(void)//1毫秒延時(shí)程序
      {
      unsignedcharj=0,i=8;
      do
      {
      while(--j);
      }
      while(--i);
      }

      voiddelay(unsignedchari)//毫秒級(jí)延時(shí)程序
      {
      while(i--)
      delay_1ms();
      }

      voidforward(void)//LED4~5亮,前進(jìn)
      {
      P0=0XE7;
      P3=0x50;
      }
      voidleft(void)//LED1~3亮,左轉(zhuǎn)
      {
      P0=0XF8;
      P3=0x60;
      }
      voidback(void)//LED全亮,后退
      {
      P0=0;
      P3=0XA0;
      }

      voidinit(void)//端口初始化
      {
      P1|=0X01;//要讀取P1.0,就先寫1
      P0=255;//8LED全不亮
      P3=0;
      }
      /***********************************************************************
      主函數(shù)
      ***********************************************************************/
      voidmain(void)
      {
      init();//系統(tǒng)初始化
      while(1)//循環(huán)
      {
      if(!P1_0)//如果在避障范圍,則后退,左轉(zhuǎn)彎
      {
      back();
      delay(200);//后退200毫秒
      left();
      delay(200);//左轉(zhuǎn)90度.
      }
      else
      {
      forward();
      delay(200);
      }
      }
      }

      上一頁(yè) 1 2 下一頁(yè)

      關(guān)鍵詞: AVR單片機(jī)超聲波測(cè)

      評(píng)論


      相關(guān)推薦

      技術(shù)專區(qū)

      關(guān)閉