Ein Impulsgenerator mit der Pong-Platine


von Heinz D.
Elektronik-Labor   Projekte   AVR 

   

Bei Rechteckgeneratoren mit variablem Impuls-/Pauseverhältnis fällt jedem sofort der 555/556 ein. Ohne externe Messgeräte fällt das Einstellen jedoch schwer. Da kann die Pong-Platine mit ihrem ATmega8, den beiden Potis und der LED-Anzeige helfen. Für viele Messungen reicht ein Einstellungsbereich in 1ms-Schritten aus. Dazu wird die Variable Delayms in 'SUBt2interrupt.inc' herangezogen:

'Timer2 = 1                                                'Feinjustierung auf 1ms
If Delayms > 0 Then Decr Delayms 'max.65,5s

Wem die Einstellung der Potis zu fummelig ist und max. 65 ms ausreichen, dividiert den ADC-Wert durch 16. Das Programm ist simpel:

Do
If P_flag = 0 Then
If Delayms = 0 Then
Portd.2 = 1 'Puls oben
Adc6 = Getadc(6)
Adc6 = Adc6 / 16 '64ms
Adc6 = Adc6 + 1
Delayms = Adc6
For K = 1 To 12 : Pongfeld(k) = Pongfeld(k) And 31 : Next K 'CLS oben
Ypos = 32 : Anzeigewert = Adc6 : Zeig3
P_flag = 1
End If
Else
If Delayms = 0 Then
Portd.2 = 0 'Pause unten
Adc7 = Getadc(7)
Adc7 = Adc7 / 16 '64ms
Adc7 = Adc7 + 1
Delayms = Adc7
For K = 1 To 12 : Pongfeld(k) = Pongfeld(k) And 992 : Next K 'CLS unten
Ypos = 1 : Anzeigewert = Adc7 : Zeig3
P_flag = 0
: End If
End If
Loop
 

 Download: ImpulsGenerator.zip

Ein Serien-/Schutzwiderstand Rs=1k2 an D2 reicht fürs erste, ggf. sollten Sie jedoch eine Pufferung vorsehen.
 



Die Messungen zeigen, dass der Fehler bei 1-2% liegt.



Elektronik-Labor   Projekte   AVR