Not logged in. · Lost password · Register

Lars
Member since Aug 2013
11 posts
Subject: 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
Member since May 2011
79 posts
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.
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O :troll:
Special characters:
Go to forum
Powered by the Unclassified NewsBoard software, 20110527-dev, © 2003-8 by Yves Goergen