-
-
Neuer Benutzer
Öfters hier
So Jungs und Mädels,
zwar keine Antwort bekommen, aber selbst rausgefunden, wo mein fehler war. darf man gar keinen erzählen.
funktioniert doch, wenn man Ocr0a = x und Ocr0b = x schreibt.
mein Fehler war, daß ich noch $baud = 9600 oben drin stehen hatte. Das mochte er gar nicht. Hat ja nun gar keine UART (soweit ich weiß). Hat Bascom aber auch nichts zu gesagt. Hat mir den Fehler bei den Pwm-Zeilen rausgegeben.
Na ja. Nun alles OK.
hier mein kleines Progg:
'--------------------------------------------------------------
' Drehzahlregelung -
' Speichert Drehzahl im Eprom (zB. für Stromausfall)
' Speicherung max. ca. alle 10 sec und nur nach Tastenbetätigung
' um das Eprom zu schonen
' Tasten an PB3 und PB4, LED ("ist gespeichert") an PB2
' Motor oder Leistungstreiber an PB0 und/oder PB1
'---------------------------------------------------------------
$regfile = "ATtiny13.DAT"
Config Pinb.0 = Output
Config Pinb.1 = Output
Config Pinb.2 = Output
Config Pinb.3 = Input
Config Pinb.4 = Input
Portb.3 = 1
Portb.4 = 1 'PullUP ein
Config Timer0 = Pwm , Pwn = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up , Prescale = 8
Enable Timer0
Enable Interrupts
Dim D As Byte 'D = Drehzahl
Dim Z As Long 'Zähler für "Eprom-Schonung"
Dim T As Byte 'toggle für "Eprom-Schonung"
Dim E As Eram Byte
Readeeprom D , &H10
If D = 0 Then D = 150
If D = 255 Then D = 150
Do
Ocr0a = D 'PWM Wert setzen
Ocr0b = D
If Pinb.3 = 0 And D > 1 Then
Decr D
T = 1 'Wenn Taste, dann auf 1 toggeln,
End If 'damit irgendwann gespeichert wird
If Pinb.4 = 0 And D < 254 Then
Incr D
T = 1
End If
Incr Z 'Zähler erhöhen bei jedem Durchlauf
If Z > 500 Then
Z = 0
If T = 1 Then
Writeeeprom D , &H10 'Drehzahl speichern
T = 0
Portb.2 = 1 'aufblinken, wenn gespeichert wird
Waitms 500
Portb.2 = 0
Waitms 500
End If
End If
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen