Hallo Alle zusammen.
Heute möchte ich gerne einen Schritt weiter gehen, bzw. damit anfangen und eine Spannung mittels des ADC am AVR auswerten und auf ein PWM Signal umzusetzen!
Wissen wird für folgendes Gesucht:
Ein Potentiometer, als Spannungsteiler am ADC des AVR`s anschließen und mit einer Internen Referenzspannung von 5V vergleichen!
Es werfen sich jetzt Grundlegende Fragen auf!
- Wie stelle ich die INTERNE(?) Referenzspannung auf 5 V ein? Fusebits?
- Funktioniert das vergleichen einer Spannung und Umsetzung auf Soft PWM überhaupt? Geht dann nur Hardware PWM?
- Muss ich Zwingend bei ADC0 Anfangen oder geht auch ADC4? (Atmega32!!)
- Wie erstelle ich den Bascom /Basic Code für den ADC und wie binde ich das in die PWM ein?
- Zum Testen kann ich dort das Pollin Board nehmen oder muss ein andere Testplatine aufgebaut werden?
- Muss die PWM Frequenz für Lüfter zB. anders sein als für LEDs?
Ich denke das sind erstmal genug Fragen!
Als Referenzquelle dient mir das Tuturial:
http://halvar.at/elektronik/kl…_avr_kurs/adc_mit_getadc/
Eigentlich suche ich speziell das einbinden in die PWM und wie man das ADC Initialisiert und einstellt!!!
Bitte Nachsicht, denn ich bin Anfänger^^
Angedacht ist an den Atmega32 an den PINs folgendes:
PA0 = Potentiometer als Spannungsteiler. (Poti 1 an VCC 2 an AVR 3 an GND)
PC6/7 2x LEDs mit Vorwiederstand
Code Grundgerüst:
$regfile = "m32def.dat"
$crystal = 8000000
Config Porta.0 = Input
Poti Alias Porta.0
Config Portc.7 = Output
Pwmpin Alias Portc.7
Config Portc.6 = Output
Pwmpin2 Alias Portc.6
'Timer als PWM definieren
Config Timer0 = Timer , Prescale = 1
On Timer0 Pwm
Enable Timer0
'An die Interrupts
Enable Interrupts
'Variablen
Dim Zaehler As Byte
Dim Potipwm As Byte , Potipwm2 As Byte
Dim Pause As Byte
Pause = 50
Do
For Potipwm = 0 To 255
Potipwm2 = 255 - Potipwm2
Waitms Pause
Next Potipwm
Loop
End
'Soft PWM Programm
Pwm:
Incr Zaehler
If Potipwm > Zaehler Then Pwmpin = 1 Else Pwmpin = 0
If Potipwm2 > Zaehler Then Pwmpin2 = 1 Else Pwmpin2 = 0
Return
Alles anzeigen
Für jede Hilfe wäre ich dankbar!!
Grüße euer Prying