- LiFePO4 Speicher Test         
Seite 1 von 5 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 48

Thema: Anfänger Frage zum Programmieren

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    11.04.2007
    Ort
    Hildesheim
    Alter
    36
    Beiträge
    41

    Anfänger Frage zum Programmieren

    Anzeige

    Powerstation Test
    Hallo ich habe den Asuro soweit jetzt zusammen gebaut und getestet es läuft alles so wie es sein soll, aber ich bin gerade dabei mir die Programmierung in c näher zu bringen. Und bin gerade bei dem Punkt "Schleifen". Mein problem bzw. meine Frage ist ich habe jetzt mal versucht das Programm was in der Anleitung steht zu übertragen und auf den Asuro zu Flashen aber er fährt nicht los so wie es glaube ich sein sollte oder? Hier ist der Auszug aus dem Programm:
    #include "asuro.h"
    int main(void){
    int()
    MotorDir(FWD,FWD);
    MotorSpeed(120;120);
    StatusLED(GREEN);
    while (PollSwitch()==0){
    SerWrite("Alles OK!\n",10);
    }
    MotorSpeed(0,0);
    StatusLED(RED);
    while (1){
    SerWrite("Aua!\n",5);
    }
    }
    Ich weiß nicht ob ich was falsch gemacht habe, oder geht das gar nicht mit dem " Programmers Notepad" doch oder?
    Selbst wenn ich einfach Prgrammiere das die Status Led Geld leuchten soll keine Reaktion.

    Vielleicht könnt Ihr mir helfen!

    Vielen Dank im Vorraus

  2. #2
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.063
    nicht int() sondern Init();

    bitte benutze den code button um code zu posten. dann gibts diese hübsche kleine box...
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.12.2006
    Ort
    Eberbach
    Beiträge
    199

    Re: Anfänger Frage zum Programmieren

    Hallo,
    Zitat Zitat von Felix1988
    ...
    Mein problem bzw. meine Frage ist ich habe jetzt mal versucht das Programm was in der Anleitung steht zu übertragen und auf den Asuro zu Flashen aber er fährt nicht los so wie es glaube ich sein sollte oder? Hier ist der Auszug aus dem Programm:
    #include "asuro.h"
    int main(void){
    3: int()
    MotorDir(FWD,FWD);
    5: MotorSpeed(120;120);
    ...
    8: SerWrite("Alles OK!\n",10);
    ...
    13: SerWrite("Aua!\n",5);
    ...
    }
    Ich weiß nicht ob ich was falsch gemacht habe, oder geht das gar nicht mit dem " Programmers Notepad" doch oder?
    ...
    das Programm hat Syntax-Fehler in Zeilen 3 und 5, das dürftest Du so nicht übersetzt gekriegt haben:
    Code:
    C:\ASURO_src\AsuroLib\work\Simple1>make
    set -e; avr-gcc -MM -mmcu=atmega8 -I. -g -Os -I../../lib/inc -funsigned-char -fu
    nsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahl
    ms=test.lst test.c \
            | sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > test.d; \
            [ -s test.d ] || rm -f test.d
    -------- begin --------
    avr-gcc --version
    avr-gcc.exe (GCC) 3.3.1
    Copyright (C) 2003 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    
    Size before:
    test.elf  :
    section     size      addr
    .text       1956         0
    .data         22   8388704
    .bss          21   8388726
    .noinit        0   8388747
    .eeprom        0   8454144
    .stab       8040         0
    .stabstr    3174         0
    Total      13213
    
    
    avr-gcc -c -mmcu=atmega8 -I. -g -Os -I../../lib/inc -funsigned-char -funsigned-b
    itfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.l
    st test.c -o test.o
    test.c: In function `main':
    test.c:3: error: parse error before ')' token
    test.c:5: error: parse error before ';' token
    make: *** [test.o] Error 1
    In Zeile 3 sollte es Init(); heißen, anstelle von int(), und in Zeile 5 müssen die Argumente von MotorSpeed() mit Komma getrennt sein.
    In Zeilen 8 und 13 solltest Du besser \r\n anstelle von \n nehmen, da Du sicher nicht nur eine Zeile nach unten, sondern zum nächsten Zeilenanfang im (Hyper)Terminal möchtest.
    Hier der korrigierte Quelltext, Du solltest Quelltext mit [ code ][ / code ] einrahmen:
    Code:
    #include "asuro.h"
    int main(void){
    	Init();
    	MotorDir(FWD,FWD);
    	MotorSpeed(120,120);
    	StatusLED(GREEN);
    	while (PollSwitch()==0){
    			SerWrite("Alles OK!\r\n",11);
    	}
    	MotorSpeed(0,0);
    	StatusLED(RED);
    	while (1){
    			SerWrite("Aua!\r\n",6);
    	}		
    }
    Gruß, Hermann.
    myIrAsuro.Bild hier  

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    11.04.2007
    Ort
    Hildesheim
    Alter
    36
    Beiträge
    41
    Hallo danke dafür, die Fehler hätte ich eigentlich auch finden können aber es scheint immer noch ein fehler zu sein ich habe dein korrigiertes Programm eingefügt und geflasht aber es ist das gleiche wie vorher er bewegt sich kein Stück oder muss man da erst noch irgendwo drauf drücken das er los fährt?
    Felix

  5. #5
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.063
    füg mal hinter init()

    Msleep(1000);

    ein. der asuro müsste dann nach ca einer sekunde losfahren. so wird verhindert, dass die pollswitch-abfrage schon zu beginn danebengreift.

    halt mal den transceiver drüber. was "sagt" der asuro?
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    11.04.2007
    Ort
    Hildesheim
    Alter
    36
    Beiträge
    41
    Du meinst sagen im Hyper Terminal? das sagt er gar nichts

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.12.2006
    Ort
    Eberbach
    Beiträge
    199
    Hi,
    Zitat Zitat von Felix1988
    Du meinst sagen im Hyper Terminal? das sagt er gar nichts
    ... da sollte er aber was sagen, zuerst immer "Alles OK!", und danach immer "Aua!" ...

    Hier der Output bei mir, fährt bis Tasteranschlag, dann stoppt er und gib endlos "Aua!" aus:
    Code:
    Alles OK!
    Alles OK!
    Alles OK!
    Aua!
    Aua!
    Aua!
    Aua!
    Aua!
    Aua!
    Aua!
    Aua!
    Aua!
    Aua!
    Aua!
    Anbei mein Hexfile zum Vergleich und/oder Flashen.
    Angehängte Dateien Angehängte Dateien
    Gruß, Hermann.
    myIrAsuro.Bild hier  

  8. #8
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.063
    bist du sicher dass du das richtige file editiert, gespeichert, kompiliert undgeflasht hast? er muss mit dir reden, das ist sicher...
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  9. #9
    Benutzer Stammmitglied
    Registriert seit
    11.04.2007
    Ort
    Hildesheim
    Alter
    36
    Beiträge
    41
    @HermannSW
    Hallo also ich habe dein Programm geflasht und es hat funktioniert, wie kann ich mir den dein Programm anschauen? Was habe ich falsch gemacht? Im Programmers Notepad habe ich die "test.c" datei geladen und habe ich immer mit dem Tool "clean" alles "gecleant" und dann wenn ich mit dem Programm fertig war habe ich das Tool "make" benutzt und dann habe ich die entstandene Hex datei im Flash programm ausgewählt und geflasht. Oder habe ich einen fehler da gemacht?
    Vielen dank im Vorraus!
    Felix

  10. #10
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.063
    du musst zuerst abspeichern, sonst wird eine leere hex-datei erstellt. das passiert mir bis heute gelegentlich mal...
    Read... or die.
    ff.mud.de:7600
    Bild hier  

Seite 1 von 5 123 ... LetzteLetzte

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress