www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik IO atmega88 funktioniert nicht?


Autor: Felix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi zusammen,

mache gerade meine ersten erfahrungen mit einem atmega88 auf einem 
stk500. folgender code funktioniert einfach nicht:

#include <avr/io.h>
// #include <stdint.h>

int main(void)
{
    /* Setzt das Richtungsregister des Ports B auf 0xff
       (alle Pins als Ausgang): */
    DDRB = 0xff;
    PORTB = 0x0f;

    /* DDRC |= ( 1 << PC5 ); //PC0 Ausgang
    PORTC |= ( 1 << PC5 ); //Pull up an */

    while (1)
    {
    }


    return 0;
}

egal ob port b oder c, ich bekomme keine led zum leuchten.

vielen dank im voraus!

Autor: TorstenS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Felix,

versuch doch mal, die LED mit Low-Pegel zu aktivieren.

Autor: Felix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi Torsten,

ja, versuche beide zustände, daher ja PORTB = 0x0f;. es hängen alle 8 
leds des boards an port b.

gruß
felix

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Flachbandkabel mit den 10-poligen Steckern richtig aufgesteckt?

Kannst du mal komplett auf PORTC wechseln? PORTB kann Sonderfunktionen 
haben, die möglicherweise stören bzw. auf dem STK500 berücksichtigt 
werden müssen (Taktquelle, ISP-Programmierung).

    DDRC = 0xff;
    PORTC = 0x0f;

Autor: Michael K. (mmike)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PC6 ist Reset. PC7 gibts nicht. Bleibt noch PC0 - PC5 ....

Versuchs mal mit Port D .... dann sollte es klappen ...

Grüße,
Michael

Autor: Michael G. (linuxgeek) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mess doch einfach mal die Pegel an diesem Port, an den unteren 4 Bits 
muesste ein High und an den oberen ein Low-Pegel messbar sein, d.h. dass 
die oberen 4 Bits (PB3-PB7) "leuchten".

Wie hast Du Dein Programm compiliert? Mit gcc? Falls ja, hast Du auch 
-mmcpu richtig gesetzt? Mehr Infos bitte... bist Du Dir sicher dass das 
Programmieren korrekt funktioniert?

Michael

Autor: Felix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,

kabel ist richtig gesteckt, bekomme auch das gleiche ergebnis, wenn ich 
direkt an den beinchen des uc messe.

auch bei portc tut sich ebenfalls nicht.

danke und gruß

Autor: Felix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
port D ist auch nicht besser, scheint wohl ein grundsätzliches problem 
zu sein...

Autor: Felix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mmcu ist atmega88 (so wie es sein soll), ich arbeite mit avrStudio und 
gcc.
gruß und danke!

Autor: Michael G. (linuxgeek) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich wuerde mal sagen da laeuft grundsaetzlich was verkehrt. Bist Du Dir 
sicher dass das Programmieren klappt? Tu mal irgendwas in die Schleife 
rein, leere Schleifen sind nich so hittig...

Du willst also sagen dass Dein Programm nicht laeuft, richtig?
Hast Du an den Watchdog gedacht? Fuses richtig gesetzt, Controller im 
richtigen Sockel im STK?

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.