PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Fast PWM mit Bascom (Mega8)



Roberto
24.11.2004, 03:59
Hallo

Kann man eigentlich mit dem Bascom auch ein Fast-PWM machen?!
(ohne Assembler) (Für Mega8)
Oder kann das Bascom überhaupt nicht ?!

Gibt es zum Fast PWM irgendwo einen Link, Infos ... in Deustch ??
(vielleicht mit Bascom ?)


m.f.G. Roberto

harryup
24.11.2004, 09:46
klar, du kannst alles in bascom machen, du kannst ja die register direkt beschreiben mit XXXX(registername) = %B00001111 (beispiel)
welches register für fast-pwm beim mega8 mit welchen werten beschrieben werden muss steht im datenblatt.
gruss, harry

Roberto
24.11.2004, 14:29
Hallo Harry

Das mit Register beschreiben, dachte ich mir fast...

Aber mit nur Bascom geht es vermutlich nicht ?!
(so wie mit dem normalem PWM.. (Timer 1 = PWM u.s.w.))

>welches register für fast-pwm beim mega8 mit welchen werten >beschrieben werden muss steht im datenblatt.

Leider schaut es da mit dem englisch schlecht bei mir aus :-(

Gibt es da wo Infos im Netz ?!
Das einzige was ich dazu gefunden habe , ist der Link:
http://www.mc-project.de/Pages/pwm.html

Soweit ich gelesen habe, soll man ja bei Fast-Pwm , die obere Grenze
auch laufend ändern können.. ?!
Wie geht das ?!

harryup
24.11.2004, 21:00
hi
Tccr2 = 01110001 ' config timer2 in fast-pwm
wenn du am ball bleiben willst - um englisch führt halt kein weg. aber so wild ist's ja auch nicht, sieh dir mal auf seite 115 die beschreibung des
(T)imer(C)ounter(C)ontrol(R)egister(2) an, da erklärt sich vieles fast schon von alleine.
gruss, harry

24.11.2004, 22:05
Hallo harryup.

Du bist in den Bits glaube ich, ein wenig verrutscht.

Sollte doch so sein:

Tccr2 = 0110 1001

FAST PWW, Clear on Compare,Set at Top, Vorteiler 1

oder

Tccr2 = 0111 1001
FAST PWM, Set on Compare,Clear on Top, Vorteiler 1

MFG
Dieter

Roberto
25.11.2004, 01:42
Hallo

Danke, werde das dann mal probieren... :-)

Aber wenn ihr noch immer mit Register kommt, heisst das vermutlich, dass es in Bascom selbst dafür keinen Befehl gibt ?!

harryup
26.11.2004, 17:25
oh sorry, wenn ich 'verrutscht' bin, eigentlich mag ich die methode mit registern nicht, ich verwende ja 'ne hochsprache. prinzipiell gibt's den passenden bascom befehl schon, nur bei pwm wird's irgendwie problematisch, es ist zu undurchsichtig, welcher parameter was bewirkt und in welcher reihenfolge die parameter übergeben werden müssen. (ob sich das überhaupt auswirkt?)
ich hatte schwierigkeiten mit dem mega8 bei prescaler = 1, da kam überhaupt nix an, mit grösseren gings dann.
@roberto: bravo, ausprobieren ist der kürzeste weg zur erfahrung.
sorry nochmal, gruss, harry

26.11.2004, 20:28
Hallo Harry

Vielleicht kannst Du mir dann den Bascom befehl schreiben, wenn du ihn findest..
Möchte auch nicht unbedingt mit Registern arbeiten, weil es eben in Bascom gehen sollte ;-)

Mit Prescale hatte ich noch keine Probleme...
(Ausser mal mit Timer2 und PWM)

Schreibe da ein Abhandlung über das PWM mit dem Mega8 und darum
sollte es schon genau sein.. ;-) (nicht nur mit probieren )

Roberto
26.11.2004, 20:29
ups... ich war das :-)

harryup
27.11.2004, 09:15
hi,
na der befehl heisst 'config TimerX = PWM....(und hier die parameter)'
der macht ja nix anderes, als das tcc-register mit nullen und einsen zu beladen. unklar ist mir nur, welcher parameter hier welchen wert an welche position setzt. das blöde ist, dass bei manchen avr's parameter wirkung zeigen, bei anderen nicht. und 'ne liste gibts meines wissens nicht, der zu entnehmen ist, welche konfiguration bei welchem avr überhaupt möglich und 2. sinnvoll ist. bleibt also, wenn's denn richtig ordentlich sein soll, das register direkt zu beladen und die parameter dem jeweiligen datenblatt zu entnehmen.
gruss, harry

Roberto
27.11.2004, 14:30
>na der befehl heisst 'config TimerX = PWM....(und hier die parameter)'
schon klar, aber für Fast Pwm gibt es halt keinen Parameter dafür ..
Zumindest soweit ich bei der Hilfe gesehen habe...

Scheint wohl nur direkt über die Register zu funktionieren...