Hallo,
JTAG deaktiviert?
Gruß
Jens
Hallo,
ich habe ein Stück Quellcode, der mich zur Zeit zum verzweifeln bringt.
Inzwischen habe ich das ganze soweit gekürzt dass nur noch folgendes übrig geblieben ist.
An PC0 und PC2 hängt je eine LED. Die PC0 Led blinkt schön, so wie es sein sollte. Jedoch blinkt die PC2 Led nicht mit. Am Anfang 1x an und aus geht aber.Code:int main(void){ DDRC=0xff; PORTC=0xff; DDRA=0x00; PORTA=0xff; PORTC &= ~(1<<PC2); //ON _delay_ms(1000); PORTC |= (1<<PC2); //OFF _delay_ms(1000); while (1){ PORTC &= ~(1<<PC0); //ON PORTC &= ~(1<<PC2); //ON _delay_ms(BIT_1_DURATION); PORTC |= (1<<PC0); //OFF PORTC |= (1<<PC2); //OFF _delay_ms(BIT_GND_DURATION); } }
Hallo,
JTAG deaktiviert?
Gruß
Jens
Mega32 ? Jtag Pin enable (Fuse gesetzt?)Zitat von Tux12Fun
Im Doc steht: If the JTAG interface is enabled, the pull-up resistors on pins PC5(TDI), PC3(TMS) and PC2(TCK) will be activated even if a reset occurs.
Ciao sagt der JoeamBerg
Ja, ist glaub ich der Fall. Habe folgende Einstellungen vor ein paar tagen mal gesagt bekommen:
https://www.roboternetz.de/phpBB2/viewtopic.php?t=46715
(unten das Bild)
Kann ich JTAG einfach aktivieren oder hat das irgendwelche anderen Auswirkungen?
Und noch eine Frage, warum funktioniert dann das erste mal an aus ?
Zitat von Tux12FunDE aktivieren !Zitat von oberallgeier
Ungefähr so könnten die Fuses aussehen: http://www.engbedded.com/cgi-bin/fc....pply+fuse+bits
Auf jeden Fall musste JTAGEN disablen.
Ciao sagt der JoeamBerg
also wenn ich meine Fuse Bits richtig lese ist JTAG ausgeschaltet
Ach so - noch ne Frage:
Wie groß ist BIT_1_DURATION und BIT_GND_DURATION ? ? Immerhin steht oben:
...und in diesem Rumpfstück werden weder der Controller noch diese beiden Werte definiert. Ich nehme auch an, dass Du zwei verschiedene Werte benötigst, sonst könntest Du das Ganze kürzer schreiben, indem Du die Bits nur toggelst (jeweils umschaltest). Ungefähr so:... soweit gekürzt dass nur noch folgendes übrig geblieben ...
Code:while (1) { PORTC ^= ((1<<PC0)|(1<<PC2)); // 2 Portpins toggeln _delay_ms(BIT_GND_DURATION); }
Ciao sagt der JoeamBerg
BIT_1_DURATION ist per define auf 10*1000
BIT_GND_DURATION ist per define auf 20*1000
Im Moment geht es mir nicht darum die 2 Pins mit einem Befehl zu toggeln, sondern ich würde gern verstehen, warum das toggeln von je einem Pin nicht funktioniert, bzw. was mein bereits stark gekürzter quellcode da anders macht als ich es mir dachte
Hi,
... soweit gekürzt dass nur noch folgendes übrig geblieben ...Tja, da Du nur einen Teil des ganzen Codes gepostet hast und über Deinen Controller sowie über Deine Fuses auch nix bekannt ist , weigert sich meine Glaskugel was dazu zu sagen. Jedenfalls laufen Deine knappen Zitate mit den unterschiedlichen DURATION´s bei mir, mit meinen eigenen (nicht weggekürzten) defines und includes, dem nicht erlaubten JTAGEN und all dem dämlichen Schrott auf meinem m32 korrekt - dauert halt etwas lange der Blinkzyklus . . . . .Zitat von Tux12Fun
Ciao sagt der JoeamBerg
Lesezeichen