Arduino ³s±µADXL330 ¤T¶b¥[³tp(Three-Axis Accelerometer)
²
°ò¥»¥\¡G¦b¾Ç²ß¥»¨ÒÃD¤§«e¡A±zÀ³¸Ó¹ê²ß§¹¥H¤U½m²ß¡G
1. ¥iÅܹqªý±µ¤W5V¹qÀ£¡A²£¥Í0~5VÃþ¤ñ¹qÀ£¡A§Q¥ÎArduinoªºADC ¥\¯à(10 bits)¡AÂà´«¦¨¤Q¶i¦ì 0~1023 ¼ÆÈ
2. ¥iÅܹqªý±µ¤W3.3V¹qÀ£¡A²£¥Í0~3.3VÃþ¤ñ¹qÀ£¡A§Q¥ÎArduinoªºADC ¥\¯à(10 bits)¡Aµ²¦XAREF±µ¸}³]©w¡AÂà´«¦¨¤Q¶i¦ì 0~1023 ¼ÆÈ¡C
¥»¨Ò¶}©l
²
¹q¸ô³s±µ¡G
»¡©ú¡G Arduino UNO ªO¤Wªº
3.3V±µ¸}¡A±µ¨ìADXL330ªº ¡¥+¡¦ ¸}¡A¥H¤ÎArduino
UNO ªO¤WªºAREF±µ¸}¡CADXL330ªº ¡¥X¡¦ ¡¥Y¡¦ ¡¥Z¡¦ ¤T¶b¿é¥X¡A¤À§O±µ¨ìArduino UNO ªO¤WªºAnalog In A1, A2, ¤Î A3 ±µ¸}¡C
¹Ï1
²
µ{¦¡¡G
int ADC_x, ADC_y, ADC_z;
int pin_A1=1;
int pin_A2=2;
int pin_A3=3;
void setup()
{
Serial.begin(9600);
analogReference(EXTERNAL);
}
void loop()
{
ADC_x=analogRead(pin_A1);
ADC_y=analogRead(pin_A2);
ADC_z=analogRead(pin_A3);
Serial.print(ADC_x);
Serial.print("\t");
Serial.print(ADC_y);
Serial.print("\t");
Serial.print(ADC_z);
Serial.print("\t");
Serial.print(ADC_x+ADC_y+ADC_z);
Serial.println();
delay(500);
}
²
°õ¦æµ²ªG¡G
Case 1: ¹Ï1ÄÑ¥]ªO¡A¤ô¥¸m©ó®à¤W
¹Ï2
Case 2: ¹Ï1ÄÑ¥]ªO¥ª¤è©ï°ª¬ù30«×¡Aµo²{¼ÆȧïÅÜ¡A¯÷¦C¥X¤@²Õ¼Æ¾Ú¡G
402 478 514
1394
Case 3: ¹Ï1ÄÑ¥]ªO¥k¤è©ï°ª¬ù30«×¡Aµo²{¼ÆȧïÅÜ¡A¯÷¤U¦C¥X¤@²Õ¼Æ¾Ú¡G
399 554 532
1485
Case 4: ¹Ï1ÄÑ¥]ªO¹Ï¤ù¤W¤è¨º¤@ºÝ©ï°ª¬ù30«×¡Aµo²{¼ÆȧïÅÜ¡A¯÷¤U¦C¥X¤@²Õ¼Æ¾Ú¡G 401 518 478
1397
Case 5: ¹Ï1ÄÑ¥]ªO¹Ï¤ù¤U¤è¨º¤@ºÝ©ï°ª¬ù30«×¡Aµo²{¼ÆȧïÅÜ¡A¯÷¤U¦C¥X¤@²Õ¼Æ¾Ú¡G 401 518 542
1461