Tja, dann scheint ja die Software zu stimmen ...Zitat:
Zitat von Jon
Ich würde noch mal die Hardware durchprüfen.
Mit nem Oszi und nicht mit einem Multimeter .....
Druckbare Version
Tja, dann scheint ja die Software zu stimmen ...Zitat:
Zitat von Jon
Ich würde noch mal die Hardware durchprüfen.
Mit nem Oszi und nicht mit einem Multimeter .....
Zitat:
Das Programm ist aber so in Ordnung?
Ja,ich sehe da jetzt kein Problem.
Ich probeir mal eben an dem M16 der hier liegt.
Interessant.
Pass es dir an und probier mal das Programm hier.
Mit direktem Wert geht es aber über ne Variable will er nicht.Code:$regfile = "m16def.dat"
$crystal = 16000000
$baud = 1200
Dim A As Word
Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 8
Config Pind.5 = Output
Config Pind.4 = Output
Do
Gosub Testa
Waitms 3000
Gosub Testb
Loop
Testa:
Pwm1a = 100
Waitms 100
Pwm1a = 200
Waitms 100
Pwm1a = 400
Waitms 100
Pwm1a = 700
Waitms 100
Pwm1a = 1023
Waitms 100
Pwm1a = 700
Waitms 100
Pwm1a = 400
Waitms 100
Pwm1a = 200
Waitms 100
Pwm1a = 100
Waitms 100
Pwm1a = 0
Waitms 1000
Pwm1b = 100
Waitms 100
Pwm1b = 200
Waitms 100
Pwm1b = 400
Waitms 100
Pwm1b = 700
Waitms 100
Pwm1b = 1023
Waitms 100
Pwm1b = 700
Waitms 100
Pwm1b = 400
Waitms 100
Pwm1b = 200
Waitms 100
Pwm1b = 100
Waitms 100
Pwm1b = 0
Waitms 1000
Return
Testb:
For A = 1 To 1023 Step 1
Pwm1a = A
Pwm1b = A
Waitms 20
Next A
Return
End
Wenn ich PWM = 8 nehme und Byte für A dann gehts.
Scheint nen neuer Bug zu sein denn früher gabs die Macke nicht.
Da ist also aufspitten des Wertes und direktes einschreiben in die Register angesagt oder du begnügst dich mit 8 Bit.
Du verwendest Clear Down, wo ist der Unterschied zu Clear Up. Das habe ich noch nicht ganz verstanden.
Aber ich vermute mal, dass das was du als Programm nicht fungtioniert, da die Motoren ohne PWM auch schon laufen
@Hanni,
Hallo ich bin 14, da kann ich mir kein Oszi kaufen, dass wäre für mich viel zu teuer und wo anders habe ich keinen Zugriff auf einen Oszi.
konntest du aber nicht wissen, deswegen ...
jon
Ich hab ja schonmal den Tip gegeben an die beidne Oszillatorausgänge je eine LED mit vorwiderstand zu hängen.Zitat:
Du verwendest Clear Down, wo ist der Unterschied zu Clear Up. Das habe ich noch nicht ganz verstanden.
Mach das mal und Probier mit Up und Down herum.
Dazu das Kapitel über die Timer im Datenblatt.
Is wirklich nicht schwer.
PS:
Hab mal gaaaaanz blöd bei MCS deswegen angefragt. :wink:
Es Funktioniert ja nur mag Bascom derzeit keine Word-Variablen übergeben.
Hallo,
ich habe eben zum zigstenmal das Programm neu geladen und jetzt geht es auf einmal, wenn ich die PWM ändere.
Nur habe ich einen eingeschränkten bereich bei Up von 1-150.
Ist das normal?
Sonst schonmal danke für die Mühe und Geduld.
jon
Ups, das hab ich übersehen :DZitat:
Zitat von Jon
Nuja, ich hab auch nur auf der Dienststelle (bin Techniker bei der BW) zugriff auf nen Oszi (4 Kanal Tektroniks TDS 3014) und ich muss sagen, mit Oszi debuggt sich manches fast von selbst (jedenfalls wenn man weiss, was man messen will und was man erwartet).
Nö,ist es nicht.Zitat:
Zitat von Jon
Wenn du PWM=10 nimmst dann gehts eben 10-Bittig also 0-1023
Wenn ich nachmesse, wie viel Volt an den Anschlüssen des Motors sind, dann kann ich dort bei 150 Up 2,4Volt und bei 1 Up 5,0Volt messen. Alles darunter erzeugt beim Motor nur ein hohes Pfeifen.
Von daher würde ich sagen, dass das normal ist.
jon