Forum: Mikrocontroller und Digitale Elektronik Mediacenter mit Atmega 32


von Michael (Gast)


Lesenswert?

Hallo an alle,

ich plane im Moment ein kleines Mediacenter für mein Wohnzimmer. Ich 
habe vor mir selbst ein Gehäuse zu bauen, inklusive ein paar Tastern, 
Servos und ein Oled Display.

Meine Frage ist jetzt, kann ich mit einem Atmega 32 gleichzeitig 2 
Servos ansteuern, 8 Taster überwachen und das Display ansteuern.
Auf dem Display sollen Informationen vom PC, wie Uhrzeit, gerade 
gespielter Track,... ausgegeben werden. Ich brauche also eine 
Kommunikation zwischen PC und µC. Die Ausgabe soll eventuell auch 
Effekte wie Lauftext oder ähnliches beinhalten.

Meine Frage ist also:
Ist für so ein Vorhaben der Atmega 32 ausreichend oder brauch ich da 
noch ein wenig mehr an Hardware?


Als Display wollte ich das VGB25664A-S001 von Conrad verwenden. Aber mir 
ist nicht so wirklich klar wie ich es ansteuern kann. Bzw ob es möglich 
ist es mit dem Atmega 32 direkt anzusteuern oder ob noch ein weiterer 
Controller notwendig/sinnvoll wäre.

vielen Dank schon mal für die Antworten


greetz Michael

von Roland Praml (Gast)


Lesenswert?

Du brauchst noch einen Spannungsregler, einen Max232 zur Kommunikation, 
einen Baudratenquarz und noch etwas Hühnerfutter.

Ansonsten langweilt sich der atmega wohl die ganze Zeit

von Michael (Gast)


Lesenswert?

Danke für die schnelle Antwort.
Eine Frage hätte ich aber noch:
Brauche ich noch irgendeinen Controller IC zwischen µc und Display, oder 
kann ich das Display direkt am Parallelport des Atmega betreiben?

von Gast (Gast)


Lesenswert?

Steht alles im Datenblatt und der Produktbeschreibung des Displays.

von Otto (Gast)


Lesenswert?

In der Artikelbeschreibung steht doch alles:

integrierter Controller, parallele oder serielle Ansteuerung

Lade Dir einfach das Datenblatt bei Conrad herunter.....

Otto

von Michael (Gast)


Lesenswert?

Auf die Produktbeschreibung wollte ich mich nicht verlassen.
Und im Datenblatt hab ich nichts genaues gefunden, zum Thema 
Controller...
Wahrscheinlich hab ichs auch nur einfach überlesen bzw. nicht richtig 
verstanden, da sich meine bisherige Erfahrung mit µCs und ihren 
Datenblätter nur auf eine Vorlesung mit Praktikum in der FH 
beschränkt...

Mittlerweile hab ich allerdings rausgefunden, dass der Controller 
STV8105 verbaut ist.

von Otto (Gast)


Lesenswert?

Suche zuerst, ob Du ein geeignetes (zumindest Demo-) Programm für diesen 
Controller findest (z. B. in der Codesammlung), bevor Du das Display 
kaufst. Ansonsten wirst Du mit der Programmierung des OLED alleine wohl 
mehrere Wochen beschäftigt sein.

Otto

von Michael (Gast)


Lesenswert?

Hab mich mal umgeschaut bzw gegoogelt, aber leider nur eine 500€ 
bibliothek für den Controller gefunden... und das sprengt mein budget 
dann doch...

Wie lange würde denn ein relativ unerfahrener Nutzer für die 
Programmierung brauchen? schafft man/ich sowas über einen Winter?

Oder sollte ich lieber schaun, dass ich ein Display finde für das es 
schon eine Demo oder so gibt?
Und wo ich schon dabei bin, weiß jemand eins im 256x64er Format mit 
bekanntem Controller?

Bin für jeden Tipp dankbar

greetz Michael

von STK500-Besitzer (Gast)


Lesenswert?

>Wie lange würde denn ein relativ unerfahrener Nutzer für die
>Programmierung brauchen? schafft man/ich sowas über einen Winter?

Ja, wennn er die Lust nicht verliert.
Hier gab es mal ein Projekt, bei dem ein Anfänger einen Fernseher aus 
der Versenkung per Fernbedinung holen wollte. Zu Anfang haben ihn alle 
ausgelacht, aber er hat es wirklich komplett durchgezogen.

Das Display ist schon etwas anstrengender zu programmieren, aber möglich 
sollte es sein...
Im Conrad-Datenblatt findet man auch gleich einen Verweis auf das 
STV8105-DAtenblatt bzgl. der Steuerkomandos...

