亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? nointr.c

?? MikroC source code to control a robot. Uses PIC microcontroller
?? C
字號:
////////////////////////////declarations/////////////////////////////
  int i;
  int count = 0;
  int countb = 0;
  short int PWM_flag = 1;  //PWM_flag --->flag to set speed of motors

  void forward();
  void reverse();
  void stop();
  void fwdLeft();
  void fwdRight();
  void revLeft();
  void revRight();
  void left();
  void right();
  void manual();
  void obstacle();
/////////////////////////////////////////////////////////////////////
////////////////////////////Main function////////////////////////////
void main()
{
  Pwm_Init(2000);
  PORTB = 255;
  TRISB = 249;
  PORTC = 0;
  TRISC = 0;
  PORTD = 255;
  TRISD = 255;
  while(1)
  {
    while(PORTD!=15)
    {
      obstacle();
      count++;
      if(count == 15)
      {
        Pwm1_stop();
        Pwm2_stop();
        break;
      }
    }
    manual();
    count = 0;
  }
}
/////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////

////////////////*** Manual operator control routine ***//////////////
void manual()
{
  if((PORTB&0xF0)==16)          //forward
    forward();
  else if((PORTB&0xF0)== 32)    //reverse
    reverse();
  else if((PORTB&0xF0)== 48)    //toggle horn
    {
      PORTB.F1 = 0;
      delay_ms(250);
      PORTB.F1 = 1;
    }
  else if((PORTB&0xF0)== 64)    //sharp left
    left();
  else if((PORTB&0xF0)== 80)    //gradual forward left
    fwdLeft();
  else if((PORTB&0xF0)== 96)    //gradual reverse left
    revLeft();
  else if((PORTB&0xF0)== 112)   //Slower speed (PWM max duty = 80%)
    PWM_flag = 0;
  else if((PORTB&0xF0)== 128)   //sharp right
    right();
  else if((PORTB&0xF0)== 144)   //gradual forward right
    fwdRight();
  else if((PORTB&0xF0)== 160)   //gradual reverse right
    revRight();
  else if((PORTB&0xF0)== 176)   //high speed (PWM max duty = 100%)
    PWM_flag = 1;
  else                          //stop
    stop();
}
/////////////////////////end of manual control///////////////////////

//////////////////*** obstacle avoidance routine ***/////////////////
void obstacle()
{
   if((PORTD&0x0F)== 3)         //Obstacle behind
    {
      forward();
    }
   else if((PORTD&0x0F)== 7)    //Obstacle behind towards left
    {
       fwdLeft();
    }
   else if((PORTD&0x0F)== 11)   //Obstacle behind towards right
     {
       fwdRight();
     }
   else if((PORTD&0x0F)== 12)   //Obstacle in front
     {
       reverse();
     }
   else if((PORTD&0x0F)== 13)   //Obstacle in front towards right
     {
       revRight();
     }
   else if((PORTD&0x0F)== 14)   //Obstacle in front towards left
    {
      revLeft();
    }
   else                         //Obstacle blocking both front and behind
     {
       right();
       countb++;
       for(i=0;i<=7;i++)
       {
         PORTB.F1 = ~PORTB.F1;;
         delay_ms(250);
         if((i==2)||(i==6))
         {
           PORTB.F1 = 0;
           delay_ms(800);
         }
       }
       if(countb == 20)
       {
         stop();
         for(i=0;i<=99000;i++)
           manual();
         countb = 0;
       }
     }
}
//////////////////////end of obstacle avoidance//////////////////////


/////////////////////////////////////////////////////////////////////
/////////////////////*** Motor Control Routines ***//////////////////
void forward()    //function for forward motion
{
    if(PWM_flag == 1)
    {
      Pwm1_Change_Duty(255);
      Pwm2_Change_Duty(255);
    }
    else
    {
      Pwm1_Change_Duty(178);
      Pwm2_Change_Duty(178);
    }
    Pwm1_Start();
    Pwm2_Start();
    PORTC.F3 = 1;
    PORTC.F4 = 0;
    PORTC.F5 = 1;
    PORTC.F6 = 0;
}

void reverse()      //function for reverse motion
{
    if(PWM_flag == 1)
    {
      Pwm1_Change_Duty(255);
      Pwm2_Change_Duty(255);
    }
    else
    {
      Pwm1_Change_Duty(178);
      Pwm2_Change_Duty(178);
    }
    Pwm1_Start();
    Pwm2_Start();
    PORTC.F3 = 0;
    PORTC.F4 = 1;
    PORTC.F5 = 0;
    PORTC.F6 = 1;
}

void stop()       //function to stop
{
    Pwm1_Stop();
    Pwm2_Stop();
    PORTC.F3 = 0;
    PORTC.F4 = 0;
    PORTC.F5 = 0;
    PORTC.F6 = 0;
    PORTC.F1 = 0;
    PORTC.F2 = 0;
}

