Behandlingen digitalt skjutmått med en Arduino / USB (4 / 4 steg)
Steg 4: Arduino kod
Detta är en mycket grundläggande Arduino kod som bör vara kompatibel med flera kolvkalibern data protokoll.Det finns kommatecken mellan varje värde att göra det lätt att använda. CSV-filer att importera data till kalkylblad.
Det viktigaste kravet i denna kod är att data läses på fallande kanten av en klocka puls.
Förhoppningsvis bör här koden innebära när du ansluter din Arduino till datorn och Använd serial bildskärmen på 115200 Baud får du förnuftigt tittar binära ut.
Felsökning:
Om längden på de binära strängarna ändras en hel del kan du ha clock och data stiften på fel sätt runt.
Kod:
Enkla digitala kolvkalibern läsare
Se http://j44industries.blogspot.com/
PIN deklarationer
int dataIn = 11;
int clockIn = 12;
Variabler
int clock = 1;
int lastClock = 1;
osignerade långa tid = 0;
osignerade långa timeStart = 0;
int ut = 0;
void setup() {
PIN-koden ställer in
pinMode (dataIn, ingång);
pinMode (clockIn, indata);
Serial.BEGIN(115200);
Serial.println ("redo:");
}
void loop() {
lastClock = klocka;
klockan = digitalRead(clockIn);
om (lastClock == 1 & & klocka == 0) {
ut = digitalRead(dataIn)+digitalRead(dataIn)+digitalRead(dataIn); Tripple provtagning att ta bort buggar
IF((Micros() - tid) > 800) {
Serial.println("");
}
annat if((micros() - tid) > 400) {
Serial.Print("");
}
IF (ut > 1) {
Serial.Print("1");
}
annat {
Serial.Print("0");
}
Serial.Print(",");
tid = micros();
}
}