>Oder sollte ich lieber schaun, dass ich ein Display finde für das es
>schon eine Demo oder so gibt?
Soo schwierig wirkt der STV8105 auch wieder nicht. Er ist (auf den 
ersten Blick gut) dokumentiert.

>Und wo ich schon dabei bin, weiß jemand eins im 256x64er Format mit
>bekanntem Controller?

Guck mal bei Reichelt nach EA-DOG.

von Michael (Gast)


Lesenswert?

So nach einer ganzen weile googeln und bei Ausbildern nachfragen bin ich 
mir mittlerweile im klaren was genau ich machen will und hab 
größtenteils auch eine Ahnung wie ich es realisieren möchte. Allerdings 
hat es auch einige weitere Fragen aufgeworfen.

Eine kurze Zusammenfassung

Mein Ziel ist folgendes:
Ein Mediacenter PC, in einem Selbstgebauten Gehäuse, dass mithilfe von 
Servos aufgefahren wird.

1. Ausfahrmöglichkeit (2 Servos)
Bedienelemente und ein kleines OLed Display werden sichtbar
2. Ausfahrmöglichkeit (auch 2 Servos)
Ein kleiner Touchmonitor wird sichtbar.


Mit dem MC möchte ich:
1 Die Servos ansteuern (jeweils 2 gleichzeitig)
2 Das Oled ansteuern ( es soll Infos vom PC wie Uhrzeit, aktueller 
Track,
  Lautstärke,... anzeigen)
3 Die Bedienelemente (8 Taster) überwachen und bei Tastendruck ein Sigal
  an den PC senden (per serielle Schnittstelle) welcher dieses dann
  verarbeitet(z.B. Play, lauter, leiser, Gehäuse mit Servos öffnen, ...)

Mein bisheriger Plan ist folgender:
- Die 8 Taster, hardwareentprellt, an einen Port des µC um sie 
auszulesen.
  Gleichzeitig werden wie verodert und an einen PIN für den externen
  Interrupt gelegt.
  --> Bei Tastendruck erfolgt ein Interupt, der Port wird ausgelesen und
  das entsprechende Signal per serieller Schnittstelle an den PC 
gesendet.

- Die Servos haben jeweils zwei endlagen und kommen dazwischen nicht zum
  stehen. Die häufigere endlage soll die sein in der der Servo keinen 
PWM
  Impuls braucht. Die andere soll durch PWM per Timerinterupt 
angesteuert
  werden.

- Das LED Display soll in der Main Schleife Regelmäßig Daten vom PC
  erhalten und diese Ausgeben, ebenfalls über serielle Schnittstelle.

- Die Stromversorgung wird über das PC netzteil realisiert.
  ich brauche 3,3V ,  5V  und leider auch 14V.
  Diese Spannungen wollte ich jeweils ncoh stabilisieren 5V und 3,3V mit
  dem jeweiligen 78XX und die 14 über einen LM 317.



Meine Fragen dazu sind nun folgende:

- Ist die Lösung zur Tasterüberwachung brauchbar, oder gibt es noch was
  anderes/besseres?

- Selbige Frage habe ich auch bei meiner Stromversorgung.
  Besonders, bei den 14V, weil ich für die Erzeugung den LM317 auf +12V
  und -12V hängen wollte. Die Beiden anderen Spannungsebenen werden aber
  über +5V und GND.

- Bei der Kommunikation zwischen µC und PC bräuchte ich auch noch einen
  kleinen tipp...
  folgende Situation: Der µC erhält gerade in der Mainschleife Daten für
  das Display. In der Zeit kommt ein Tastendruck (Play Taste) löst den
  Interupt aus und will auch mit dem PC kommunizieren. Wie verhindere 
ich,
  dass sich diese Übertragungen im Weg umgehen, ohne eine zu ignorieren.

von Tom (Gast)


Lesenswert?

Moin, ich hab jede menge fragen und wäre für jede hilfe dankbar.
es geht darum, dass ich ein distanzmessgerät LM41A (RS232 Schnittstl.) 
über einen µC mit einen Display verbinde, welches dann  die Distanz 
anzeigt. ich weiß, dass ich die rs232 über einen converter in 5V für den 
µC umwaandle. Das distanzmessgerät soll auch eine steuerung besitzen, 
die zum starten der messung dient und der min. distanzbereich soll 
einstellbar sein über den controller.

Welchen µC soll ich verwenden (Atmega32, TINY)?
welches display ist dafür geeignet?
ich wäre dankbar für programmierhilfe oder schaltpläne.

vielen dank im vorraus

von Tom (Gast)


Lesenswert?

