erfolgstyp
09.08.2009, 23:34
hallo zusammen
hab volgendes problem und zwar möcht ich mit nem atmega8 meine
frässteuerung erweitern. im moment wär ich schon froh wenn ich das mit
der stromabsenkung hinbekommen würd. hab zwei transistoren einer für den
ganz normalen strom (Vref beim l297) und einen für den haltestrom (ich
nenn den mal Vhalt). Von PCNC bekomm ich ja 5V wenn die motoren laufen
und 0V wenn sie stehen (oder umgekehrt wenn mans invertiert). hab dazu
folgendes programm gschrieben das einfach nur die tansistoren umschalten
soll je nach dem ob 5V oder 0V am eingang sind.
.include "m8def.inc"
ldi r16, 0b00111111 ;Datenrichtung PortD
out ddrD, r16 ;Datenrichtung PortD
ldi r16, 0b11101111 ;Datenrichtung PortC
out ddrC, r16 ;Datenrichtung PortC
ldi r16, 0b11111100 ;Datenrichtung PortB
out ddrB, r16 ;Datenrichtung PortB
loop:
sbic portC, 4 ;Wenn Stromabsenkung inaktiv
cbi portC, 6 ;Rücksetzte "Vref"
sbic portC, 4 ;Wenn Stromabsenkung inaktiv
sbi portD, 0 ;Setze "Vhalt"
sbis portC, 4 ;Wenn Stromabsenkung aktiv
cbi portD, 0 ;Rücksetzte "Vhalt"
sbis portC, 4 ;Wenn Stromabsenkung aktiv
sbi portC, 6 ;Setze "Vref"
rjmp loop
das will aber ums verrecken nicht laufen also an den fusebits liegts
nicht und an der beschaltung auch nicht (will den internen takt
verwenden) weil wenn ich alle pins im prog einfach high setz kann ich
überall 5V messen also schlussfolger ich draus dass was an meim programm
ned stimmt. die restliche DI/DO konfiguration is später für voll und
halbschritt
bin in sachen controller n blutiger anfänger vllt sieht jemand den
fehler ich bin echt n bisschen ratlos.
danke im vorraus mfg
hab volgendes problem und zwar möcht ich mit nem atmega8 meine
frässteuerung erweitern. im moment wär ich schon froh wenn ich das mit
der stromabsenkung hinbekommen würd. hab zwei transistoren einer für den
ganz normalen strom (Vref beim l297) und einen für den haltestrom (ich
nenn den mal Vhalt). Von PCNC bekomm ich ja 5V wenn die motoren laufen
und 0V wenn sie stehen (oder umgekehrt wenn mans invertiert). hab dazu
folgendes programm gschrieben das einfach nur die tansistoren umschalten
soll je nach dem ob 5V oder 0V am eingang sind.
.include "m8def.inc"
ldi r16, 0b00111111 ;Datenrichtung PortD
out ddrD, r16 ;Datenrichtung PortD
ldi r16, 0b11101111 ;Datenrichtung PortC
out ddrC, r16 ;Datenrichtung PortC
ldi r16, 0b11111100 ;Datenrichtung PortB
out ddrB, r16 ;Datenrichtung PortB
loop:
sbic portC, 4 ;Wenn Stromabsenkung inaktiv
cbi portC, 6 ;Rücksetzte "Vref"
sbic portC, 4 ;Wenn Stromabsenkung inaktiv
sbi portD, 0 ;Setze "Vhalt"
sbis portC, 4 ;Wenn Stromabsenkung aktiv
cbi portD, 0 ;Rücksetzte "Vhalt"
sbis portC, 4 ;Wenn Stromabsenkung aktiv
sbi portC, 6 ;Setze "Vref"
rjmp loop
das will aber ums verrecken nicht laufen also an den fusebits liegts
nicht und an der beschaltung auch nicht (will den internen takt
verwenden) weil wenn ich alle pins im prog einfach high setz kann ich
überall 5V messen also schlussfolger ich draus dass was an meim programm
ned stimmt. die restliche DI/DO konfiguration is später für voll und
halbschritt
bin in sachen controller n blutiger anfänger vllt sieht jemand den
fehler ich bin echt n bisschen ratlos.
danke im vorraus mfg