ATMEGA32 minimum system board

  • Hallo zusammen,


    hat jemand vielleicht schon Erfahrungen mit diesem Board ?


    Ist zwar leider keine Doku dabei aber ich suche mir gerade da einiges zusammen.


    Ich würde gerne, wenn ich die notwendigen Informationen zusammen habe, mal versuchen, den ATMEGA mit dem RPi über seriell, I2C und SPI ein wenig "reden" lassen ...


    Weil ich jetzt aber keine rechte Lust habe, wieder mal Windows zu aktivieren, habe ich in diesem Zusammenhang gleich die nächste Frage:
    Auf dem Tower habe ich AVR-Studio ... unter Ubuntu werde ich vermutlich CodeBlocks in Verbindung mit avrdude nehmen.
    Die ganzen Crosscompiler für AVR und PIC (der kommt später, da habe ich auch ein nettes Board mit nem 16F6622 hier) habe ich schon installiert.
    Gibts da noch eine andere, brauchbare Geschichte für Ubuntu?


    Ich bin zwar jetzt nicht "der Fan" von GUIs, aber bei uC finde ich die schon ganz brauchbar.


    EDIT: ich hätte da auch noch ein STK500 mit seriellem Interface, das ich sonst unter WIN verwende. Vielleicht kann ich das ja unter Ubuntu nutzen.



    Danke für Eure Tipps,
    -ds-

  • Der Mega32 kann kein USB und auf der Platine ist kein USB-Wandler. Also stehe ich der Möglichkeit mit dem Programmieren über USB skeptisch gegenüber. VUSB ist nicht wirklich Standardkonform.
    Du brauchst warscheinlich ein Programmiergerät oder Du programmierst den mir dem Pi.


    Ich würd die Belegung des Programmiersteckers prüfen, auch wenn das geschrieben wurde daß der jetzt IDC6 entsprechen würde.


  • Der Mega32 kann kein USB und auf der Platine ist kein USB-Wandler. Also stehe ich der Möglichkeit mit dem Programmieren über USB skeptisch gegenüber. VUSB ist nicht wirklich Standardkonform.
    Du brauchst warscheinlich ein Programmiergerät oder Du programmierst den mir dem Pi.


    Ich würd die Belegung des Programmiersteckers prüfen, auch wenn das geschrieben wurde daß der jetzt IDC6 entsprechen würde.


    Hallo orb, guten Morgen ...


    den kann man angeblich über die USB-Schnittstelle mittels HIDBootFlash und Drücken eines der Taster beim Einschalten prorammieren (oder so ähnlich jedenfalls ... ich suche ja gerade rum - eilt ja auch nix).
    Notfalls dachte ich, kann ich ja das STK500 zum Programmieren nehmen - aber guter Tipp, da mal den Anschluss zu checken :) ...
    Ausserdem sind 34 Pins rausgelegt - auf diese Steckerleiste. Ich hab' da jetzt nur oberflächlich drüber geguckt ... Vcc, Gnd, PA7, PB4, ...


    Aber: könnte man das Teil in der Tat mit dem Pi programmieren? Das war ursprünglich auch mal eine meiner Ideen, aber die habe ich erstmal verworfen ...
    Andererseits, wenn ich noch mal drüber nachdenke - diese Insystem-Programmierung müsste ja gehen ... faszinierende Vorstellung.


    danke, war mal wieder sehr aufschlussreich,
    -ds-

  • Ich habe, wie gesagt, dieses kleine Board für ... ich glaub 8,- Euro oder so ... mal mitbestellt.
    Im Grunde genommen müsste man damit alles machen können ...
    Ich habe mir auch mal die Arduino IDE auf Ubuntu installiert.
    Aber jetzt steh ich halt ein bisschen auf dem Schlauch ...


    Im anderen Thread meinte orb, ich könne den AVR zum Arduino machen ... aber vielleicht ist er das schon.


    hmm ... mal ein bisschen tüfteln, aber vielleicht hat orb noch ne Idee?


    EDIT:
    also vielleicht alles ein bisschen missverständlich, aber ich erwarte jetzt nicht, dass mir jemand hier eine massgeschneiderte Lösung präsentiert.
    Für mich ist die Thematik Arduino, AVR, PIC im Zusammenhang mit Ubuntu/wheezy interessant.
    Und um mir da das Leben einfach nur ein wenig einfacher zu machen, interessiert mich da alles in diesem Zusammenhang.
    Auch, ob es vielleicht sinnvoll ist, einfach mal so ein ("China-")Arduino-Brett zu bestellen.


    cu,
    -ds-

  • Hallo ds,


    für diesen Preis sicher ein interessantes Entwicklerboard, falls es nicht doch noch einige Macken bzw. Inkompatibilitäten enthält.


    Falls die Arduino-IDE verwendet werden soll, wirst Du erst den passenden Bootloader brennen sowie die eine oder andere "fuse" ändern müssen (sofern Arduino diesen Prozessortyp überhaupt unterstützt - da bin ich nicht mehr auf dem Laufenden). Diese in Java geschriebene IDE war allerdings noch nie mein Freund.


    Sehr komfortabel sind die AVR tools - leider nur für Win erhältlich.


    Unter Linux würde ich ISP mit avr-gcc / avrdude bevorzugen - danke auch an ORB für den obigen Link.


    Nachdem ich Dich rein fachlich gut genug kenne, hätte ich für den Einstieg erstmal einen einfachen Atmel 8-bit Controller (ATmega) besorgt - nur den Chip, je nach Typ 1-3 Euros. Man braucht nur wenige externe Bauteile und einen STK500 Programmer - fertig.
    Ist dann sehr kompakt am RPi zu verwenden.


    Schwüle (mit üüüü) Grüße, mmi


  • Ja hey mmi :) ...


    mit Dir hatte ich gar nicht mehr gerechnet ... ich dachte, Du wärst schon weg.


    Hast Du dazu (wenige Bauteile ...) irgendeinen Link oder einen Schaltplan (eagle hab ich)?
    Ein STK500 hab ich hier und sowohl die Arduino-IDE als auch avrdude unterstützen das ja.
    Und der eine oder ATMEGA16 (DIP) sollte auch da sein.
    Wär schon krass, wenn ich das endlich mal live hätte ... dann könnte ich testhalber mal die Servo-Ansteuerung des ATMEGA über den RPi kontrollieren ... faszinierende Vorstellung.


    Das Programmieren des µC macht mir da am wenigsten Kopfschmerzen ... notfalls muss ich halt doch wieder das Redmonder System starten.


    Code::Blocks soll übrigens auch mit gcc, avrdude und deshalb auch AVRs verwendbar sein.


    Mühsam aber äusserst spannend ... aber eilt ja nix.


    bye bye und ebenfalls verschwitzte Grüsse,
    -ds-

  • Vcc, Sck, Miso, Mosi - bei jedem Atmega das gleiche, beispielsweise für Tiny85:


    ISP-Programmierung ATTINY


    (sorry, auf dem Bild hab ich Wasserrohre für die Verdrahtung genommen) ;)

  • Hallo mmi,


    danke schön, ich denke, das krieg ich schon hin ...


    Wenn ich jetzt mal die Schaltung im Anhang anschaue ... und dann einfach mal R1, R2, R3 und U2 mal weglasse ...
    würde ein ATMEGA so laufen?
    Wäre sonst noch was zu beschalten?


    Ich habe meine Progrämmchen immer nur im STK500 laufen sehen ... und wirklich keine Ahnung, wie ich das möglichst ohne grossen Aufwand auf ein eigenes Prototypen-Board bekomme. OK - ich hab', zumindest in letzter Zeit, nicht besonders intensiv danach gesucht. Andererseit stosse ich bei meiner Suche oft unterschiedliche Aussagen.


    Das mit dem ATTiny sieht übrigens niedlich aus ... bei meiner aktuellen Sehstärke fürchte ich, dass ich das Teil zwar programmiert aber anschliessend vergeblich auf dem Board gesucht hätte :) ....
    thnx,


    ach ja ... das mit den 6 wochen hat sich geklärt ...
    ciao,
    -ds-

  • R1 und R2 sind die Pullup-Widerstände für den I2C-Bus an dem U2 hängt. Die kannst Du weglassen.
    R3 ist ein PullUp-Widerstand für den Resetanschluss, den sollte man immer haben. Ohne definierten Pegel an Reset läuft der AVR nicht stabil.
    Den Quarz und die beiden Kondensatoren kannst Du für viele Schaltungen auch weglassen, die meisten AVR haben interne Taktgeber, der Mega32 hat einen 8Mhz Oszillator den man nutzen kann.
    Die minimal Beschaltung währe somit ein PullUp am Reset-Pin und Spannungsversorgung.


  • R1 und R2 sind die Pullup-Widerstände für den I2C-Bus an dem U2 hängt. Die kannst Du weglassen.
    R3 ist ein PullUp-Widerstand für den Resetanschluss, den sollte man immer haben. Ohne definierten Pegel an Reset läuft der AVR nicht stabil.
    Den Quarz und die beiden Kondensatoren kannst Du für viele Schaltungen auch weglassen, die meisten AVR haben interne Taktgeber, der Mega32 hat einen 8Mhz Oszillator den man nutzen kann.
    Die minimal Beschaltung währe somit ein PullUp am Reset-Pin und Spannungsversorgung.


    Suppe orb ... :) ...


    genau das war die Info, die ich gesucht habe.
    Also keine Pins sicherheitshalber auf Masse ziehen oder irgendwo noch den einen oder anderen KerKo?


    Sorry, klingt momentan alles ein wenig holprig ... ist in meinen Gedanken ähnlich ... ich muss das alles erstmal sortieren, und da ist die aktuelle Wetterlage scheinbar auch nicht besonders hilfreich.
    Wenn ich jetzt also Deinem Rat folge, und sicherstelle, dass der ISP-Anschluss des Mini-Boards korrekt belegt ist, könnte ich da den ISP-Ausgang meines STK500 anstecken und mittels avrdude z.B. mein Terminalprogramm auf den ATMEGA flashen.
    Wenn ich dann an PortD Pin0 und Pin1 einen RS232-Konverter anstecke, sollte ich per minicom vom Laptop aus mit dem ATMEGA reden können.
    Oder ich stecke einen ATMEGA16 auf mein Breadboard, verdrahte Reset und Vcc. Dann stecke ich vom STK500 den ISP-Port auf das Breadboard und verdrahte die entsprechenden Pins des ATMEGA16.
    Dann flashe ich das Terminal-Programm, verdrahte wieder die serielle Schnittstelle und kann mit dem ATMEGA reden.


    Korrekt so?


    Na dann fällt mir ein ganzes Schotterwerk vom Herzen ...
    wie ich dann statt dem Terminal eine I2C- oder SPI-Kommunikation hinbekomme, das finde ich dann schon :) ...


    cu,
    -ds-

  • Wenn Du dem AVR was gutes tun willst gibst Du ihm je 100n zwischen GND und Vcc (Pin 11 und 10) und zwischen AVcc und GND (30 und 31). Wenn Du genaue Analogmessungen haben willst, klemmst Du AVcc nicht direkt an 5Volt sondern über eine 10µH Spule, die bildet dann mit dem Kondensator einen Tiefpass der die Spannung für den Analogteil glättet.

  • Hey, das klappt :) ...


    Ich hab' jetzt mal dieses Mini-Board über das STK500 ISP programmiert und das geht in der Tat :) ...


    Na ... das werden jetzt interessante Wochen.


    BTW: schaut Euch mal lunavr an - ich finde das Teil vom ersten Eindruck her Klasse und es funktioniert auch mit meinem STK500 ;) ...


    Krass, was alles möglich ist ...


    cu,
    -ds-

  • "lunavr" sagte mir noch nichts, kein Wunder, habe mit den uC's schon über 1 1/2 Jahre nichts mehr gemacht.


    Ideal wäre ja, die Umschaltung zwischen Normal- und Programmiermodus sowie die Programmierung RPi-seitig auszuführen, ohne noch irgendwas umstecken zu müssen. Sollte eigentlich machbar sein.


    Aber jetzt bei dem Wetter hab' ich dafür kaum Zeit und wenn, wartet erst noch anderes. Aber wenn Du so weiter machst, ist spätestens Montag alles fertig ;)


    vg, mmi

  • Hallo mmi,


    naja ... bis Montag denke ich nicht - ich hab die AVRs auch schon eine Weile in der Schublade und muss mich da teilweise erst wieder reindenken.
    Möglicherweise muss ich auch den Bootloader des ATMEGA auf dem Miniboard neu flashen ...


    Funktionieren tut es, wie gesagt, allerdings kommt der ATMEGA32L des Boards irgendwie mit der seriellen Baudrate nicht so recht klar.
    Die Kommunikation sieht - in minicom - momentan noch eher cryptisch aus ;) ...


    Und dann hab' ich da ja auch noch diverse China-Gimmicks die mich brennend interessieren ... jui jui ... wenn das nicht in Stress ausartet :) ...


    Schönen Abend noch,
    scheint langsam gewittrig zu werden.
    -ds-


  • Und dann hab' ich da ja auch noch diverse China-Gimmicks die mich brennend interessieren ... jui jui ... wenn das nicht in Stress ausartet :) ...


    Wem sagst Du das, ein Tag könnte mindestens 3x solange sein. Auf allen Hochzeiten kann man (ich zumindest) nicht gleichzeitig tanzen. ;)
    Habe zwar den familiären Stress los (Kinder sind längst erwachsen), trotzdem aber noch genügend am Hals.
    Die Elektronik wird immer billiger, die Komplexität der Software nimmt aber nicht ab (obwohl gute libs einem das Leben erleichtern, abe die wirklich guten sind auch eher selten).


    Mal schnell was auf dem Breadboard ausprobieren und dann liegt die Hardware wieder im Eck - das ist weniger mein Ding. Auch wenn es reizvoll ist, kaufe ich doch fast immer nur das, wofür ich auch eine mehr oder weniger dauerhafte Anwendung habe. Das kostet dann für das ganze DrumRum nochmal viel Zeit.

  • Hallo zusammen,


    jetzt fiel mir gerade noch was ein:


    orb schrieb was von einer 10 uH Drossel/Spule auf so einer Minimal-Verschaltung als Tiefpass im Fall, dass man die Wandler nutzen will.


    Ich hatte mir das hier mal mitbestellt. Ist das so was oder liege ich mal wieder total daneben?


    Thnx,
    -ds-


  • Ich hatte mir das hier mal mitbestellt. Ist das so was oder liege ich mal wieder total daneben?
    Thnx,
    -ds-


    passt schon, aber 100µH ginge auch, es geht ja um Filter und Störungen auf der Vcc wegbügeln

    lasst die PIs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Ahh, super, danke jar ...
    Spulen und Drosseln und so ein Zeugs gibts ja in den irrsten Ausführungen zum Schweinefüttern.
    Da ich dazu tendiere genau das Falsche zu ordern, wenn ich mich nicht auskenne, musste ich schon mal nachhaken ;)
    Wobei vorher sinnvoller gewesen wäre :shy:


    cu,
    -ds-