- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 10

Thema: Anfänger sucht Hilfe beim Programmieren des Asuro

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    19.02.2007
    Beiträge
    21

    Anfänger sucht Hilfe beim Programmieren des Asuro

    Anzeige

    Powerstation Test
    Hallo,
    kann mir bitte jemand helfen? Wir haben in der Schule folgende Aufgabenstellung bekommen:

    Das Hello World eines Mikrocontrollers ist das Leuchten einer LED. Der Asuro besitzt vier Leuchtdioden. Eine dieser
    Leuchtdioden ist zweifarbig und kann daher drei verschiedene Farben erzeugen. Ihre Aufgabe ist es, alle LEDs anzusteuern.
    Dazu sollen diese nacheinander aktiviert werden. Leuchten alle LEDs, so sind sie nacheinander wieder zu deaktivieren.
    Dies alles soll in einer Schleife geschehen, die die Abfolge nach Beendigung erneut zur Ausf¨uhrung bringt. Es ist zu
    beachten, dass zwischen den einzelnen Schritten eine kurze Pause erfolgen muss, da sonst die LEDs zu schnelle f¨ur das
    menschliche Auge ein- und ausgeschaltet werden. Eine geeignete Verz¨ogerungsfunktion der Asuro-Bibliothek ist dabei zu
    nutzen. Die Reihenfolge der LEDs ist in Abbildung 1 angegeben und sollte eingehalten werden.

    Ich habe die Aufgabe so gelöst:

    #include "../lib/asuro.h"

    int main(void){
    Init();
    StatusLED(OFF);
    while(1){

    BackLED(OFF,ON);
    Msleep(500);

    BackLED(ON,ON);
    Msleep(500);

    FrontLED(ON);
    Msleep(500);

    StatusLED(GREEN);
    Msleep(500);

    StatusLED(Yellow);
    Msleep(500);

    StatusLED(RED);
    Msleep(500);

    BackLED(OFF,OFF);
    FrontLED(OFF);
    StatusLED(OFF);


    for(int i=0;i<=100;i++) Sleep(255);
    }
    }

    Jetzt wollte ich fragen, ob jemand weiss, was ich falsch gemacht habe und wie ich das ändern soll, damit es funktioniert.

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    04.01.2007
    Beiträge
    26
    Was funktioniert den nicht?
    compilieren?
    Ausführung des Programms? (unerwartete Ereignisse usw..)

    Aja benutze bitte die [code*][/code*] -Buttons (ohne die *) :)

    Auf die schnelle finde ich verdächtig:

    #include "asuro.h" //" " wenn .h im gleichen ordner wie die .c datei ist
    //< > wenn im verzeichniss des compilers die lib drinn is...


    dann...
    Msleep(500);
    Benutzt du überhaupt die neue Lib die Msleep enthält?

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    19.02.2007
    Beiträge
    21
    Benutze folgende lib: Revision 2.60 vom 27.September2005, weiß nicht, ob es die neue ist.

    Also, wenn ich dass Programm so habe und dann bei Tools auf Make All gehe, dann kommt bei mir folgender Fehler:
    > „make.exe“ all
    make.exe: ***No rule to make target àll`. Stop.
    > Process Exit Code: 2

    Ist es überhaupt ein Fehler und wie muss ich danach weiter vorgehen. So viel ich weiß, muß ich es doch Flashen. Wie funktioniert das genau?

    Besten Dank

  4. #4
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    Leuchten alle LEDs, so sind sie nacheinander wieder zu deaktivieren.
    Zeit vergessen!

    for(int i=0;i<=100;i++) Sleep(255);
    i ist nicht definiert.

    StatusLED(Yellow);
    YELLOW wäre richtiger.
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    04.01.2007
    Beiträge
    26
    Ich schließe mal daraus das du das Programmers Notepad benutzt.

    Als prinzipiell geht das ganze so:

    -Programm schreiben
    -Programm in den Ordner "First Try" über/anstatt test.c speicher
    (das makefile sucht nach dem programm namens test.c und compiliert nur dieses - willst du es anders nennen musst du das im makefile ändern)
    -make
    -jetzt hat man eine .hex datei im ordner
    -die hex datei flashen
    -hoffen das es klappt :D

    edit:
    wie ich seh hat radbruch auch noch was gesehn ^^'

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    19.02.2007
    Beiträge
    21
    Was ist dieses i und wie kann ich es definieren?

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    19.02.2007
    Beiträge
    21
    Wo finde ich diese Ordner genau?

    Programm in den Ordner "First Try" über/anstatt test.c speicher
    (das makefile sucht nach dem programm namens test.c und compiliert nur dieses - willst du es anders nennen musst du das im makefile ändern)
    -make

    Benutze das Programm Notepad 2

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    04.01.2007
    Beiträge
    26
    i soll in deinen Fall ja ein integer (sagmal gibt euch euer prof hausaufgaben, die ihr nicht lösen könnt?! das ist ein gutes c buch: http://www.galileocomputing.de/openbook/c_von_a_bis_z/) also eine ganzahlige zahl (sprich, ohne ein komma). jetzt musst du den Compiler überhaupt mal sagen wer i ist. das machst du mit int i;. das ganze aber noch vor Init(); schreiben.

    Wo finde ich diese Ordner genau?
    hast du nach studieren der anleitung, die in der anleitung beshcriebenen, first tries gemacht?
    wenn ja- dann weißt du sicher welcher ordner gemeint ist.
    wenn nein-könntest du es ja nachholn


    so.. jetzt gute nacht, bin morgen wieder on. habt ziemlich kopfweh -.-
    es wird dir schon wer helfen ;D

  9. #9
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    38
    Beiträge
    4.063
    du kannst mal probieren, die ersten beispiele der anleitung nachzubauen. NICHT rauskopieren, dann funktionieren sie nicht.
    die asuro.c sowie die asuro.h solltest du am einfachsten ins gleiche verzeichnis wie deinen quellcode (test.c) kopieren. dementsprechend heisst dann die erste zeile in deinem programm
    #include "asuro.h"
    Dann solltest du erstmal in ruhe die Beispiele aus der anleitung probieren, die anleitung ist für solche grundsätzlichen sachen absolut perfekt. einfach mal in ruhe lesen.
    wenn das make im pn2 nicht funktioniert, gibts noch ne andere möglichkeit:
    start>ausführen>"cmd" eingeben>OK
    dann musst du mithilfe der dos-befehlszeile in das passende verzeichnis wechseln und gibst dann "make all" ein.
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  10. #10
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    13.12.2006
    Ort
    Saarland
    Alter
    44
    Beiträge
    314
    schreib mal statt Msleep nur Sleep einfach das M weglassen hat bei mir funktioniert bei der version. Und Hör auf den rat von Damaltor hat mich auch weiter gebracht ist eigendlich ganz einfach (einfach nur lesen).

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests