2016年4月11日 星期一

勤益科大 上課日期與需帶工具


期中考  過後 開始 上課 3
參考資料 :  alex9ufo Blog  http://alex9ufoexploer.blogspot.tw/ 

google “alex9ufo Blog”



分類 à   Arduino勤益  有課程講義及相關資料

 注意 : 請帶 
           1)麵包板  
           2)單芯線 
           3)斜口鉗  
           4)LED 10   
          5)Arduino系統的手機

  Arduino系統的手機 到Play 商店 下載 安裝 AI2


2016年4月1日 星期五

利用 Android 手機程式 控制 Anduino 板上 4個 LED

控制 Anduino 板上 1個 LED擴充為 Android 手機程式 控制 Anduino 板上 4個 LED







//Android手機APK 程式 下載點

http://www.mediafire.com/download/ttulhn593k23mno/BT_ControlArduino4LED.apk
#include <SoftwareSerial.h>
#include <Wire.h>

int LED1 = 6 ;
int LED2 = 7 ;
int LED3 = 8 ;
int LED4 = 9 ;


SoftwareSerial I2CBT(11,10);    //RX=11 , TX=10

void setup() {
  Serial.begin(9600);
  I2CBT.begin(9600);  //bluetooth baud rate  
  
  pinMode(LED1, OUTPUT);  
  pinMode(LED2, OUTPUT);  
  pinMode(LED3, OUTPUT);  
  pinMode(LED4, OUTPUT);  
  //set all LED OFF
  digitalWrite(LED1,LOW); 
  digitalWrite(LED2,LOW);
  digitalWrite(LED3,LOW); 
  digitalWrite(LED4,LOW);
  
}

///////////////////main///////////////////////////

void loop() {

  byte cmmd[20];
  int insize;
  
  while(1){
/*
read message from bluetooth
*/
    if ((insize=(I2CBT.available()))>0){
       Serial.print("input size = "); 
       Serial.println(insize);
       for (int i=0; i<insize; i++){
         Serial.print(cmmd[i]=char(I2CBT.read()));
         Serial.print("\n"); 
       }
      
    }  
      switch (cmmd[0]) {
        //=====LED1=======
        case 97: //"a"    
          Serial.println("a"); 
          digitalWrite(LED1,HIGH);
          cmmd[0]=31;    //"1"
          break;  
          
        case 98://"b"
          Serial.println("b"); 
          digitalWrite(LED1,LOW);
          cmmd[0]=31;
           break;
       //=====LED2=======
        case 99: //"c"    
          Serial.println("c");  
          digitalWrite(LED2,HIGH);
          cmmd[0]=31;
          break;  
        case 100://"d"
          Serial.println("d"); 
          digitalWrite(LED2,LOW);
          cmmd[0]=31;
           break;
       //=====LED3=======     
       case 101: //"e"    
          Serial.println("e");  
          digitalWrite(LED3,HIGH);
           cmmd[0]=31;
          break;  
          
        case 102://"f"
          Serial.println("f"); 
          digitalWrite(LED3,LOW);
          cmmd[0]=31;
           break;
       //=====LED4=======   
        case 103: //"g"    
          Serial.println("g");  
          digitalWrite(LED4,HIGH);
          cmmd[0]=31;
          break;  
          
        case 104://"h"
          Serial.println("h"); 
          digitalWrite(LED4,LOW);
          cmmd[0]=31;
           break;
       
       default: 
           break;       
      } //Switch
      
  } //while

}

利用 Android 手機程式 控制 Anduino 板上 LED

//利用 Android 手機程式 控制 Anduino 板上LED
//連結 藍芽有問題時 請將Pin 11 / Pin10 RX ,TX 對調


//APK 程式 連結點



//手機畫面


//AI2 程式 畫面



//Arduino 執行畫面


//
//Arduino 程式
//
#include <SoftwareSerial.h>
#include <Wire.h>

int LED = 13 ;
SoftwareSerial I2CBT(11,10);    //RX=11 , TX=10

void setup() {
  Serial.begin(9600);
  I2CBT.begin(9600);  //bluetooth baud rate  
  
  pinMode(LED, OUTPUT);    
}

///////////////////main///////////////////////////

void loop() {

  byte cmmd[20];
  int insize;
  
  while(1){
/*
read message from bluetooth
*/
    if ((insize=(I2CBT.available()))>0){
       Serial.print("input size = "); 
       Serial.println(insize);
       for (int i=0; i<insize; i++){
         Serial.print(cmmd[i]=char(I2CBT.read()));
         Serial.print("\n"); 
       }
      
    }  
      switch (cmmd[0]) {
        case 97: //"a"     
          
          digitalWrite(LED,HIGH);
          
          break;  
      case 98://"b"
          
          digitalWrite(LED,LOW);
          
          break;
   
      } //Switch
      
  } //while

}

2016年3月28日 星期一

利用 手機控制 8 LED 4種功能-----左移 右移 左右移 閃爍 (EX3-2)

MIT  AI2 






程式





//利用 手機控制 8 LED 4種功能

