PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [ERLEDIGT] Fuse-Bits



MrPower
25.10.2015, 16:54
Hallo zusammen,
habe am Port C meines Mega644 8 Led´s angeschlossen. Ich Toggle den Port, aber es blinken nur die Led´s von C.0, C.1, C.6 und C.7. C.2 bis
C.5 bleiben Dunkel. Ich habe mal gehöhrt das man bestimmte Fuse-Bits ändern muß um bestimmte Pins als I/O nutzen zu können. Kann mir jemand
sagen ob das bei meinen Pins der Fall ist und welche Fuse-Bits geändert werden müssen.
LG MrPower

oberallgeier
25.10.2015, 17:05
.. Port C .. Mega644 8 Led´s .. es blinken nur die Led´s von C.0, C.1, C.6 und C.7. C.2 bis C.5 bleiben Dunkel ..Da schaun wa mal auf die Tabelle 14.3.3 Alternate Functions of Port C
im Datenblatt ATmega48A-bis-328-328P_8271G-02-2013.pdf

PC7 TOSC2 (Timer Oscillator pin 2)
PCINT23 (Pin Change Interrupt 23)
PC6 TOSC1 (Timer Oscillator pin 1)
PCINT22 (Pin Change Interrupt 22)
PC5 TDI (JTAG Test Data Input)
PCINT21 (Pin Change Interrupt 21)
PC4 TDO (JTAG Test Data Output)
PCINT20 (Pin Change Interrupt 20)
PC3 TMS (JTAG Test Mode Select)
PCINT19 (Pin Change Interrupt 19)
PC2 TCK (JTAG Test Clock)
PCINT18 (Pin Change Interrupt 18.)
PC1 SDA (two-wire Serial Bus Data Input/Output Line)
PCINT17 (Pin Change Interrupt 17)
PC0 SCL (two-wire Serial Bus Clock Line)
PCINT16 (Pin Change Interrupt 16)

Fazit:
Fuse JTAGEN darf nicht eingeschaltet sein, sprich: das Häkchen (bei meiner Anzeige im AVRStudio) muss weg.

Erläuterung: Ist diese JTAGEN gesetzt, dann ist JTAG enabled und die Pinne C2 bis C5 sind für JTAG zuständig.

Anmerkung: fabrikfrische Controller haben diese Fuse eingeschaltet - daher ist das eine ziemlich häufig vorkommende Frage.

Das neueste Datenblatt gibts hier. (http://www.atmel.com/images/Atmel-8272-8-bit-AVR-microcontroller-ATmega164A_PA-324A_PA-644A_PA-1284_P_datasheet.pdf)

MrPower
25.10.2015, 17:36
Hallo Oberallgeier,
danke für deine schnelle Antwort, jetzt funktioniert es.
Grüße MrPower

oberallgeier
27.10.2015, 08:53
Hallo oberallgeier,
habe mir das Datenblatt runtergeladen, komm aber ums verrecken nicht drauf wieso man das Fuse-Bit an oder abschalten muß. Habe das gleiche Problem mit Porta an dem ich meine Taster einlesen möchte. Kennst du eine Seite wo das näher beschrieben ist (möglichst auf deutsch).
Gruß MrPowerMal statt eines Hinweises doch selbst Suchmaschinen oder Suchfunktionen zu benutzen diese Links:
http://www.engbedded.com/fusecalc/
http://rn-wissen.de/wiki/index.php?title=Avr#Die_Fusebits
https://www.mikrocontroller.net/articles/AVR_Fuses <<<<< Dies ganz durchlesen!
Und dazu natürlich das Datenblatt lesen - ohne Datenblatt ist der Umgang mit Mikrocontrollern eins der letzten großen Abenteuer unserer Tage. Und - in vielen technischen Bereichen (nicht NUR!!) ist Englisch mittlerweile ein Muss.


.. Habe das gleiche Problem mit Porta an dem ich meine Taster einlesen möchte ..DAS nun wieder klingt mir eher nach ungeeigneten Portdefinitionen (DDRx, PORTx, evtl. PINx) , weniger nach "falschen" Fuses. Denn in diesem Kontext sehe ich die Aussage ".. Habe das gleiche Problem mit Porta .." nicht wirklich in einem Bezug zu Fusesettings.

MrPower
27.10.2015, 18:25
@ oberallgeier,
danke hast mir sehr weitergeholfen.
Gruß MrPower