專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> Arduino >> 瀏覽文章

Arduino用鍵盤控制小車

作者:huqin   來源:本站原創(chuàng)   點(diǎn)擊數(shù):  更新時(shí)間:2014年04月03日   【字體:

原本想把攝像頭接上去的,但找不到好的支架固定,所以先暫時(shí)擱著。

 

上次用Rboduino I/O Expansion V3.0擴(kuò)展板插上去才能用APC220發(fā)射模塊,后來發(fā)現(xiàn),如果不安裝什么云臺(tái)的話,用Expansion V3.0板子有點(diǎn)浪費(fèi),還不如用面包版呢!

=====================================================================================================

 

int IN1 = 2;
int EN1 = 3;                        
int IN2 = 4;   
int IN3 = 5;  
int EN2 = 6;
int IN4 = 7;
                      
void stop(void)
        {
          digitalWrite(IN1,LOW);  
          digitalWrite(IN2,LOW);     
          digitalWrite(IN3,LOW);  
          digitalWrite(IN4,LOW);
        }


void advance_l(void)
        {     
          digitalWrite(IN1,HIGH);  
          digitalWrite(IN2,LOW); 
        } 
       
void advance_r(void)  
       {
          digitalWrite(IN3,LOW);  
          digitalWrite(IN4,HIGH);
        }

void back_off_l(void)
        {
          digitalWrite(IN1,LOW);  
          digitalWrite(IN2,HIGH); 
        } 
       
void back_off_r(void)  
       {
          digitalWrite(IN3,HIGH);  
          digitalWrite(IN4,LOW);
        }

       
void setup(void)
{
    int i;
    for(i=2;i<=7;i++)
    pinMode(i, OUTPUT); 
    digitalWrite(EN1,HIGH);
    digitalWrite(EN2,HIGH);
    Serial.begin(38400);//這個(gè)是我的APC220無線發(fā)射模塊的發(fā)射波特率
}
 
void loop(void)
{
       char val = Serial.read();
       if(val!=-1)
         {
           switch(val)
           {
             case 'w'://前進(jìn)
                         advance_l();
                         advance_r();
                         break;
              case 's'://后退
                         back_off_l();
                         back_off_r();
                         break;
             case 'a'://原地左轉(zhuǎn)
                         advance_r();
                         back_off_l();
                         break;      
             case 'd'://原地右轉(zhuǎn)
                         advance_l();
                         back_off_r();
                         break;
             case 'q'://左邊的輪子靜止,右邊的輪子前進(jìn)
                         advance_r();
                         break;
             case 'e'://右邊的輪子靜止,左邊的輪子前進(jìn)
                         advance_l();
                         break;
             case 'z'://左邊的輪子靜止,右邊的輪子后退
                         back_off_r();
                         break;
             case 'c'://右邊的輪子靜止,左邊的輪子后退
                         back_off_l();
                         break;

             }    
           delay(30);
          }
        else stop();         
}

 

======================================================================================================

APC無線發(fā)射模塊的針腳圖:

 


 

只需要接4個(gè)針腳,APC就可以運(yùn)行了。GND:接地。VCC接5V。統(tǒng)統(tǒng)一起連接到Arduino板子上。

====================================================================================================

視頻就不放出來了。

關(guān)閉窗口

相關(guān)文章