#include <SoftwareSerial.h>
#include <Wire.h>
SoftwareSerial BT(11,10); //define serial BT  RX=11, TX=10
//SoftwareSerial mySerial (rxPin, txPin);
const byte LEDPin[8] = {2,3,4,5,6,7,8,9};
int i=0 , j=0 ;
void setup() 
{
  for (j=0; j<8; j++) 
  pinMode(LEDPin[j],OUTPUT);
  Serial.begin(9600);
  BT.begin(9600);
}

//=============================
void loop()
{
      
  if(BT.available()) //received BT data
  {
    int LED = BT.read();
    Serial.print("Received BT cmd: ");
    if (LED==0)
     {     
           Serial.println(LED);
           LED1_Function();
     }
     else if (LED==2)     
     { 
           Serial.println(LED);
           LED2_Function();
     }
     else if (LED==4)
      { 
           Serial.println(LED);
           LED3_Function();
      }
      else if (LED==6) 
      {
           Serial.println(LED);
           LED4_Function();
      }

}  //if

}   //loop


//=========================================

void LED1_Function() {
  Serial.println("LED1");
  for(j=0;j<=4;j++){
  for (i=0; i<=8; i++)
  {
    digitalWrite(LEDPin[i], HIGH);
    delay (50);
    digitalWrite(LEDPin[i], LOW);
    delay(50);
  }  // for i
   Serial.println(j);
  }  //for j
  BT.write(0x11); 



//===============================
void LED2_Function() {
  Serial.println("LED2"); 
 for (j=0;j<=4;j++) { 
 for (i=7; i>=0 ; i--)
  {
    digitalWrite(LEDPin[i], HIGH);
    delay (50);
    digitalWrite(LEDPin[i], LOW);
    delay(50);
  }  // for i
  Serial.println(j); 
 }  // for j
 BT.write(0x21); 

}

//===============================
void LED3_Function() {
 for(j=0;j<=4;j++){  
 for(i = 0;i<=8;i++){
  digitalWrite(LEDPin[i],HIGH);
  delay(50);
  digitalWrite(LEDPin[i],LOW);
}  

for(i=8;i>=0;i--){
  digitalWrite(LEDPin[i],HIGH);
  delay(50);
  digitalWrite(LEDPin[i],LOW) ;
}
  Serial.println(j); 
 } //for j
 BT.write(0x31);
 Serial.println("LED3");
}

//===============================
void LED4_Function() {
  for (j=0;j<=4;j++) {
   for ( i=0; i<=8 ; i++) {
    digitalWrite(LEDPin[i], HIGH);
   }
    delay (250);
    
   for ( i=0; i<=8 ; i++) {
   digitalWrite(LEDPin[i], LOW);
   }
   
   delay(250);
   
   Serial.println(j); 
  } // for j
   BT.write(0x41);  
   Serial.println("LED4");
}  

//================================

2016年3月27日 星期日

LED 交替閃爍

//LED SWAP交替閃爍
const byte LEDPin[8] = {6,7,8,9,10,11,12,13};
const byte LEDs[8] = {0,0,0,0,1,1,1,1};
int i=0 , j=0 ;

void setup() 
{
  for (j=0; j<8; j++) 
  pinMode(LEDPin[j],OUTPUT);
}


//=============================

void loop() {
  {
   for (j=0; j<8 ; j++)
    digitalWrite(LEDPin[j], LEDs[j]);
    delay (250);
    
   for (i=7; i>=0 ; i--)
   digitalWrite(LEDPin[i], LEDs[7-i]);
    delay(250);
  }  // for
} //loop

//LED 同時閃爍


//LED  同時閃爍

const byte LEDs[] = {6,7,8,9,10,11,12,13};
const byte total = sizeof(LEDs);

void setup() 
{
  for (byte j=0; j<=total; j++) 
  {
    pinMode(LEDs[j], OUTPUT);
  }
}


//=============================

void loop() {
  {
   for (byte j=0; j<=total ; j++)
    digitalWrite(LEDs[j], HIGH);
    delay (250);
    
   for (byte j=0; j<=total ; j++)
   digitalWrite(LEDs[j], LOW);
    delay(250);
  }  // for
} //loop

// LED 左右移 跑馬燈

// LED 左右移  跑馬燈

const int ledCount=8;
int ledPins[] = {6,7,8,9,10,11,12,13};

void setup(){
for(int thisLed=0; thisLed < ledCount;  thisLed++) {
  pinMode(ledPins[thisLed],OUTPUT);
}
}

void loop(){
for(int thisLed = 0;thisLed <=ledCount;thisLed++){
  digitalWrite(ledPins[thisLed],HIGH);
  delay(600);
  digitalWrite(ledPins[thisLed],LOW);
}  

for(int thisLed=ledCount;thisLed>=0;thisLed--){
  digitalWrite(ledPins[thisLed],HIGH);
  delay(600);
  digitalWrite(ledPins[thisLed],LOW) ;
}
delay(1000);
}  //loop

Cargo Transfer Process Simulation 「貨物轉移過程模擬」

Cargo Transfer Process Simulation「貨物轉移過程模擬」 https://www.youtube.com/watch?v=Ic9PpPG-_NU   以下是操作步驟: 打開 EasyBuilder Pro,選擇「新建專案」(New Project),...