-
        

Seite 1 von 5 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 47

Thema: AVR Einstieg leicht gemacht (statt Basic mit C arbeiten)

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    17.06.2007
    Ort
    zwischen Hannover und Hildesheim
    Alter
    26
    Beiträge
    135

    AVR Einstieg leicht gemacht (statt Basic mit C arbeiten)

    Anzeige

    Hi,
    ich habe im RN-Wiki den Artikel "AVR Einstieg leicht gemacht" gelesen und dort wird die Programmierung mit einem ISP-Dongle und der Software Bascom beschrieben. Soweit ich das heraus lesen konnte, ist diese aber nur für Basic geeignet. Ich programmiere bisher ausschließlich in C und wollte daher fragen, ob es eine Alternativsoftware gibt, die etwa genauso funktioniert wie Bascom, nur das man mit C arbeiten kann.

    Oder könnte ich auch mit Sub-D arbeiten? Wie müsste ich dann den Stecker mit dem Controller (z.B Atmega32) verbinden?

    Cool wäre naütlich auch so etwas wie "AVR Einstieg leicht gemacht (C Programmer Edition)"
    Gibt es so etwas?


    Vielen Dank
    jawo3

  2. #2
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Jena
    Alter
    31
    Beiträge
    3.913
    ob du mit c oder mit basic arbeitest, ist deine sache. man braucht nur einen entsprechenden compiler. mit avrstudio oder winavr könntest du erfolg haben.

    vermutlich meinst du mit Sub-D (das bezeichnet nur eine norm, in der serielle und parallele (!) anschlüsse definiert sind) einen seriellen anschluss zum progrmmieren. das geht, im endeffekt sind es bloss kabel zum oc, und die kann man an jedem anschluss anschliessen. jedoch unterstützen die meisten programmiersoftwares nur einen parallelen anschluss. für linuxer: uisp nimmt beides.
    wo in niedersachsen wihnst du eigentlich?
    kleinschreibung ist cool!

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    17.06.2007
    Ort
    zwischen Hannover und Hildesheim
    Alter
    26
    Beiträge
    135
    Das heißt ich könne auch mit der Standart ASURO Software (sprich AVRstudio und diesem Flash Tool) über ISP Daten übertragen oder brauche ich noch zusätzlich Software?

    OffTopic: Ich wohne zwischen Hannover und Hildesheim in Sarstedt (bin übrigens auch in der RN-Landkarte)

    Vielen Dank

  4. #4
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Jena
    Alter
    31
    Beiträge
    3.913
    mmh ich bin die nächste woche in deepen.. kannst ja mal schauen ob du das findest, ist bei scheeßel.

    das flash tool geht nicht. ich glaube man kann mit avrstudio flashen, aber ich weiss es nicht... es gibt aber viel freie software zum flashen. der atmega8l des asuro ist jedoch gesperrt und lässt sich nur über seinen bootloader mit dem flash tool flashen. mit einem neuen prozessor und einem programmieradapter wie beschrieben kannst du jedoch auch flashen. unter linux empfehle ich uisp. für windows gibt es avrp, das bekommst du unter
    www.avr-asm-tutorial.net
    kleinschreibung ist cool!

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    17.06.2007
    Ort
    zwischen Hannover und Hildesheim
    Alter
    26
    Beiträge
    135
    Könntest du mir einen direkten Link zur Datei geben. Ich finde auf der Seite irgend wie nichts, was AVRP heißt

  6. #6
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Jena
    Alter
    31
    Beiträge
    3.913
    ich habe mich vertan, das programm avrp ist ebenfalls für linux... aber such mal auf der seite. es wird auf die atmel-seite verwiesen, dort gibt es das programm ISP.

    ansonsten lade dir PONYPROG runter, das ist ein sehr flexibles und gutes open-source programm.
    kleinschreibung ist cool!

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    17.06.2007
    Ort
    zwischen Hannover und Hildesheim
    Alter
    26
    Beiträge
    135
    Ich habe mir jetzt mal PoyProg besorgt.

    Kann ich dann weiterhin mit .hex Dateien arbeiten, oder braucht der Atmega32 Controller andere Dateien als der vom ASURO?

    Wie fange ich am besten mit der Programmierung an, denn ich habe ja für den Prozessor noch keine Libs oder nehme ich die vom ASURO? Wahrscheinlich nicht, oder?

    Und wie wandle ich die .c Dateien dann in die .hex Datei um? Kann ich dazu das BatchFile von ASURO nehmen?
    Und wie ist das mit den Makefiles?


    Vielen Dank
    jawo3

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    02.11.2005
    Ort
    Dortmund
    Alter
    24
    Beiträge
    1.641
    Ja, kannst du - der atmega32 nimmt exakt das gleiche wie der mega8.
    naja - ich empfehle dir halt dir eigene Libs zu schreiben, du guckst dir die libs vom asuro an und übersetzt die auf deinen Conroller (würde ich dir nicht empfehlen, ist extrem unübersichtlich), also schreib selber. Dafür sind natürlich mehr C-kenntnisse erforderlich als beim proggen des Asuros.
    Batchfile? Nope, das macht der Compiler. Also winavr zum Beispiel.
    Das makefile brauchst du, um dem Compiler zu sagen was er wie machen soll, kenn ich mich leider nicht so wirklich mit aus. Kein makefile brauchst du bei avrstudio, das macht das irgendwie automatisch. Ein makefile machen kannst du dir mit dem tool MFile das bei Winavr dabei ist. Winavr ist übrigens das programm, das du auch für den Asuro verwendest, also hast du das ja schon, ist mir grad eben aufgefallen.
    o
    L_
    OL
    This is Schäuble. Copy Schäuble into your signature to help him on his way to Überwachungsstaat!

    http://de.youtube.com/watch?v=qV1cZ6jUeGE

  9. #9
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Jena
    Alter
    31
    Beiträge
    3.913
    langsam, langsam.

    alle avrs akzepieren hex-dateien. schliesse dein ISP dongle an, stecke den AVR ein, und schau ob ponyprog ihn erkennt. lade am besten igend ine hex datei runter vin der seite und versuche, diese zu flashen. pass auf dass du eine mega32-datei bekommst.

    libs sind nur sammlungen vordefinierter funktionnen. die füre den asuro wirst du nichtbrauchen. du solltest dir den gnu c compiler installieren (vermutlich ist er das schn, schliesslich hast du ja für den asuro kompiliert). dann kannst du anstelle des #include "asuro.h" folgendes schreiben:
    #include <avr/io.h>
    dann solltest du mit dem prozessor arbeiten können.

    du musst jetzt noch das makefile ändern: öffne es, und ändere die taktfrequenz und auch den namen des prozessors (suchen...) und entferne alles was mit asuro zu tun hat.

    wenn du nun dein erstes programm geschrieben hast, wechsle auf einer konsole (linux) oder einer dosbox (win) in das verzeichnis und gib "make all" ein. dann entsteht (hofentlch) eine hex-datei, welche du mit pony flashen kannst.

    beim makefile kann ich dir evtl helfen, ich habe glaube ich noch eins für einen mega32. aber versuchs erstmal selbst.

    zum kompilieren muss bevor du make all eingibst,
    - der programmcode
    - das makefile
    beides im gleichen verzeichnis sein.
    kleinschreibung ist cool!

  10. #10
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    17.06.2007
    Ort
    zwischen Hannover und Hildesheim
    Alter
    26
    Beiträge
    135
    @Lunarman

    naja - ich empfehle dir halt dir eigene Libs zu schreiben, du guckst dir die libs vom asuro an und übersetzt die auf deinen Conroller (würde ich dir nicht empfehlen, ist extrem unübersichtlich), also schreib selber. Dafür sind natürlich mehr C-kenntnisse erforderlich als beim proggen des Asuros.
    Okay, wenn ich jetzt noch wüsste, wie ich das machen muss...
    Hast du vielleicht einen Link zu dem Thema?

    Batchfile? Nope, das macht der Compiler. Also winavr zum Beispiel.
    Ich meinte diese "make all.bat" die bei den ASURO examples dabei war.
    Aber ich glaube ich weiß jetzt schon was ich machen muss. Ich habe über die Console in dem Ordner in dem das .c File und das makefile sind "make all" ausgeführt und die .hex Datei und noch ein paar andere wurden erstellt.

    Winavr ist übrigens das programm, das du auch für den Asuro verwendest, also hast du das ja schon, ist mir grad eben aufgefallen.
    =D> allerdings


    @damaltor
    alle avrs akzepieren hex-dateien. schliesse dein ISP dongle an, stecke den AVR ein, und schau ob ponyprog ihn erkennt. lade am besten igend ine hex datei runter vin der seite und versuche, diese zu flashen. pass auf dass du eine mega32-datei bekommst.
    Wie meinst du das mit der mega32-Datei. Ich merke doch gar nichts vom flashen, oder bleibt dann auf dem PC eine Datei zurück?

    libs sind nur sammlungen vordefinierter funktionnen. die füre den asuro wirst du nichtbrauchen. du solltest dir den gnu c compiler installieren (vermutlich ist er das schn, schliesslich hast du ja für den asuro kompiliert). dann kannst du anstelle des #include "asuro.h" folgendes schreiben:
    #include <avr/io.h>
    dann solltest du mit dem prozessor arbeiten können.
    Wenn ich die ASURO Libs nicht benutzen kann, dann muss ich ja wohl oder übel eigene Libs erstellen um mir das Programmieren zu vereinfachen.
    Hast du eine Anleitung dazu? Und mit welchen Funktionen kann ich während des Programmierens arbeiten? Sowas wie "MotorDir" gibt´s ja dann nicht mehr, oder? Sowas müsste ich dann über die Lib selbst erstellen?
    du musst jetzt noch das makefile ändern: öffne es, und ändere die taktfrequenz und auch den namen des prozessors (suchen...) und entferne alles was mit asuro zu tun hat.
    Ich habe im WinAVR oRdner unter examples/demo ein makefile und eine C-Datei. Die beiden sehen so aus, als ob sie noch nie was von ASURO gehört hätten. Kann ich die nehmen? In denen steht auch das #include <avr/io.h>.

    wenn du nun dein erstes programm geschrieben hast, wechsle auf einer konsole (linux) oder einer dosbox (win) in das verzeichnis und gib "make all" ein. dann entsteht (hofentlch) eine hex-datei, welche du mit pony flashen kannst.
    beim makefile kann ich dir evtl helfen, ich habe glaube ich noch eins für einen mega32. aber versuchs erstmal selbst.
    zum kompilieren muss bevor du make all eingibst,
    - der programmcode
    - das makefile
    beides im gleichen verzeichnis sein.
    Das habe ich mal mit den beiden Datein im besagten exmaple/demo Verzeichnis ausprobiert und es hat ohne Probleme geklappt. Ich frage mich nur gerade, was .map, .srec, .elf, und .lst Dateien sind...
    Außerdem wurde noch eine zweite .hex Datei mit dem Namen "demo_eeprom.hex" erstellt. Wozu dienen all diese Dateien?


    Ich weiß: Wieder ganz schön viel auf einmal...

    Vielen Dank
    jawo3

Seite 1 von 5 123 ... LetzteLetzte

Berechtigungen

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