void fwdLeft()       //function for forward-left turning
{
    if(PWM_flag == 1)
    {
      Pwm1_Change_Duty(178);
      Pwm2_Change_Duty(255);
    }
    else
    {
      Pwm1_Change_Duty(127);
      Pwm2_Change_Duty(178);
    }
    Pwm1_Start();
    Pwm2_Start();
    PORTC.F3 = 1;
    PORTC.F4 = 0;
    PORTC.F5 = 1;
    PORTC.F6 = 0;
}

void fwdRight()        //function for forward-right turning
{
    if(PWM_flag == 1)
    {
      Pwm1_Change_Duty(255);
      Pwm2_Change_Duty(178);
    }
    else
    {
      Pwm1_Change_Duty(178);
      Pwm2_Change_Duty(127);
    }
    Pwm1_Start();
    Pwm2_Start();
    PORTC.F3 = 1;
    PORTC.F4 = 0;
    PORTC.F5 = 1;
    PORTC.F6 = 0;
}

void revLeft()         //function for reverse-left turning
{
    if(PWM_flag == 1)
    {
      Pwm1_Change_Duty(178);
      Pwm2_Change_Duty(255);
    }
    else
    {
      Pwm1_Change_Duty(127);
      Pwm2_Change_Duty(178);
    }
    Pwm1_Start();
    Pwm2_Start();
    PORTC.F3 = 0;
    PORTC.F4 = 1;
    PORTC.F5 = 0;
    PORTC.F6 = 1;
}

void revRight()        //function for reverse-right turning
{
    if(PWM_flag == 1)
    {
      Pwm1_Change_Duty(255);
      Pwm2_Change_Duty(178);
    }
    else
    {
      Pwm1_Change_Duty(178);
      Pwm2_Change_Duty(127);
    }
    Pwm1_Start();
    Pwm2_Start();
    PORTC.F3 = 0;
    PORTC.F4 = 1;
    PORTC.F5 = 0;
    PORTC.F6 = 1;
}

void left()        //function for sharp left turning
{
    if(PWM_flag == 1)
    {
      Pwm1_Change_Duty(255);
      Pwm2_Change_Duty(255);
    }
    else
    {
      Pwm1_Change_Duty(178);
      Pwm2_Change_Duty(178);
    }
    Pwm1_Start();
    Pwm2_Start();
    PORTC.F3 = 0;
    PORTC.F4 = 1;
    PORTC.F5 = 1;
    PORTC.F6 = 0;
}

void right()        //function for sharp right turning
{
    if(PWM_flag == 1)
    {
      Pwm1_Change_Duty(255);
      Pwm2_Change_Duty(255);
    }
    else
    {
      Pwm1_Change_Duty(178);
      Pwm2_Change_Duty(178);
    }
    Pwm1_Start();
    Pwm2_Start();
    PORTC.F3 = 1;
    PORTC.F4 = 0;
    PORTC.F5 = 0;
    PORTC.F6 = 1;
}
///////////////////////end of motor control routines/////////////////
/////////////////////////////////////////////////////////////////////


