© Harry Broeders.
Deze pagina is bestemd voor studenten van de Haagse Hogeschool - Academie voor Technology, Innovation & Society Delft groep EQ1.2.
Bij deze opdracht maken we een data-acquisitie systeem waarbij de ATmega32
vanuit de PC, via een seriële verbinding, de opdracht krijgt om een
meting uit te voeren. Het resultaat van de meting wordt via dezelfde
seriële verbinding naar de PC gestuurd en moet daar op het scherm worden
getoond en ook worden opgeslagen in een tekstfile samen met de datum en de
tijd van de meting. Het programma op de PC moet ervoor zorgen dat ongeveer
1x per 5 seconden een meting wordt gedaan. De meting bestaat uit het meten
van de capaciteit die is aangesloten tussen de tussen de zwarte en de blauwe
connector van het AVR STK500 practicumbord. Gegeven is dat de capaciteit
varieert tussen 0 en 500 nF, het resultaat van de meting is een capaciteit
tussen de 0.000 en de 0.500 µF. Dit resultaat moet als ASCII-string
worden verzonden: 0.THDQ
. T
= eentiende-tallen,
H
= eenhonderste-tallen, D
= eenduizenste-tallen,
Q
is afsluiter.
De capaciteit die aangesloten is tussen de tussen de zwarte en de blauwe connector van het AVR STK500 practicumbord bepaald de frequentie van een blokvormig signaal dat is aangesloten op pin PB1 en pin PB6 van de ATmega32.
Op pagina 10 en 11 van de NE555 datasheets staat uitgelegd hoe de bovenstaande schakeling werkt en hoe je de capaciteit Cx kunt berekenen als de frequentie of de periodetijd van de opgewekte blokgolf gemeten is.
Maak eerst het programma op de ATmega32. Dit programma kun je testen door op de PC gebruik te maken van het programma PuTTY. Maak vervolgens het programma op de PC. Laat je inspireren door de programma's: avrserial.c , winserial.c , demotijd.c en tekstfile_schrijven.c .
De benodigde informatie kun je hier vinden:
snprintf
.
Maak een stappenplan en maak voordat je een (deel)programma gaat coderen eerst een ontwerp op papier. De practicumdocent zal naar dit stappenplan en ontwerp vragen bij het aftekenen van je opdracht.