mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ATMega32 Fuse Bits und Anfänger Programm


Autor: Maverick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi, da ich dank euch jetzt meinen ATMega32 programmiern kann habe ich an
Pin 1 einen 1KOhm widerstand dann eine LED und diese dann an +5V
angeschlossen. Mit folgendem Code wollte ich den Pin auf Masse ziehen
was leider nicht geklappt hat.(JTAG ausgeschaltet)

Code:
.include "m32def.inc"

         ldi r16, 0xFF
         out DDRB, r16

         ldi r16, 0x00
         out PORTB, r16

loop:    rjmp loop

Leider liegt dann aber immernoch 3.98V an.

Und wie muss ich die Fuse Bits setzen damit er mein 8MHz Quarz mit den
beide 22pF Kondensatoren annimmt? Keinen Häkchen (PonyProg) vor CKOPT,
CKSEL0, CKSEL1, CKSEL2, CKSEL3? ISt das richtig? ich möchte ihn nicht
jetzt schon unbrauchbar machen.

Danke schonmal für eure Antworten

Mfg Maverick

Autor: Ronny Schulz (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
So sahen die FuseBits bei mir am ATmega16 aus (siehe Anhang). Beim 32er
ist es ziemlich genauso. Steht aber im Datenblatt ab Seite 24. Aber
probiere erstmal das so zum laufen zu bewegen.

Das JTAG ist für Port B nicht interessant. Was aber ein Problem sein
könnte, wenn Du deinen ISP-Programmer noch mit dran ist. Zum testen
nimm lieber erstmal einen anderen Port (z.B. A oder C).

Ich denke auch der 1k-Widerstand ist für die LED viel zu groß.

Autor: Rahul Der trollige (rahul)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
probier' es mal mit 220Ohm

Autor: Maverick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi danke für eure Hinweise ich werde es gleich mal Probieren

Autor: Maverick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi also ich habe jetzt 330 Ohm widerstände eingebaut und es klappt nicht
wenn ich sie "Kurzschliesse" fliest ein Strom von 8mA und sie
leuchten.

Ich habe alle Ports (A0->D7) als Ausgang auf GND gezogen und mal die
Spannungen getestet. Wenn ich beim Messgerät von GND zu den Pins messe
ist es so das ab und zu 0.5 - 0.4V zu Messen ist und ab und zu schwankt
die Spannung. Ich habe ein Messgerät, das den Berreich selber wählt und
dan spring immer hin und her ....

Beim Messen von +5V zu den Pins ist das gleiche aber meisten 4.5V
Messbar.

Wenn ich von GND zu den ersten Pins messe (wo die LED´s dranhängen) so
messe ich 3.9V und von +5V zu den Pins messe ich ca 0.3V.

Woran kann das alles liegen?

Vielen Dank schonmal

Maverick

Autor: Ronny Schulz (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Fehlerhafte Verdrahtung evtl. Wie ist das alles angeschlossen?

Ich würde mal einfach ohen LED probieren und die Hälfte der Portbits
anschalten und die andere aus. Eben in PORTA 0x0F z.B. laden und dann
messen. Und gleich um spätere Probleme aus den Weg zu räumen, setze
noch den Stack usw.:

.include "m32def.inc"  ;Definitionsdatei laden
.cseg      ;Beginn eines Code-Segmentes
.org 0      ;Startadresse=0
  rjmp  start

start:
  ldi    r16,LOW(RAMEND)  ;Stackpointer (low) auf
  out    spl,r16    ;RAM-Ende setzen
  ldi    r16,HIGH(RAMEND);Stackpointer (high) auf
  out    sph,r16    ;RAM-Ende setzen

Als Anhang nochmal die Config von meinem ATmega16, mmit internen 8 MHz
- Takt.

Autor: Ronny Schulz (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mal ein altes Programm von mir etwas angepasst. Das lässt die
LED an einem Portpin blinken. Im Moment ist es auf Portpin PA0
eingestellt. Bei 8 MHz Takt, wechselt die LED ihren Status in ca. 0,5
Sekunden.

Viel Spass! :)

Autor: Branko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

Wenn du interne BG Referenz(1,23V) als Eingang einschaltest(MUX 0x0E),
ADC Ergebnis für Vref=5,0V ist  250(+-10),
und für Vref=2,5V ist Ergebnis 500(+-20).
Bei Eingang Spannung von 5V ist Vref=5V und
bei 0V ist Vref=2,5V




                       __       __        Eingang
             AVCC ----|___|- . -|___|------ 0 bis 5V
                       4K7   |   4K7
                             |
                             |
             Vref -----------'

Autor: Branko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ops! falsch!

Autor: Maverick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi es tut mir sehr leid das ich erst jetzt schreiben kann.

Ich wollte mich nochmal rechtherzlich bedanken nun klapt es.

@Ronny Schulz Danke dein Code hat mir sehr geholfen.

Mfg Maverick

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.