AVRBoardPortable: Unterschied zwischen den Versionen

Aus LaborWiki
Wechseln zu: Navigation, Suche
Zeile 52: Zeile 52:
* Alles so auslegen, dass es normalerweise von USB Versorgt werden kann (warscheinlich läufts auf 3,3V hinaus! -> LDO)
* Alles so auslegen, dass es normalerweise von USB Versorgt werden kann (warscheinlich läufts auf 3,3V hinaus! -> LDO)
* Wegen besserer handhabbarkeit aufbauen auch wie Gameboy, Links Steuerkreuz, Mitte Display, Rechts A+B, Oben USB, LEDs und Stecker, Hinten evtl. Batteriehalter
* Wegen besserer handhabbarkeit aufbauen auch wie Gameboy, Links Steuerkreuz, Mitte Display, Rechts A+B, Oben USB, LEDs und Stecker, Hinten evtl. Batteriehalter
* ATmega8 oder ATmega32 wären die Kandidaten als Controller -> besser: Was moderneres, das auch bei 3,3V genug Dampf für USB hat
* ATmega644 ist Pinkomp. zu ATmega32, hat aber mehr RAM und mehr Speed
* Preisziel: unter 30 EUR für alles inkl. gefertigter Platine (aber als Bausatz)
* Preisziel: unter 30 EUR für alles inkl. gefertigter Platine (aber als Bausatz)



Version vom 31. August 2007, 21:53 Uhr

AVR Board Portable

Worum es geht

Das bisherige Laborboard ist groß, schlecht portabel, braucht eine externe Stromversorgung, benötigt ein externes Programmiergerät und sieht auf der Lochrasterplatine nicht besonders professionel aus. Die Programmierung erfolgt bisher über ein Kabel für den Parallel-Port, der auch an immer mehr Notebooks nicht mehr vorhanden ist. Da sich das Laborboard aber großer beliebtheit erfreut und für den Einsteiger eine schöne Grundlage für einfache und komplexe Entwicklungen bietet, ist eine Neuauflage angedacht. Doch zunächst einmal soll eine Wunschliste über Eigenschaften des Boards aufgestellt werden.

Wunschliste

Was eine neue Auflage vom Laborboard bieten könnte:

  • Kompatibilität zum alten Board
  • Kleiner, industriell gefertigte Platine, dann durchaus mit SMD Technik
  • USB-Interface
    • zum Programmieren
    • zur Stromversorgung (aber mit wirksamen Schutzmaßnahmen um die Sicherheit des PCs zu gewährleisten
    • mit serieller Schnittstelle zum einfachen Debuggen (printf, scanf)
  • ATmega32 in SMD ist eigentlich keine schlechte Wahl
  • extra AVR zur Programmierung
  • sinnvolle, einfach zu bauendes Steckerkonzept (Pfostenleisten für Standard-Flachbandkabel wäre sinnvoll)
  • Stromversorgung, per Jumper einstellbar USB oder Extern, evtl. Schaltregler einsetzen für höhere Leistung (für viele LEDs :-)
  • Möglichkeit zur Montage von Füsschen unter der Platine (Schutz gegen kleine Seen aus Mate und anderem Zeugs)
  • 80x100 cm² oder kleiner wäre nicht schlecht (= preiswerter!)
  • Wenn Platz bleibt: Lochrasterfeld für 1,27mm Zeug
  • USB-Anschluss aber über A-B Kabel, damit der USB-Port nicht ausleiert
  • Hardware auf der Platine: LEDs, Mäuseklaviere, Buzzer
  • Beim Rausführen der Ports die Verbinder bitte so wählen, das man ganze Platinen aufstecken kann (Also Steckverbinder die sich beidseitig auf Platinen löten lassen ohne Kabel dazwischen)
    • Für die billigen Pfostenwannen gibt es auch Gegenstücke, die direkt auf Platinen aufgelötet werden können. Wären dann normale Pfostenwannen OK?
  • Komplexere Variante sollte mind. auch mit 3,3V IO-Spannung klar kommen (am besten ganz flexibel)

Konkretisierung

Ideen/Vorschläge

Haupt-AVR vom USB und Versorgungsteil trennen

  • USB, Versorgung und Programmier-AVR vom Rest des Boards teilen/trennen
    • Vorteil: Kleiner wenn man mit externen Schaltungen entwickelt
    • Interessant für alle, die bereits das Labor-Board gebaut haben und nur eine Möglichkeit zur Versorgung, Programmierung und zum Debuggen per USB wünschen
    • Nachteil: Zwei Platinen auf dem Tisch
    • Lösungsweg: Platine vom Mega32 trennbar machen

Es läuft also wohl oder übel auf einen möglichst universellen, hyper-dyper-Programmierer inkl. Stromversorgung aus USB oder anderen Quellen hinaus und auf ein warscheinlich sehr primitives Laborboard (wenn überhaupt...). Interessant wäre auch, das ganze auch für LPC213x-Controller nutzbar zu machen und dem AVR mal was potenteres an die Seite zu Stellen...


Ultra-Low-Effort Einsteiger Board mit USB

Ideen

  • Idee von Tixiv: Bootloader mit Software-USB in Controller knallen, daraus einfachst-Hardware aufbauen
    • Controller, USB-Stecker, Quarz, etwas passives Geraffel + Spielzeug (LEDs, Taster, Buzzer, Steckerzeug)
    • Klasse wäre ein SPI-Display Marke billig-aus-Handy-rausgerupft
      • Nokia 3310 ist gut, wirklich nur für 3,3V?!
      • Dazu 3-4 LEDs (SMD)
      • Dazu 5-6 Taster (wie beim Gameboy, Richtung + A + B)
      • Dazu ein Buzzer (billig und klein)
      • Rest der freien IO auf kleinen Steckverbinder, Quarz ist festgelegt wg. USB
  • Eingebaute Kommunikationsmöglichkeit per USB mit PC entfällt im Standard-Fall, dafür gibts Display
  • Alles so auslegen, dass es normalerweise von USB Versorgt werden kann (warscheinlich läufts auf 3,3V hinaus! -> LDO)
  • Wegen besserer handhabbarkeit aufbauen auch wie Gameboy, Links Steuerkreuz, Mitte Display, Rechts A+B, Oben USB, LEDs und Stecker, Hinten evtl. Batteriehalter
  • ATmega644 ist Pinkomp. zu ATmega32, hat aber mehr RAM und mehr Speed
  • Preisziel: unter 30 EUR für alles inkl. gefertigter Platine (aber als Bausatz)

Ausführung

So gut wie jede Idee wurde schon realisiert, so auch der USB-Bootloader. Gleich zwei Quellen:

Alles über USB in Software: Software-Driven-USB

Vorgehen: Werde mal nen paar Nokia 3310 Displays auftreiben, für hoffentlich unter 4 EUR/Stück. Dann: Portbelegung ausdenken, Platine cadden

USB wird abgesichert über 10-22 Ohm Widerstand in der Versorgung, billiger Schiebeschalter um zwischen Batterie und USB-Versorgung zu wählen. Was als LDO nehmen? LM317? LP2950-3,0?

mögliche Programmiergeräte

Wünsche

  • Kompatibel und erweiterbar möglichst auch für versch. Programmer
  • Sollte Taktgenerator für "verlorene" AVRs bieten
  • Es gibt ein STK500 V2 Protokoll, wo bei neuen AVRs nicht mehr das Programmiergerät geupdatet werden muss
    • Sehr interessant, da zukunftssicher
    • Implementiert im Programmer von hier: tuxgraphics
    • Inklusive Software-USB: Ullihome

Umsetzung

Tut (Lutz Lißeck) kümmert sich um das CAD-Design des Schaltplans und des Boards. Die Platinen kann ich warscheinlich über eine befreundete Firma ordern (bei MultiPCB).