-
Also ich habe im Datenblatt mal gelesen, dass der erste Impuls möglicherweise verfälscht sein kann, wenn man das OCR-Register im "laufenden Betrieb" ändert. Für die meisten PWM-Anwendungen mag der erste Impuls nicht besonders wichtig sein - aber hier wäre das natürlich fatal.
Was hältst Du von folgendem Ansatz:
Code:
Dim Impuls(4) as Word 'Ist ein Array aus 4 Word-Variablen
Dim Index as Byte 'Zum Durchzählen von Impuls(1) bis Impuls(4)
Dim Flag as Bit 'Zeigt Timer1-Interrupt an
Config PORTX.Y = Output 'Ausgangs-Pin
On Timer1 Timer1_ISR
Enable Timer1
Enable Interrupts
Do
...
...
If Flag = 1 then
Flag = 0
If PORTX.Y = 1 then
PORTX.Y = 0
Timer1 = Timer1 + 64429 'Nächster Überlauf in 0,3 ms
Else
PORTX.Y = 1
If Index = 4 then Index = 1 Else Index = Index + 1
Timer1 = Timer1 + Impuls(Index)
End if
End if
...
...
Loop
On Timer1_ISR:
Flag=1
Return
Im Rest der Hauptschleife kannst Du Dich dann darum kümmern, dass die Werte Impuls(1) bis Impuls(4) per RS232 aktualisiert werden. Sie bestimmen, wie lange Timer1 bis zu seinem nächsten Überlauf braucht, und somit die Dauer der High-Impulse. Logischerweise berechnen sie sich so: Impuls = 65535 - (3686400 * Impulslänge in Sekunden).
Diese Idee ist allerdings nicht getestet, noch nicht mal compiliert, weil ich hier gerade kein bascom habe. Aber vielleicht reicht ja die Idee schon...
-
Ich hab jetzt deine Idee noch nicht genau durchgelesen, aber ich denke ich werde mir ein Quarz mit 8Mhz besorgen und die Lösung die ich oben verlinkt habe nutzen.
Edit: Könnte mir eventuell einer das Programm kompilen ?
Weil ich nur die Demo von Bascom habe ?
MFG Thalhammer
-
Hallo!
Was denn nun?
Die Servo-bas von oben belegt grade mal 12% vom Flash,
und die Soft von Mitchsoft liegt als Hex vor ????
MfG
Rone
-
Ach ja stimmt hatte übersehen das die schon als Hex vorliegt.
;) Mein Fehler *duck*
So Problem erledigt, Es funktionierd wie es soll.
Muss mir nur bei gelegeheit noch ein externes Quarz mit 8Mhz besorgen, wobei wenn ich mir das so ansehe ist das signal doch recht stabil dafür das ich für sowas den internen Takt nehme :-)
So jetzt steht dem Flug nichts mehr im weg :-)
Ein XBEE Pro noch dazu und fertig.
MFG Thalhammer
-
Was hast du denn vor? Soll das ne Drohne werden? Dann bitte ich um mehr Informationen!
-
Soll werden ist relativ:
Ich hab schon seit längeren einen Mikrokopter als Quadro.
und denn wollte ich mal über Joystick steuern.
War mehr ne witz idee, und ich hätte auch nicht gedacht, das es so relativ einfach ist.
Naja dann ist mir eingefallen das ich ja noch mein MKII hab, und hab einfach mal auf gutglück hier gepostet.
naja Die PC Software schreib ich selbst und werd jetzt erstmal gucken.
Problem ist halt das ich momentan recht knapp bei kasse bin und 2x XBee Pro kosten halt doch fast 80 €
MFG Thalhammer
EDIT:
Jetzt schreib ich aber erstmal die Software, erst Konsole dann GUI für Unix und Windows, dann mal schauen ob ich mir die Xbee's hol.
Aber wenn du einen guten shop in Deutschland kennst wo ich die herkriege immer her damit.
Weil Reichelt und co haben alle nur diese 2mW module.
ich will aber die vollen 100, auch wenn ich sie nicht nutzen darf :-)