- LiFePO4 Speicher Test         
Seite 5 von 8 ErsteErste ... 34567 ... LetzteLetzte
Ergebnis 41 bis 50 von 75

Thema: Einsteiger braucht hilfe bei den 1. Programmen

  1. #41
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    38
    Beiträge
    4.064
    Anzeige

    Praxistest und DIY Projekte
    sieht nicht schlecht aus, habe nur die überflüssigen klammern in der if-abfrage weggemacht.
    es heisst
    if(bedingung){aktion}else{aktion}
    und nicht
    if(bedingung){{aktion}else{aktion}}

    es gibt nur ein problem: die funktion sleep(255) wartet etwa 3 milliseknunden, aber der asuro wird länger brauchen um sich um 180 grad zu drehen.

    probiers mal damit:

    zuerst definierst du noch einen int i am anfang des programms.
    dann machst du folgendes an der stelle, wo er sich drehen soll:

    for(i=0;i<333;i++){
    sleep(255);
    }

    dann wartet er 333*3ms=ca eine sekunde, bevor er anhält. ob er es in dieser zeit schafft, weiss ich nicht, aber du musst dann mit dem wert für i (der 333) experimentieren biss es hinhaut.

    hier der neue code:
    Code:
    #include "asuro.h"
    
    int main(void)
    {   
       unsigned char ktaster;
       
       Init();
       
      
       
       StatusLED(GREEN)
       MotorDir(FWD;FWD);
       MotorSpeed(200,200);
       
       while(1){    
       if(switched==1){
       StatusLED(RED);
       MotorDir(FWD,RWD);
       MotorSpeed(100,100);
       Sleep(255);
       MotorDir(BREAK,BREAK);}
       else{
       StatusLED(GREEN);}
          
          switched=0
       }
       return 0;
    }
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  2. #42
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    38
    Beiträge
    4.064
    Zitat Zitat von EDH
    wie soll er eigentlich drehen, wenn immer alle motoren gleichschnell laufen?
    ganz einfach... die motoren laufen in verschiedene richtungen...

    XD
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  3. #43
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    01.11.2006
    Beiträge
    433
    das hab ich wohl übersehen

  4. #44
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.11.2006
    Ort
    Hamburg
    Alter
    32
    Beiträge
    384
    Danke für den Tipp

  5. #45
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    38
    Beiträge
    4.064
    kein problem, meld dich wenns läuft!
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  6. #46
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.11.2006
    Ort
    Hamburg
    Alter
    32
    Beiträge
    384
    Ich hab nochmal eine allgemeine Verständnis frage zu den Bibliotheken.
    und zwar, wenn man die standart lib vom Asuro erweitern will brauch ma ndoch einfach nur die neu definierten funktionen aus der neuen lib kopieren und in die Standart lib einfügen oder?

    Oder als Alternative kann man beide Bibliotheken auf den Asuro flashen und muss dann nur im Programm die neue Bibliothek neben der Standart lib mit #include... verknüpfen oder ?

    Wenn das so einigermaßen stimmt hab ichs begriffen^^.

  7. #47
    Erfahrener Benutzer Begeisterter Techniker Avatar von Osser
    Registriert seit
    31.10.2006
    Ort
    Köln
    Alter
    54
    Beiträge
    396
    Hi sloti,

    deine Hex-Datei beinhaltet immer die Bibliothek die mit #include <libname.h> in deiner test.c Datei steht. Die Bibliothek wird nicht einzeln auf den Asuro geflasht!

    Willst du die Bibliothek auswechseln überschreibst du einfach die Alte.
    So einfach is das...




    O.

  8. #48
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    38
    Beiträge
    4.064
    genau, du flashst ja nur dein eigenes programm. das, was bei #include steht, wird mit kompiliert und mit geflasht, d.h. wenn du die neue bibliothek einfach über die alte drüber kopierst (die original-bib ist ja noch auf der cd), und dann neu kompilierst, dann wird dein programm mit der neuen bib laufen.

    einfach die funktionen rüber zu kopieren, wird evtl nihct gehen, weil einige der neuen funktionen auf einem 36kHz-counter basieren, während bei der alten bib ein 72kHz-counter verwendet wurde. Beispielsweise die Textübertragung per infrarot würde nicht mehr hinhaun.

    also einfach die neue bib runterladen (ich empfehle version 2.6, in version 3.0 wurden einige funktionen recht nutzlos umbenannt, was das programmieren nur erschwert. ansonsten wurden nur kleinere aufräumarbeiten durchgeführt) und über die alte asuro.c und asuro.h drüber kopieren. dann kannst du so wie immer programmieren, du musst nichts weiter beachten.
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  9. #49
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.11.2006
    Ort
    Hamburg
    Alter
    32
    Beiträge
    384
    Ja das is ja einfach. Ich bin ja schon drin^^

  10. #50
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.11.2006
    Ort
    Hamburg
    Alter
    32
    Beiträge
    384
    Die neusete Version meines Programmes:

    Code:
    #include "asuro.h"
    
    int main(void)
    {	
    	unsigned char ktaster;
    	int i
    	
    	Init();
    	StatusLED(GREEN)
    	MotorDir(FWD;FWD);
    	MotorSpeed(200,200);
    	
    	while(1){
    	
    	if(switched==1){
    	StatusLED(RED);
    	MotorDir(FWD,RWD);
    	MotorSpeed(100,100);
    	for (i=0,i<333,i++);
    	{Sleep(255);}
    	MotorDir(BREAK,BREAK);}
    	else
    	{StatusLED(GREEN);}
    		
    		
    	}
    	return 0;
    }

Seite 5 von 8 ErsteErste ... 34567 ... LetzteLetzte

Berechtigungen

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

LiFePO4 Speicher Test