cansat kode analog måling (02)Programmet måler spændinger på alle 6 indgange. Måling foretages med en 10 bit konverter dvs der er (1023) diskretiseringsniveauer for indputspænding. Man kan måle i intervallet 0-5V. // Telemetry over seriel interface(USB) // To gange i sekundet udføres: // 1.mål spænding på 6 analoge porte // 2.omregne måletal tyil Volt // 3. skrive alle spændin // og skifter lysdiode mellem on og off int ledState = LOW; void setup() { Serial.begin(9600); // seriel hastighed: 9600 bit/sekund pinMode(13,OUTPUT); // pin 13(med lydsiode ) sættes op som outpu } float a0,a1,a2,a3,a4,a5; // fem variable til at måle de 5 analoge indgange void loop() { delay(500); // vent 500 millisekunder a0 = analogRead(0); a1 = analogRead(1); a2 = analogRead(2); a3 = analogRead(3); a4 = analogRead(4); a5 = analogRead(5); // omregn til volt 0-1023 svarer til 5 V (10 bit ad konverter) a0 = 5.0 * a0/1023; a1 = 5.0 * a1/1023; a2 = 5.0 * a2/1023; a3 = 5.0 * a3/1023; a4 = 5.0 * a4/1023; a5 = 5.0 * a5/1023; Serial.print("Telemetry: "); // print på seriel port Serial.print(" , "); Serial.print(a0); Serial.print(" , "); Serial.print(a1); Serial.print(" , "); Serial.print(a2); Serial.print(" , "); Serial.print(a3); Serial.print(" , "); Serial.print(a4); Serial.print(" , "); Serial.println(a5); // print med linieskift - ln: line new // blik med lysdiode for at vise der er liv if (ledState == LOW) { ledState = HIGH; digitalWrite(13,HIGH); } else { ledState = LOW; digitalWrite(13,LOW); } } |