Arduino UNO 2015 2 25 IS Report No. Report Medical Information System Laboratory
Abstract ( ) Arduino / Arduino Bluetooth Bluetooth : Arduino Arduino UNO Arduino IDE micro computer LED
1............................ 2 2 Arduino......................... 3 2.1 Arduino UNO R3......................... 4 2.2............................ 7 2.3........................... 7 3 Arduino IDE....................... 8 3.1.................... 8 3.2................... 9 3.3.......................... 9 3.4.......................... 12 3.5........................ 13 4 Bluetooth.................... 15 4.1 Arduino.......................... 15 4.2 Bluetooth................... 16 5................... 17 6 Metro............... 19 7............................. 21 8........................... 22
1 LED Arduino Arduino UNO 1) 2
2 Arduino Arduino Arduino Arduino Arudino Arduino Arduino Arduino Arduino Fig. 2.1 Java (IDE Integrated Development Environment) C/C++ Arduino Arduino 2) Fig. 2.1 Arduino IDE 3
2.1Arduino UNO R3 2 Arduino 2.1 Arduino UNO R3 Arduino Arduino Arduino UNO Arduino UNO R3(Fig. 2.2) Arduino UNO R3 Table. 2.1 3). Fig. 2.2 Arduino UNO R3 Table. 2.1 Arudino UNO R3 ATmega328 5V ( ) 7 12V ( ) 6 20V I/O 14 ( 6 PWM ) 6 I/O DC 40mA 3.3V DC 50mA 32KB(ATmega328) 0.5 KB bootloader SRAM 2KB(ATmega328) EEPROM 1KB(ATmega328) 16MHz 4
2.1Arduino UNO R3 2 Arduino Fig. 2.3 POWER ANALOG IN 2) Fig. 2.3 POWER ANALOG IN IOREF +5V +5V RESET POWER 3.3V 3.3V 5V 5V GND (0V) Vin DC DC Vin Arudino ANALOG IN A0 A5 6 5
2.1Arduino UNO R3 2 Arduino Fig. 2.4 DIGITAL IN 2) Fig. 2.4 DIGITAL IN SCL I2C SDA I2C AREF GND (0V) DIGITAL IN 0 RX(Receiver Crystal) Arduino 1 TX(Transmitter Crystal) Arduino 2 12 8 (0 255) (PWM Pulse Width Modulation) 13 L LED Arduino 6
2.2 2 Arduino 2.2 Arduino Arduino Arduino Arduino 2) Fig. 2.5 Arduino UNO R3 Arduino Motor Shield Arduino Motor Shield Fig. 2.5 Arduino Motor Shield 2.3 Arduino IDE (Fig. 2.6) Metro LED Metro Fig. 2.6 Arduino IDE 7
3 Arduino IDE 3.1 http://www.arduino.cc/ Download (Fig. 3.1) 2) Windows7 Fig. 3.1 Arduino IDE arduino-.. ( ) Fig. 3.2 Arduino Fig. 3.2 Arduino 8
3.2 3 Arduino IDE 3.2 Arduino UNO Drivers (Fig. 3.3) Fig. 3.3 Arduino Arduino Windows7 Fig. 3.3 Arduino COM COM 3.3 Arduino 2.1 Arduino 13 LED(Fig. 3.4) Fig. 3.4 13 LED 9
3.3 3 Arduino IDE Fig. 3.2 Fig. 3.5 Fig. 3.5 Arduino IDE Arduino ( 3.1) Arduino IDE 3.1 1 void setup () { 2 pinmode (13, OUTPUT ); 3 } 4 5 void loop () { 6 digitalwrite (13, HIGH ); 7 delay (500); 8 digitalwrite (13, LOW ); 9 delay (500); 10 } 10
3.3 3 Arduino IDE Arduino IDE... (Fig. 3.6(a)) (Fig. 3.6(b)) Fig. 3.6(b) digitalwrite DigitalWrite (a) (b) Fig. 3.6 Arduino UNO Arduino IDE Arduino Uno 3.2 COM Arduino Fig. 3.7 11
3.4 3 Arduino IDE Fig. 3.7 Arduino Arduino Fig. 3.4 LED Arduino IDE Arduino 3.4 3.1 Arduino setup loop void void setup() void setup() 3.1 pinmode(13, OUTPUT); Arduino 13 void loop() void loop() 3.1 digitalwrite delay digitalwrite digitalwrite digitalwrite(,high/low); (HIGH) (LOW) void setup() delay delay delay(500); 0.5 Arduino 13 0.5 LED 3.1 pinmode digitalwrite 12
3.5 3 Arduino IDE 3.2 C int LED PIN time 3.2 1 int LED_PIN =13; 2 int time =500; 3 void setup () { 4 pinmode ( LED_PIN, OUTPUT ); 5 } 6 7 void loop () { 8 digitalwrite ( LED_PIN, HIGH ); 9 delay ( time ); 10 digitalwrite ( LED_PIN, LOW ); 11 delay ( time ); 12 } 3.5 Arduino 3.3 3.3 1 int LED_PIN =13; 2 int baudrate = 9600; 3 void setup () { 4 pinmode ( LED_PIN, OUTPUT ); 5 digitalwrite ( LED_PIN, LOW ); 6 Serial. begin ( baudrate ); 7 } 8 9 void loop () { 10 if( Serial. available () >0) 11 { char c = Serial. read (); 12 if( c== h ) 13 { 14 digitalwrite ( LED_PIN, HIGH ); 15 Serial. write (" LED ON"); 16 } 17 if( c== l ) 18 { 19 digitalwrite ( LED_PIN, LOW ); 20 Serial. write (" LED OFF "); 21 } 22 } 23 } 3.3 Serial void setup() Serial.begin(baudRate); Arduino 9600bps Serial.begin( ) void loop() Serial.available() Serial.available()>0 if 13
3.5 3 Arduino IDE Serial.read (); 3.3 char LED ON/OFF Serial.write(); LED ON LED OFF Serial.print() Arduino Fig. 3.8(a) Fig. 3.8(b) Fig. 3.8(b) 9600bps 9600baud Fig. 3.8(b) h l LED h LED LED ON l LED LED OFF (a) (b) Fig. 3.8 14
4 Bluetooth Arduino Arduino Bluetooth 4.1 Arduino Arduino UNO Arduino Fig. 4.1 USB AC Vin Fig. 4.1 AC 9V Arduino UNO 5V (Fig. 4.2) 100V Fig. 4.2 15
4.2Bluetooth 4 Bluetooth 4.2 Bluetooth Bluetooth PIC24FJ 64GB004 SBDBT (Fig. 4.3) Bluetooth Bluetooth 3.3V Arduino Power 3.3V Arduino Bluetooth Fig. 4.4 Fig. 4.3 Bluetooth Fig. 4.4 Arduino Bluetooth Bluetooth Bluetooth (PIN 0000 ) LED ( 4800 ) 16
5 Arduino Motor Shield 2 DC 1 Arduino Fig. 5.1 5.1 5.1 12 13 8 9 3 11 HIGH/LOW 256 HIGH LOW HIGH Bluetooth Arduino Arduino Arduino Fig. 5.1 5.1 1 void setup () { 2 // A 3 pinmode (12, OUTPUT ); // ( HIGH / LOW ) 4 pinmode (9, OUTPUT ); // ( HIGH / LOW ) 5 pinmode (3, OUTPUT ); // P W M (0-255) 6 7 // B 8 pinmode (13, OUTPUT ); // ( HIGH / LOW ) 9 pinmode (8, OUTPUT ); // ( HIGH / LOW ) 10 pinmode (11, OUTPUT ); // P W M (0-255) 11 } 17
5 12 13 void loop () { 14 // A: B: 15 digitalwrite (12, HIGH ), digitalwrite (13, HIGH ); 16 digitalwrite (9, LOW ), digitalwrite (8, LOW ); 17 analogwrite (3, 255), analogwrite (11, 255); 18 } 18
6 Metro Metro LED Metro Arduino IDE http://playground.arduino.cc/code/metro Fig. 6.1 zip Fig. 6.1 Metro zip Metro Arduino libraries Arduino IDE Arduino IDE Metro #include <Metro.h> 6.1 Metro 3 LED 8Hz 5 LED 10Hz Metro Metro = Metro( ); loop() if (Metro.check() == 1) Metro 1 6.1 Metro 1 # include <Metro.h> 2 3 Metro Metro1 = Metro (1000/(2*8)); 4 Metro Metro2 = Metro (1000/(2*10)); 5 6 int state1 =255, state2 =255; 7 int pin1 =3, pin2 =5; 8 int flag1 =0, flag2 =0; 9 10 void setup () { 19
6 Metro 11 pinmode ( pin1, OUTPUT ); 12 analogwrite ( pin1, state1 ); 13 pinmode ( pin2, OUTPUT ); 14 analogwrite ( pin2, state2 ); 15 } 16 17 18 void loop () { 19 if ( Metro1. check () == 1) { 20 if( flag1 ==0) 21 { analogwrite ( pin1, state1 ); flag1 =1; } 22 else 23 { analogwrite ( pin1, 0); flag1 =0; } 24 } 25 if ( Metro2. check () == 1) { 26 if( flag2 ==0) 27 { analogwrite ( pin2, state2 ); flag2 =1; } 28 else 29 { analogwrite ( pin2, 0); flag2 =0; } 30 } 31 } 20
7 Arduino 21
8 8.1 1 # include <Metro.h> 2 Metro Metro1 = Metro (1000/(2*8)); 3 Metro Metro2 = Metro (1000/(2*10)); 4 Metro Metro3 = Metro (1000/(2*12)); 5 Metro Metro4 = Metro (1000/(2*11)); 6 7 int state1 =LOW, state2 =LOW, state3 =LOW, state4 = LOW ; 8 void setup () { 9 pinmode ( pin1, OUTPUT ); 10 digitalwrite ( pin1, state1 ); 11 pinmode ( pin2, OUTPUT ); 12 digitalwrite ( pin2, state2 ); 13 pinmode ( pin3, OUTPUT ); 14 digitalwrite ( pin3, state3 ); 15 pinmode ( pin4, OUTPUT ); 16 digitalwrite ( pin4, state4 ); 17 } 18 19 void loop () { 20 if ( Metro1. check () == 1) { 21 if( state1 == LOW ) state1 = HIGH ; 22 else state1 = LOW ; 23 digitalwrite ( pin1, state1 ); 24 } 25 if ( Metro2. check () == 1) { 26 if( state2 == LOW ) state2 = HIGH ; 27 else state2 = LOW ; 28 digitalwrite ( pin2, state2 ); 29 } 30 if ( Metro3. check () == 1) { 31 if( state3 == LOW ) state3 = HIGH ; 32 else state3 = LOW ; 33 digitalwrite ( pin3, state3 ); 34 } 35 if ( Metro4. check () == 1) { 36 if( state4 == LOW ) state4 = HIGH ; 37 else state4 = LOW ; 38 digitalwrite ( pin4, state4 ); 39 } 40 } 22
8 8.2 1 const int baudrate = 4800; 2 3 void setup () { 4 Serial. begin ( baudrate ); 5 // A 6 pinmode (12, OUTPUT ); // ( HIGH / LOW ) 7 pinmode (9, OUTPUT ); // ( HIGH / LOW ) 8 pinmode (3, OUTPUT ); // P W M (0-255) 9 10 // B 11 pinmode (13, OUTPUT ); // ( HIGH / LOW ) 12 pinmode (8, OUTPUT ); // ( HIGH / LOW ) 13 pinmode (11, OUTPUT ); // P W M (0-255) 14 } 15 16 void loop () { 17 if( Serial. available () >0){ 18 char c = Serial. read (); 19 if( c== s ) 20 { 21 // A: 22 digitalwrite (12, HIGH ); 23 digitalwrite (9, HIGH ); 24 analogwrite (3, 255); 25 // B: 26 digitalwrite (13, HIGH ); 27 digitalwrite (8, HIGH ); 28 analogwrite (11, 255); 29 Serial. write (" Stop "); 30 } 31 else if( c== w ) 32 { 33 // A: B: 34 digitalwrite (12, LOW ), digitalwrite (13, LOW ); 35 digitalwrite (9, LOW ), digitalwrite (8, LOW ); 36 analogwrite (3, 200), analogwrite (11, 200); 37 Serial. write ("Go"); 38 } 39 else if( c== d ) 40 { 41 // A: B: 42 digitalwrite (12, LOW ), digitalwrite (13, HIGH ); 43 digitalwrite (9, LOW ), digitalwrite (8, LOW ); 44 analogwrite (3, 200), analogwrite (11, 200); 45 Serial. write (" Right "); 46 } 47 else if( c== a ) 48 { 49 // A: B: 50 digitalwrite (12, HIGH ), digitalwrite (13, LOW ); 51 digitalwrite (9, LOW ), digitalwrite (8, LOW ); 52 analogwrite (3, 200), analogwrite (11,200); 53 Serial. write (" Left "); 54 } 55 else if( c== x ) 56 { 57 // A: B: 58 digitalwrite (12, HIGH ), digitalwrite (13, HIGH ); 59 digitalwrite (9, LOW ), digitalwrite (8, LOW ); 60 analogwrite (3, 200), analogwrite (11, 200); 23
8 61 Serial. write (" Back "); 62 } 63 else if( c== e ) 64 { 65 // A: B: 66 digitalwrite (12, LOW ), digitalwrite (13, LOW ); 67 digitalwrite (9, LOW ), digitalwrite (8, LOW ); 68 analogwrite (3, 200), analogwrite (11, 100); 69 Serial. write (" Go_Right "); 70 } 71 else if( c== q ) 72 { 73 // A: B: 74 digitalwrite (12, LOW ), digitalwrite (13, LOW ); 75 digitalwrite (9, LOW ), digitalwrite (8, LOW ); 76 analogwrite (3, 100), analogwrite (11, 200); 77 Serial. write (" GO_Left "); 78 } 79 else if( c== c ) 80 { 81 // A: B: 82 digitalwrite (12, HIGH ), digitalwrite (13, HIGH ); 83 digitalwrite (9, LOW ), digitalwrite (8, LOW ); 84 analogwrite (3, 200), analogwrite (11, 100); 85 Serial. write (" Back_Right "); 86 } 87 else if( c== z ) 88 { 89 // A: B: 90 digitalwrite (12, HIGH ), digitalwrite (13, HIGH ); 91 digitalwrite (9, LOW ), digitalwrite (8, LOW ); 92 analogwrite (3, 100), analogwrite (11, 200); 93 Serial. write (" Back_Left "); 94 } 95 } 96 } 24
1), 1I., 2013 2), Arduino!, 2,, 2013 3) Arduino Uno, http://arduino.cc/en/main/arduinoboarduno, 2015/2/23. 25