Moin, ich hab jede menge fragen und wäre für jede hilfe dankbar.
es geht darum, dass ich ein distanzmessgerät LM41A (RS232 Schnittstl.) 
über einen µC mit einen Display verbinde, welches dann  die Distanz 
anzeigt. ich weiß, dass ich die rs232 über einen converter in 5V für den 
µC umwaandle. Das distanzmessgerät soll auch eine steuerung besitzen, 
die zum starten der messung dient und der min. distanzbereich soll 
einstellbar sein über den controller.

Welchen µC soll ich verwenden (Atmega32, TINY)?
welches display ist dafür geeignet?
ich wäre dankbar für programmierhilfe oder schaltpläne.

vielen dank im vorraus

von Gast (Gast)


Lesenswert?

>- Die Servos haben jeweils zwei endlagen und kommen dazwischen nicht zum
>  stehen. Die häufigere endlage soll die sein in der der Servo keinen PWM
>  Impuls braucht. Die andere soll durch PWM per Timerinterupt angesteuert
>  werden.

Das hast Du falsch verstanden. Servos brauchen immer einen Impuls.

    |------|                  |------|
    | 1ms  |    19ms          | 1ms  |
----|      |------------------|      |-------

1ms Impuls, 19ms Pause --> Servo ganz rechts

    |--------|            |--------|
    | 1,5ms  |    18,5ms  | 1,5ms  |
----|        |------------|        |-------

1,5ms Impuls, 18,5ms Pause --> Servo mitte

    |----------|          |----------|
    |    2ms   |    18ms  |   2ms    |
----|          |----------|          |-------

2ms Impuls, 18ms Pause --> Servo ganz links


Also Zeitgleich 4 Servos ansteuern und 1 Oled und 8 Taster und Uart. Das 
ist spielend mit einem Mega32 machbar. 20ms Servointervall --> 50Hz. 
Update des Displays auch irgendwas bei 50Hz nicht zu oft, sonst wirkt es 
zu unruhig. Tasten entprellen in Software bei 10ms --> 100 Hz. Der 
Controller hat 8Mhz intern oder gar 16Mhz bei externem Quarz. Also hast 
Du mächtig viel Zeit zwischen Deinen ganzen Aufgaben.

14V ist vieleicht besser über einen Step-Up Schaltregler zu machen. 
LM317 mit 10V (24V-14V) Spannungsabfall könnte schon warm werden, je 
nach Last.

>Bei der Kommunikation zwischen µC und PC bräuchte ich auch noch einen
>kleinen tipp... folgende Situation: Der µC erhält gerade in der
>Mainschleife Daten für das Display. In der Zeit kommt ein Tastendruck
>(Play Taste) löst den Interupt aus und will auch mit dem PC
>kommunizieren. Wie verhindere ich, dass sich diese Übertragungen im Weg
>umgehen, ohne eine zu ignorieren.

Kein Problem. Nimm z.B. Timer0 und stelle ihn so ein, dass er alle 10ms 
in einen Timerinterrupt springt, also 100x/Sekunde. In dieser 
Interruptroutine fragst Du die 8 Tasten ab. Merke Dir den Zustand der 
Tasten, ist die Taste in 3..5 aufeinanderfolgenden Fällen gedrückt, gilt 
Sie als tatsächlich gedrückt. Nebenbei ist UART-Empfang locker möglich. 
Da geht nischt verloren. Schau mal in der Codesammlung nach "Tasten 
entprellen - Bulletproof" von Peter Dannegger. Ist ein schönes Beispiel.

von Gast (Gast)


Lesenswert?

@Tom (Gast)

Das ist aber nicht so freundlich, einfach einen Thread zu kapern. 
Erstelle doch einfach einen eigenen, dann wird Dir vieleicht geholfen.

von gast01 (Gast)


Lesenswert?

Kauf dir Displays bei Pollin nicht in der Apotheke bei C.

von Michael (Gast)


Lesenswert?

Was spricht gegen ein Display von Conrad?

Hab bei Pollin nämlich kein OLed und kein LCD im Format 256x64 gefunden.


Vielen Dank noch an Gast und gast01 :-)

von Klaus2 (Gast)


Lesenswert?

Ein Grafik LCD anzusteuern, wenn man Taster hardwareseitig entprellen 
will, sagt ja auch schon alles.

Nimm erstmal ein 4x40LCD da gibt es libs vom Fleury zu. Dann 
Tastenauswertung und Kommunikation mit dem PC. Wenn das funktioniert, 
Servoansteuerung und mechanischen Teil. Dann Touch, ggf. Vor den Servos 
noch ne IR Fernbedienung. Und OLED dann als Krönung.

uC ruhig von anfang an overkill, dann musste nicht so oft umbauen.

Klaus.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.