© Harry Broeders.
Deze pagina is bestemd voor studenten van de Haagse Hogeschool - Academie voor Technology, Innovation & Society Delft groep EQ1.2.
De AVR STK500 systemen van de opleiding Elektrotechniek aan de Academie voor
Technology, Innovation & Society Delft zijn uitgerust met een timer-IC
NE555 dat een blokgolf opgewekt op pin PD6 = ICP1 van de ATmega32. Door het
aansluiten van een capaciteit tussen de zwarte en de blauwe connector kun je de
frequentie variëren. Deze hardware kan ook gesimuleerd worden door de AVE AVR Studio plugins (menu Tools, AVE AVR Studio
plugins, Capicity Measurement). Op pagina 10 en 11 van de NE555 datasheets staat
uitgelegd hoe de onderstaande schakeling werkt en hoe je de periodetijd van de
opgewekte blokgolf kunt berekenen.
Maak een periodetijd-meter gebaseerd op de input capture unit van Timer/Counter1 van de ATmega32. De periodetijd moet op zo nauwkeurig mogelijk gemeten worden. De gemeten periodetijd moet op het LC-Display worden zichtbaar gemaakt met de tekst: "De periodetijd is: ........µs". Laat alleen significante cijfers zien.
Als er geen Cx wordt aangesloten (Cx = 0) is de periodetijd ongeveer 250 µs. Je mag ervan uitgaan dat Cx maximaal 0,5 µF is (de periodetijd is dan ongeveer 13000 µs). De klokfrequentie van de ATmega32 op het STK500 practciumbord is ingesteld op exact 3.686400 MHz.
Je kunt het programma p.hex gebruiken om te kijken wat de periodetijd bij een bepaalde C is. Het programma p.hex bepaalt de exacte periodetijd in µs (± 1 µs) van het signaal op PD6 en geeft dit continue weer. Telkens als ledje PB7 knippert wordt het display opnieuw beschreven. Waarom komt de waarde die getoond wordt door het programma p.hex niet overeen met de theoretische waarde? Als jouw periodetijd-meter een andere waarde meet dan het programma p.hex dan moet je dat kunnen verklaren!
Geen probleem: Bereken het aantal ticks van
Timer/Counter1 die voorbijgaan tijdens een periodetijd van het signaal op PD6
als Cx = 0,5 µF. Past dit in 16 bits?
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.
Dit programma is thuis te simuleren met behulp van de AVE AVR Studio plugins. Omdat het simuleren van de LCD niet zo soepel gaat (zie hier) kun je het programma beter zonder LCD simuleren. Je kunt het resltaat dan controlleren door het op te slaan in een globale variabele en deze globale variabele met een "watch" te bekijken.
Niet vergeten:
-O0
.