Wischerintervallsteuerung mit einem ATMega8

Ein Kollege aus unserer CNC-Ecke benötigte für seinen Mazda MX5 eine Wischer-Intervallsteuerung. Die Intervallzeit sollte über ein Poti einstellbar sein.

 

1. Der einfache Schaltplan liegt im Downloadverzeichnis bereit.

 

2. Das Programm (Bascom) ist sehr kurz gehalten und liegt ebenfalls im Downloadbereich.

'######################################################################
'intervall.BAS

' Wenn man das Programm startet wird die Potistellung an ADC0
' ermittelt und in Abhängigkeit der Potistellung eine Intervallzeit
' üner PB0 ausgegeben.
' Die ON-Zeit ist immer 350ms
' Die OFF-Zeit ist variabel über das Poti einstellbar
'######################################################################

$regfile = "m8def.dat"
$crystal = 1000000

Config Portb.0 = Output
Portb.0 = 0

Dim A As Word

Config Adc = Single , Prescaler = Auto , Reference = Avcc
Start Adc

Do
A = Getadc(0) 'Einlesen vom Potiwert'
A = A * 10
If A < 1000 Then A = 1000 'minimale Wisch-Intervallzeit 1 sec'
Portb.0 = 1
Waitms 350 '350ms zieht das Relais an'
Portb.0 = 0
Waitms A
Loop
End