- Labornetzteil AliExpress         
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 30

Thema: brauche Start-Hilfe bei C&AVR

  1. #11
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    22.11.2003
    Beiträge
    214
    Anzeige

    LiFePo4 Akku selber bauen - Video
    Danke. Die Funktion in der include-Datei kannte ich nicht.
    Gruß
    Stefan

  2. #12
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    21.10.2005
    Ort
    Erde
    Alter
    58
    Beiträge
    1.195
    Bitte bei der Verwendung der _delay_ms und _delay_us darauf achten, dass die nur eine begrenzte Zeit (F_CPU/irgendwas) warten können. Wie lange, steht im header.

  3. #13
    Benutzer Stammmitglied
    Registriert seit
    08.12.2005
    Ort
    Wurmannsquick/Ismaning
    Alter
    41
    Beiträge
    40
    nochmal zu einer meiner Anfangsprobleme:

    Also den das Hello world für AVRs habe ich jetzt mal nach hinten gestellt, ich such jetzt nach einer Möglichkeit, einfach nur über Tastendruck eine LED einzuschalten. Ich habe im Netz übrigens noch eine Blinky-hex-Datei gefunden, die vom Speicher selber her um Einiges weniger belegt (ca. 1 1/2 Zeilen, im Gegensatz zu der anderen aber funktioniert.

    Wenn ich jetzt an der RN-Control Taster 1 drücke soll LED 1 leuchten, bei T2 LED2 usw... wie würde der Quelltext aussehen?

    Ein Anfangsproblem war außerdem, dass ich nur einen ATMega16 beschreiben konnte, nicht aber den ATMega32. Schuld war meine Ponyprog-Version, da war eine Aktualisierung notwendig.
    Außerdem hab' ich das mit den Fuse-bits gecheckt, die AVRs sind jetzt mit Quarz betreibbar. Schön zu sehen, wie sich die Blinkfrequenz mit der Quarzfrequenz verlangsamt. (an irgendeinem Erfolgserlebnis muss ich mich ja orientieren )

    vielleicht erbarmt sich jemand und hackt ein paar anschauliche Zeilen zusammen

  4. #14
    Benutzer Stammmitglied
    Registriert seit
    08.12.2005
    Ort
    Wurmannsquick/Ismaning
    Alter
    41
    Beiträge
    40
    da ich noch ganz dumm bin hab' ich mal folgendes versucht, funktioniert aber nicht... es sollten die ersten 2 LEDs des Ports leuchten... ich kann eine andere hex-file laden (Blinky von vorhin) die geht... die hier lässt sich compilieren und rüberschaufeln, funktioniert aber nicht auf dem ATMega

    Code:
    #include <avr/io.h>
    
    int main(void)
    {
        /* Setzt das Richtungsregister des Ports C auf 0xff 
    	(alle Pins als Ausgang): */
    	DDRC = 0xff;
     
    	while (1)
    	{
        /* Setzt PortC auf 0x03, Bit 0 und 1 "high", restliche "low": */
        PORTC = 0x03;    
    	}
    }
    wo liegt mein Fehler?

    edit: äh hab' was doof formuliert

  5. #15
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    53
    Beiträge
    2.236
    die hier geht compiliert aber nicht!
    was heißt geht, compilliert aber nicht ?
    Das Programm muß sich doch kompilieren lassen...
    Der einzigste Fehler, den ich sehe ist, wenn Du eine Funktion schreibst, die ein int zückgeben soll, mußt Du das auch tun...
    int main(void)

    und wo ist hier ein return???

    Wie gut kennst Du Dich überhaupt mit C aus ?

    Gruß Sebastian

  6. #16
    Benutzer Stammmitglied
    Registriert seit
    08.12.2005
    Ort
    Wurmannsquick/Ismaning
    Alter
    41
    Beiträge
    40
    ok schmeiß noch ein return 0; nach das ist ja nicht das Problem...

    c an sich kann ich schon rel. gut ( hab' darin auch Vordiplom geschrieben usw, das sagt aber wieder weniger aus )

    Wir haben eben nur Konsolenanwendungen geschrieben, wie die Ports vom AVR geschrieben werden usw ist mir noch nicht klar. Außerdem haben wir kein einziges mal was mit Interrupts gemacht!

    dass sich das Programm kompilieren lässt ist klar, auch in Hex umwandeln ist nicht das Thema, in den AT schaufeln auch nicht... nur es leuchtet keine LED auf... hab' auch schon die Ports geändert, alle 4 Ports zusammen auf high gesetzt usw... irgendwo hab' ich da einen Denkfehler drin...

  7. #17
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    53
    Beiträge
    2.236
    alle 4 Ports zusammen auf high gesetzt usw
    Naja, soweit ich weiß sind die LEDs gegen VCC geschaltet, mithin müsstest Du die Ports auf LOW setzten, sehe Schaltplan, ich hoffe, das wars...
    Gruß Sebastian

  8. #18
    Benutzer Stammmitglied
    Registriert seit
    08.12.2005
    Ort
    Wurmannsquick/Ismaning
    Alter
    41
    Beiträge
    40
    hm bleibt sich egal ob man die LEDs von vcc auf Pin oder von Masse auf Pin setzt man muss nur die Stromflussrichtung beachten... das eine mal leuchten sie halt wenn Port auf "0" und das andere mal bei "1" ... da aber am PortC nur die ersten 2 Pins anders sind als der Rest müssten die LEDs einfach unterschiedlich on oder off sein, wie ist mir jetzt noch egal, hauptsache es leuchtet irgendwas! Es tut sich aber nix! Ich hab' das Gefühl, dass ich irgendwo vom compilieren her einen Fehler drin hab... ich erstelle mit AVR-GCC ein Hex-file das ich dann mit Ponyprog in den µC lade. Ich glaube nicht, dass der Fehler an Ponyprog liegt, da ich ja das Blink-Hex auch übertragen kann und es funktioniert.

    Ich geb' also in der Kommandozeile ein avr-gcc leucht.c -o leucht.hex -mmcu=atmega32 -g -Os -Wl,--oformat=ihex

    Liegt da evtl der Fehler?

  9. #19
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    53
    Beiträge
    2.236
    Schau mal hier
    So macht man das zu Fuß.

    Benutze doch mal make.

    Klick
    Klick

    Gruß Sebastian

  10. #20
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.802
    Funktioniert das Beispiel aus dem Wiki inzwischen?

    Ich kann den Code ja nicht auf allen möglichen Controllern mit allen Denkbaren Compiler-Versionen testen. Evtl. müsste das Beispiel dan korrigiert werden, falls es einen Fehler gibt.
    Disclaimer: none. Sue me.

Seite 2 von 3 ErsteErste 123 LetzteLetzte

Berechtigungen

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

Labornetzteil AliExpress