Stap 9: Data-acquisitie voor PiScope
Zodra de ADC is aangesloten en de kernelmodule is geladen, kunnen gegevens worden gelezen van de ADC door te koppelen aan het bestand van het apparaat dat de kernelmodule gekoppeld. Om te verbinden met de kernelmodule, is een ander programma nodig. Dit programma kan in verscheidene verschillende programmeertalen worden geschreven. Voor dit artikel, werd C++ gekozen. Maak een nieuw bestand met de naam readout.cpp en voeg volgende code of uploaden van de readout.cpp die hieronder zijn toegevoegd.
Dit programma omvat de definitie van het struct gegevens die overeenkomt met de versie in de kernelmodule. De main() functie verbonden met het /dev/chardev-apparaat, waardoor de kernelmodule uitlezing de ADC en de waarden opslaan. De gegevens worden dan gelezen uit de geheugenbuffer en gekopieerd naar de lokale buffer binnen de main() functie. Tot slot worden de gegevens omgezet in een tijd in nano-seconden en spanningswaarden. De tijd en twee spanningswaarden worden vervolgens afgedrukt in kolommen. De spanningswaarden gelezen door de ADCs worden gecodeerd als zes bits. De bits zijn gedecodeerd met behulp van bits verstandig, bit shift operaties en acties.
Voor het compileren van de data-acquisitie-programma, typt u:
Voer het programma door te typen:
Het gegevensbestand kan worden weergegeven met behulp van gnuplot. Gnuplot installeren door te typen:
Typ vervolgens gnuplot en voer de macro hieronder gegeven:
Meer informatie over gnuplot kan worden gevonden op: http://www.gnuplot.info/