Hallo, Ich möchte mir ein Lichtmischpult bauen. Dazu verwende ich einen ATMega32 mit einem MAX485 um DMX daten zu senden. Das Mischpult soll 26 Fader und ~32 Buttons haben. In diesem Beitrag "Wie ADC erweitern/muxen (ATmega)?" wird der 74HC4067 erwähnt, aber der wird ja nicht über SPI angesprochen, oder? Gibt es einen externen ADC der über SPI angeschlossen wird? - und wenn ja, wie steuere ich ihn an? (Programmiere in Bascom) Zum erweitern der Eingänge würde ich 47HC165 verwenden, allerdings weiß ich auch hier nicht wie ich die per Software anspreche. Oder soll ich einfach weitere µC (Atmega32) per SPI anschließen und die Eingänge so erweitern? Und dann ist da ja noch das EEprom (http://www.reichelt.de/EEPROM-seriell-SPI-Microchip/25LC320A-I-P/3//index.html?ACTION=3&GROUPID=4512&ARTICLE=96660&SHOW=1&START=0&OFFSET=500&) Wie kann ich mit Bascom Daten schreiben und wieder auslesen? Und zu guter letzt: Der Atmega wird mit einem 8MHz Quarz getaktet. Laut Datenblatt braucht er 32pF Kondensatoren. Aber ich finde keine 23pf Kerkos bei Reichelt. Schonmal Danke im Voraus! ;)
Hat den keiner eine Idee? Oder habe ich mich einfach zu unverständlich ausgedrückt?
@ Luca E. (derlucae98) >Dazu verwende ich einen ATMega32 mit einem MAX485 um DMX daten zu >senden. >Das Mischpult soll 26 Fader und ~32 Buttons haben. Klingt nach 26 Potentiometern, die per ADC gelesen werden sollen sowie 32 einfachen Tastern, welche digital per Porterweiterung gelesen werden. >In diesem Beitrag "Wie ADC erweitern/muxen (ATmega)?" wird der 74HC4067 >erwähnt, aber der wird ja nicht über SPI angesprochen, oder? Nein, das ist ein analoger Multiplexer. >Gibt es einen externen ADC der über SPI angeschlossen wird? Wozu? Dein AVR hat einen ADC, der hier vollkommen ausreichend ist. Nutze ihn. > - und wenn >ja, wie steuere ich ihn an? (Programmiere in Bascom) >Zum erweitern der Eingänge würde ich 47HC165 verwenden, allerdings weiß >ich auch hier nicht wie ich die per Software anspreche. Muss man "per Hand" machen, bzw. SPI. AVR-Tutorial: Schieberegister >Oder soll ich einfach weitere µC (Atmega32) per SPI anschließen und die >Eingänge so erweitern? Nein. >Und dann ist da ja noch das EEprom >(http://www.reichelt.de/EEPROM-seriell-SPI-Microchi...) >Wie kann ich mit Bascom Daten schreiben und wieder auslesen? Keine Ahung. Kann sein dass es dafür schon fertige Funktionen gibt. Kann aber auch sein, dass du das Protokoll selber handhaben musst. >Und zu guter letzt: Der Atmega wird mit einem 8MHz Quarz getaktet. Laut >Datenblatt braucht er 32pF Kondensatoren. Aber ich finde keine 23pf >Kerkos bei Reichelt. Nimm 22pF oder 33pF die reichen auch.
Danke für deine Antwort, falk Falk Brunner schrieb: > Klingt nach 26 Potentiometern, die per ADC gelesen werden sollen sowie > 32 einfachen Tastern, welche digital per Porterweiterung gelesen werden. Richtig. > Nein, das ist ein analoger Multiplexer. Das dachte ich mir. Einziges problem -> ansteuerung in Bascom. >>Und dann ist da ja noch das EEprom >>(http://www.reichelt.de/EEPROM-seriell-SPI-Microchi...) >>Wie kann ich mit Bascom Daten schreiben und wieder auslesen? > > Keine Ahung. Kann sein dass es dafür schon fertige Funktionen gibt. Kann > aber auch sein, dass du das Protokoll selber handhaben musst. Bereits gelöst. > Nimm 22pF oder 33pF die reichen auch. Alles klar. Das heißt ich brauche 2 Analogmultiplexer für die Fader, 4 74HC165 für die Taster und 4 74HC595 für die Taster LED'S. Kann ich mir eigentlich die Ports für SCL, SCK, usw. selbst aussuchen, oder gibts da "feste" Ports?
@ Luca E. (derlucae98) >> Nein, das ist ein analoger Multiplexer. >Das dachte ich mir. Einziges problem -> ansteuerung in Bascom. Wo ist das Problem? Du musst einfach nur vier Bit (IO-Pins) per Software steuern, welche an S0-S3 beider Multiplexer gehen. Damit wählst du den kanal aus, welcher vom ADC gelesen werden soll. Der 1. Multiplexer geht an ADC0, der zweite an ADC1. Fertig. >Das heißt ich brauche 2 Analogmultiplexer für die Fader, 4 74HC165 für >die Taster und 4 74HC595 für die Taster LED'S. Ja. >Kann ich mir eigentlich die Ports für SCL, SCK, usw. selbst aussuchen, >oder gibts da "feste" Ports? Wenn du SPI in Hardware und damit mit maximaler Geschwindigkeit betreiben möchstest, musst du die festen Ports nehmen. Machst du SPI in Software, kannst du sie frei wählen.
Falk Brunner schrieb: > Wo ist das Problem? Du musst einfach nur vier Bit (IO-Pins) per Software > steuern, welche an S0-S3 beider Multiplexer gehen. Damit wählst du den > kanal aus, welcher vom ADC gelesen werden soll. Der 1. Multiplexer geht > an ADC0, der zweite an ADC1. Fertig. Ah doch so einfach. cool. Falk Brunner schrieb: > Wenn du SPI in Hardware und damit mit maximaler Geschwindigkeit > betreiben möchstest, musst du die festen Ports nehmen. Machst du SPI in > Software, kannst du sie frei wählen. Ok gut. Ich erstelle mal einen Schaltplan. Vielleicht kann jemand mal drüberschauen.
Den Schaltplan habe ich als Anhang hinzugefügt. Ist alles korrekt verbunden? Mir ist aufgefallen, dass man den 74HC4067 auch als Eingangserweiterung einsetzen kann. Quasi so: Kanal wählen => Pinstatus in Variable schreiben; nächsten Kanal wählen => Pinstatus in nächste Variable; usw.. Macht das Sinn? Die Anzahl der Fader habe ich auf 12 reduziert. Da es in Eagle keinen 74HC4067 gibt, habe ich mal schnell eine lib erstellt. MfG Luca
@ Luca E. (derlucae98) >Den Schaltplan habe ich als Anhang hinzugefügt. >Ist alles korrekt verbunden? E\ muss auf GND. An AREF gehört ein 100nF Kondensator gegen GND, aber keine +5V! DMX Out willst du besser an PD1 anschließen. Haben deine Taster Pull-Ups/downs? >Mir ist aufgefallen, dass man den 74HC4067 auch als Eingangserweiterung >einsetzen kann. Quasi so: >Kanal wählen => Pinstatus in Variable schreiben; nächsten Kanal wählen >=> Pinstatus in nächste Variable; usw.. Macht das Sinn? Ja, ist ja ein Multiplexer. >Da es in Eagle keinen 74HC4067 gibt, habe ich mal schnell eine lib >erstellt. Naja, verbesserungsfähig. Der Name gehört in Layer NAMES, die Pins sind zu kurz, damit die Zahlen zu nah am Symbol. Z als Ausgang zeichnet man normalerweise rechts im Symbol. VCC/GND macht man bei Logik-ICs meist als eigenes Gatter, siehe die 74er Serie.
Falk Brunner schrieb: > E\ muss auf GND. > An AREF gehört ein 100nF Kondensator gegen GND, aber keine +5V! Ok werde ich ändern. Falk Brunner schrieb: > DMX Out willst du besser an PD1 anschließen. Ich wollte das DMX signal erst per Software UART senden, weil der UART Code bei mir 4 Fehler versucht hat, deswegen PD7. Habe aber gerade herausgefunden warum und werde es jetzt an PD1 hängen. Der DMX_OUT am rechten, unteren Bildrand bei SV6 gehört da nicht hin. Ich habe nur vergessen den Wert des Anschlusses zu ändern. Falk Brunner schrieb: > Haben deine Taster Pull-Ups/downs? Ich verwende die Pullups des Atmegas. Falk Brunner schrieb: > Naja, verbesserungsfähig. Der Name gehört in Layer NAMES, die Pins sind > zu kurz, damit die Zahlen zu nah am Symbol. Z als Ausgang zeichnet man > normalerweise rechts im Symbol. VCC/GND macht man bei Logik-ICs meist > als eigenes Gatter, siehe die 74er Serie. Wie gesagt: Ist mal eben schnell erstellt. Werde mich mal dransetzen und ordentlicher machen.
@ Luca E. (derlucae98) >Ich wollte das DMX signal erst per Software UART senden, weil der UART >Code bei mir 4 Fehler versucht hat, deswegen PD7. 250.000 Bud per Soft-UARt istr nicht sinnvoll, dann sit dein CPU wirklich komplett ausgelastet. >> Haben deine Taster Pull-Ups/downs? >Ich verwende die Pullups des Atmegas. Ach so, du willst ja auch Multiplexer für die Taster nutzen, keine Schieberegister. Naja, kann man machen, aber wenn du die schnell abfragen willst, brauchst du deutlich niederohmigere Pull-Ups. Nimm liwber einen externen.
Falk Brunner schrieb: > Ach so, du willst ja auch Multiplexer für die Taster nutzen, keine > Schieberegister. Naja, kann man machen, aber wenn du die schnell > abfragen willst, brauchst du deutlich niederohmigere Pull-Ups. 100R - 1k etwa? oder noch niedriger. Reicht es wenn ich den PullUp am Ausgang des MPX anschließe oder braucht jeder Eingang einen?
@ Luca E. (derlucae98) >> abfragen willst, brauchst du deutlich niederohmigere Pull-Ups. >100R - 1k etwa? oder noch niedriger. Na, 1-10k sollten reichen. >Reicht es wenn ich den PullUp am Ausgang des MPX anschließe Ja. >oder braucht jeder Eingang einen? Nein.
Falk Brunner schrieb: > Na, 1-10k sollten reichen. Hat der Atmega32 nicht auch 10k PullUps? Aber egal wenn es 1k auch tun, nehme ich 1k.
Eine Frage habe ich aber noch: Welches Werkzeug brauche ich für die Schneidklemmen dieser Wannenstecker? (http://www.reichelt.de/Pfosten-Wannenstecker/PL-2X13G-2-00/3//index.html?ACTION=3&GROUPID=3231&ARTICLE=51902&SHOW=1&START=0&OFFSET=16&)
Ein passendes Flachbandkabel und einen Schraubstock. Es mag da passende Zangen geben, aber ich finde mit einem Schraubstock gehts am besten.
Karl Heinz Buchegger schrieb: > Ein passendes Flachbandkabel und einen Schraubstock. Du meinst, den Wannenstecker in den Schraubstock einspannen und die Drähte mit nem Schlitzschraubendreher in die Schneidklemmen reindrücken, oder wie? Das war meine erste Idee.
Luca E. schrieb: > Karl Heinz Buchegger schrieb: >> Ein passendes Flachbandkabel und einen Schraubstock. > > Du meinst, den Wannenstecker in den Schraubstock einspannen und die > Drähte mit nem Schlitzschraubendreher in die Schneidklemmen reindrücken, > oder wie? Brauchst du gar nichts 'reindrücken'. Solange der Bügel nicht geschlossen ist, ist da ein Spalt. Und wenn nicht, dann setzt man den Bügel eben erst dann auf, wenn man das Kabel auf die Schneidklemmen aufgesetzt und ev. ein bischen angedrückt hat. Nein. Du spannst den Stecker in den der quer in den Schraubstock ein, so dass du mit den Backen des Schraubstocks den Bügel zudrücken kannst. Das geht nämlich ganz schön schwer. Der Trick besteht darin, dass der Bügel parallel zugedrückt werden soll/muss. Also vergiss alle 'mit der Kombizange Stück für Stück den Bügel zumachen' sachen. Stecker der quer in den Schraubstock, Kabel einfädeln, Schraubstock zudrehen. Das Kabel wird vom Bügel in die Schneidklemmen gedrückt! Und den Bügel wiederrum drücksz du mit dem Schraubstock an den Stecker-Körper.
Aber leg dir je nach Schraubstock etwas zwischen Backen und Stecker. Sonst hast du das Muster der Schraubstockbacken im Kunststoff des Steckers. Im Ernst: das braucht einiges an Kraft, 10 oder mehr Kabel gleichzeitig in die Schneidverbinder einzudrücken. Unterschätz das nicht! Unglaublich: es gibt kein youtube-Video von dem Vorgang! Zumindest hab ich nichts gefunden.
So, der Schaltplan ist fertig. Gibt es einen Trick, Vielpinner wie den 74HC4067 mit dem Wannenstecker auf der Platine zu verbinden? Karl Heinz Buchegger schrieb: > Unglaublich: es gibt kein youtube-Video von dem Vorgang! Zumindest hab > ich nichts gefunden. Vielleicht sollte man das mal ändern :D
Pinbelegung vom Stecker anpassen oder ICS 180 Grad drehen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.