Nicht angemeldet. · Kennwort vergessen · Registrieren

Lars
Mitglied seit 08/2013
11 Beiträge
Betreff: einfaches Problem...
Folgender Code:

#include <7seg.h>




void main (){
     sb_7seg_showNumber(5);
           
}

Dann "Build Solution" -> Tools -> AVR Programming -> (Tool/Device/Interface wie in Folie beschrieben) -> Memories -> bei Flash im Debug o. Build Ordner (beides probiert) die .hex auswaehlen -> programm

aber leider funktioniert es nicht und mir wird keine "5" ausgegeben.
Woran liegt das? Ist doch sicher nur ein kleiner Fehler nehme ich an?
Die 7seg anzeige funktioniert auf jeden Fall, habe andere Programme drueber laufen lassen.


Gruesse
Raim
GSPiC-Guru
Mitglied seit 05/2011
79 Beiträge
Die 7seg-Anzeige benutzt intern einen Timer. Dieser wird verwendet, um zwischen den beiden Anzeigen schnell hin und her zu schalten und so den Anschein zu erwecken, beide würden gleichzeitig leuchten. Damit dieser Timer funktioniert, müssen vorher Interrupts freigeschalten werden. Das heißt, du musst einmalig ganz am Anfang des Programms Interrupts erlauben:

void main(void) {
    sei();

    /* ... */
}

Den Umweg über AVR Programming und die .hex-Datei solltest du dir übrigens sparen können, indem du einfach im Menü oder der Toolbar die Option "Start without debugging" nimmst.
Schließen Kleiner – Größer + Auf diesen Beitrag antworten:
Prüfcode: VeriCode Gib bitte das Wort aus dem Bild ins folgende Textfeld ein. (Nur die Buchstaben eingeben, Kleinschreibung ist in Ordnung.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O :troll:
Weitere Zeichen:
Gehe zu Forum
Powered by the Unclassified NewsBoard software, 20110527-dev, © 2003-8 by Yves Goergen