////////////////////////////END OF PROGRAM///////////////////////////

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲免费毛片网站| 久久精品亚洲麻豆av一区二区 | 国产精品美女视频| 一区二区三区四区乱视频| 亚洲影院在线观看| 久久国产精品99久久久久久老狼 | 国产精品网站一区| 一区二区三区在线免费播放 | 精品久久人人做人人爽| 国产精品网站在线播放| 亚洲mv在线观看| 国产福利精品导航| 精品视频色一区| 欧美激情在线看| 视频一区免费在线观看| 丁香桃色午夜亚洲一区二区三区 | 国产精品性做久久久久久| 99精品黄色片免费大全| 欧美一区二区成人| 亚洲色图在线看| 蜜臀av性久久久久av蜜臀妖精| 99久久久精品免费观看国产蜜| 制服丝袜亚洲播放| 亚洲欧美经典视频| 国模一区二区三区白浆| 欧美日精品一区视频| 久久精品视频在线看| 亚洲综合激情另类小说区| 国产精选一区二区三区| 欧美日韩国产首页| 国产精品电影一区二区三区| 精品一区二区三区久久久| 欧美日韩在线播放三区四区| 国产精品美女久久久久久| 激情综合亚洲精品| 欧美日韩精品是欧美日韩精品| 国产精品午夜免费| 精品中文字幕一区二区| 337p亚洲精品色噜噜噜| 亚洲黄色小视频| 成人av第一页| 久久婷婷国产综合精品青草| 性做久久久久久久免费看| 99re热这里只有精品视频| 久久蜜桃av一区精品变态类天堂| 亚洲成av人片一区二区| 色综合夜色一区| 中文字幕免费不卡在线| 精品亚洲成a人在线观看| 欧美日韩在线一区二区| 亚洲你懂的在线视频| 成人黄色片在线观看| 久久蜜臀精品av| 精品制服美女丁香| 日韩欧美国产电影| 日韩国产在线观看一区| 欧美亚洲愉拍一区二区| 亚洲欧美日本韩国| 一本大道久久a久久综合| 国产精品视频一区二区三区不卡| 国产一区二区三区四区在线观看| 日韩午夜精品视频| 蜜桃视频在线一区| 欧美mv日韩mv亚洲| 美国一区二区三区在线播放| 欧美一区日本一区韩国一区| 天天色综合成人网| 欧美一区二区三区在线视频| 日韩中文字幕亚洲一区二区va在线 | 在线成人免费视频| 91麻豆福利精品推荐| 国产精品久久久久久亚洲毛片 | 国产精品美女久久久久久久久| 国产不卡在线播放| 国产婷婷色一区二区三区四区| 国产乱子伦一区二区三区国色天香| 日韩精品自拍偷拍| 精品影院一区二区久久久| 欧美精品一区男女天堂| 国产一区二区美女| 久久精品夜夜夜夜久久| 成人性视频网站| 中文字幕一区在线观看| 91久久精品一区二区二区| 亚洲韩国一区二区三区| 欧美日韩国产精选| 久久99精品国产麻豆婷婷| 久久久五月婷婷| jizzjizzjizz欧美| 亚洲国产综合色| 日韩一区二区在线观看视频| 精品无码三级在线观看视频| 欧美高清在线视频| 色爱区综合激月婷婷| 日韩国产精品久久| 久久综合丝袜日本网| 不卡一区二区中文字幕| 一区二区免费视频| 日韩精品在线一区| 丁香婷婷综合激情五月色| 一区二区三区中文在线| 91精品国产综合久久小美女| 国产一级精品在线| 亚洲男人电影天堂| 91精品国产aⅴ一区二区| 国产精品一级在线| 亚洲精品乱码久久久久久 | 免费看黄色91| 欧美激情一区二区三区不卡| 欧美中文字幕一区二区三区亚洲| 日本欧美一区二区三区| 国产精品免费人成网站| 欧美色图激情小说| 国产一区二区免费看| 亚洲综合激情网| 久久久精品综合| 91成人在线精品| 韩国成人精品a∨在线观看| 亚洲欧美福利一区二区| 日韩欧美一区在线| 9久草视频在线视频精品| 日本女优在线视频一区二区| 激情综合色综合久久| 国产精品久久久久久久久搜平片| 欧美日产在线观看| 国产成人鲁色资源国产91色综| 亚洲国产va精品久久久不卡综合 | 成人爽a毛片一区二区免费| 一区二区高清在线| 欧美精品一区二区久久婷婷| 日本高清不卡aⅴ免费网站| 久久国产精品99久久久久久老狼| 一区二区三区日韩在线观看| 久久一区二区三区四区| 欧美在线你懂得| 国产99久久久国产精品| 日韩av电影免费观看高清完整版 | 成人av电影在线| 久久99精品久久久| 亚洲国产视频直播| 国产精品情趣视频| 日韩免费视频线观看| 欧美在线啊v一区| 豆国产96在线|亚洲| 久久国产精品99久久人人澡| 午夜久久久久久久久| 亚洲视频在线一区观看| 久久久久久久久久久久久久久99| 欧美日韩精品系列| 色婷婷av一区二区| 成人做爰69片免费看网站| 韩国一区二区三区| 日韩国产高清影视| 亚洲国产日韩精品| 亚洲欧美色一区| 国产精品日韩成人| 国产无人区一区二区三区| 欧美一二三区精品| 91精品国产综合久久久蜜臀图片| 91行情网站电视在线观看高清版| 成人免费不卡视频| 国产.欧美.日韩| 国产老妇另类xxxxx| 久久99久久精品| 日本在线播放一区二区三区| 亚洲一区二区在线观看视频| 亚洲精品中文字幕在线观看| 国产精品久久久久四虎| 中文字幕欧美激情一区| 欧美激情一区在线观看| 国产午夜精品福利| 久久夜色精品国产欧美乱极品| 日韩一级片网站| 日韩欧美国产综合| 欧美大片顶级少妇| 日韩视频国产视频| 日韩一级完整毛片| 欧美变态tickle挠乳网站| 日韩视频永久免费| 日韩区在线观看| 日韩欧美不卡一区| 亚洲精品在线观看视频| 久久久久国产一区二区三区四区| 亚洲精品一区二区三区四区高清 | 国产成人精品三级| 国产精品99久久久久久有的能看 | 国产亚洲一区字幕| 国产午夜三级一区二区三| 久久久精品天堂| 亚洲国产精品v| 亚洲欧美日韩国产成人精品影院 | 欧美国产亚洲另类动漫| 国产精品热久久久久夜色精品三区| 中文字幕精品一区| 日韩伦理av电影| 亚洲综合在线视频| 亚洲成av人片| 极品销魂美女一区二区三区| 国产精品2024| 91亚洲精品久久久蜜桃|