Moin! als Neuling (Programmieren kann ich, Elektronik versuch ich noch zu verstehen) bin ich kurz davor, mir meine erste Platine zu ätzen. Nur, sicher bin ich nicht, dass das alles so richtig ist - insbesondere bei der Stromversorgung sowie der Spannungsversorgung des Atmel.... Ist das so alles richtig? Oder hab ich einen Bock geschossen? Das ganze ist eine kleines Board zum Messen von Temperatur, Druck und einem Tankpegel und einem Display (über SPI) zur Anzeige. Gemessen wird wie folgt: - Temperatursensoren (KTY 81) über Spannungsteiler - Drucksensor entsprechend der Beschaltung im Datenblatt angeschlossen - Der Tanksensor hat einen Wiederstand von 20 - 180 Ohm (annäherend linear). Gemessen wird mit Konstantstrom und dem damit verbundenn Spannungsabfall. Angeschlossen wird das Board im Auto, so dass die Eingangspannung (12 Volt) unsauber ist. Daher auch der Aufwand hinsichtlich Glättung und Stabilisierung, die ich aus einem ähnlichen Projekt im Netz übernommen habe. Und gleich noch drei Fragen: - Welche Aufgabe haben die Spulen beim Spannungswander und bei VCC? - Welche Kondensatoren (Typ) verwendet Ihr am liebsten aus der Eagle-Bibliothek. Bei meinen Vorlagen werden mal die normalen Keramik Kondensator (Reichelt: KERKO100N), mal aus der eagle-bibliothek capacitor-wima verwendet. - Welche Eagle-Bibliothek liefert mir die normalen Keramik Kondensatoren? Schon mal Danke und cu, Michael
Spulen: Die an AVCC sorgt dafür, dass der nicht bloss Störspannungen misst und die vor dem Regler rettet dem das Leben. Was fehlt: 10K/47nF an Reset. In der Umgebung unbedingt empfehlenswert. Wenn die Analogeingänge deutlich Kabel dran haben, landen alle eingefangenen Störungen schon säuberlich im ADC und die Werte spielen verrückt. Lies: Kondensatoren an die ADC-Eingänge.
Der ADC liest schon mal Mittelwerte aus, um so wenigstens ein bisschen Störungen rauszufiltern. Kondensatoren könnten da aber helfen, stimmt. Was nehm ich dort denn? Jeweils 100 nF auf GND? Reset auch über R/C auf GND? cu, Michael
Reset: R rauf, C runter. C 10nF-100nF was grad da ist, R >= 4K7. Ain: 100nF dürften reichen. Je nachdem was du mit den Leitungen vorhast und wo sie liegen könnte es auch sinnvoll sein, vor Eingänge jeweils einen 10K Serienwiderstand zu packen (dahinter C und Pin). Um dem Controller das Leben zu retten, wann da mal mehr ankommt als ihm lieb ist.
Danke dir, das werd ich morgen gleich ändern. Der Serienwiederstand leuchtet mir auch ein. Noch ne Frage: Wie heissen die herkömmlichen Keramikkondensatoren in Eagle? (Die runden!)
Je nach Rastermaß (2,54 oder 5,08 mm) nimmste C025-024X044 oder C050-024X044 (für Scheiben- oder Vielschichtkondensatoren).
Das Display ist falsch angeschlossen! Der Enable-Eingang (E) darf nicht fest an 5V liegen. Die Daten an den Dateneingängen werden bei einer fallenden Flanke an E übernommen. Du musst diesen Eingang vom µC aus schalten, um Daten zum Display zu übertragen! Außerdem: Gibt es einen Grund dafür, dass Du als Steuerleitungen für das Display die SPI-Leitungen benutzt? Du hast doch genügend andere Controllerpins frei. Das was Du gemacht hast, kann einerseits zu "lustigen" Fehlern auf dem Display führen (was aber nicht so schlimm ist) und andererseits die Programmierung über SPI stören.
@A.K.: Im Prinzip haste Recht, aber die Steuerung über den Enable (Datenübernahme bei fallender Flanke) läuft bei den DOG-Displays genau so, wie bei den HD44780-kompatiblen.
Das Display ist nen DOG-M-Display mit 3x16 Zeichen. Das ganze läuft im SPI-Mode (schon getestet, klappt), so dass ich natürlich die MOSI, SCK etc. dafür verwende! Und die Verdrahtung des Displays entspricht dem Datenblatt für SPI. cu, mz
OK, ich war a bissl blind. Die DOG-Dinger kann man ja über SPI ansteuern, und das ist anscheinend genau das, was Du machst... War grad anscheinend noch nicht ganz wach... Sorry
DOG-M Display über SPI ansteuern macht Sinn. Allerdings fehlen die Serienwiderstände in den SPI-Leitungen zum Display (1k-4k7). Wenn dann noch die Resetleitung des Displays mit dem Reset des AVR zusammengelegt wird (und nicht auf 5V), dann kann bei der ISP-Programmierung auch nichts schiefgehen. Tassilo
Öhm, warum brauch ich denn hier noch Serienwiederstände? Das Display an Reset zu hängen macht meiner Meinung nach nur für die Entwicklung Sinn. Dort kann man das Display dann auch gleich resetten. Wenn es läuft, verwend ich die Reset-Leitung doch nicht mehr. Oder warum sollte ich das sonst noch so machen, wie von Tassilo vorgeschalgen. cu, mz
Das ist mehr als Vorsichtsmaßnahme zu betrachten, gehen müßte es auch so! Wenn beim Programmieren des AVRs die RESET-Leitung des Displays mit runtergezogen wird, kann man ganz sicher sein, daß das Display den Programmiervorgang nicht stört. Und die Serienwiderstände werden auch im Datenblatt des Displays erwähnt/empfohlen, falls es Probleme mit den Signalflanken gibt. Und ja, alle Leitungen zwischen AVR und DOG-M, bei der RESET-Leitung natürlich einen kleineren Wert (<1k). Tassilo
@Tassilo, stimmt. Wenn man das doch etwas magere Datenblatt lang genug studiert, so findet man auch den entsprechenden Hinweis auf die Serienwiederstände. Nur um sicher zu gehen: Serienwiederstand heisst Avr - Wiederstand - Display, oder? Im Datenblatt steh ja Pull-Down-Wiederstand, also ein zusätzlicher Wiederstand auf Masse. Und das wäre ja was anderes, oder? Und wie klein würdest du den Wiederstand in der Reset Leitung machen? Kleiner 1k, aber wieviel? 470 Ohm? 1k? Sorry, dass ich hier vielleicht dumme Fragen stelle, aber gerade bei solchen Kleinigkeiten fehlt mir noch die Erfahrung. Und verstehen würde ich doch gerne, warum ich was mache. Dann muss ich auch nur einmal fragen :-) cu & danke, mz
Also die Serienwiderstände dienen hauptsächlich als Strombegrenzung, damit im Fehlerfall (z.B. beide Seiten als Ausgang programmiert) auf keiner Seite was kaputtgehen kann. Der Pulldown-Widerstand im Datenblatt zielt wahrscheinlich mehr in die Richtung, daß der Eingangswiderstand der Display-Pins kleiner wird und dadurch die Eingänge unempfindlicher gegen Störungen/Reflexionen werden. Dann muß der AVR-Pin beim Schalten zwar mehr Strom liefern, aber das ist bei Pulldown-Widerstandswerten >1k kein Problem. So ein Pulldown-Widerstand ist eigentlich dazu da, um einen ansonsten unbeschalteten Eingang auf ein definiertes Potential zu legen, damit der Eingang nicht 'flattern' kann. Der Widerstand am Display-Reset-Pin ist wirklich nahezu Wurst, da das Display keinen bemerkenswerten internen Pullup-Widerstand hat. Alles <1k geht dort wunderbar, wenn du auf Nummer sicher gehen willst, nimm 100 Ohm. Tassilo
Das Display macht mir Sorgen. Es im SPI-Modus zu betreiben ist ja gut und schön, aber welches ist der Grundzustand beim Einschalten?? Sollte es der parallel Modus sein, würden sich mir die Nackehaare streuben bei dem Knoten E-R/W-Dx. Deshalb würde ich vorschlagen Pin CSB permanent auf GND zu legen, um das Display schon beim Einschalten in den serial Mode zu zwingen.Hier mal ein Link zum Datenblatt des Controllers: http://www.lcd-module.de/eng/pdf/zubehoer/st7036.pdf
Das paßt schon so, wie die Display-Pins auf Vcc bzw. Masse gelegt sind. Genau in dieser Konstellation läuft das bei mir einwandfrei. Zum Vergleich ist im Anhang der Schaltplan meiner aktuellen 'Bastelplatine'. Tassilo
Also das Display funktioniert mit der Beschaltung bei mir auf dem Exp-Board ohne Probleme. Um aber nochmal auf die Spule zurückzukommen.... den Schaltungsteil habe ich aus einer anderen Schaltung (Web) übernommen. Das ist schon ein Riesending! Und bei dem, was ich will, wird dann alles sehr sehr eng. Einige andere Schaltungen, die ebenfalls im Auto eingesetzt werden, haben nun keine Spule, funktionieren aber auch. Warum? Was kann ich machen, um diesen "Klopper" durch was kleineres zu ersetzen? Was bringt mir die Spule hier wirklich? Danke & cu, mz
...nimm eine SMCC 47uH als L1 und einen P6KE statt des 15KE vor den 7805. Ist alles kleiner und reicht auch. Und als Trick setze ich dann noch einen 47 Ohm 1W-Widerstand vor die Spule, um den Strom dei Spannungsspitzen zu begrenzen. Vielleicht erspart Dir sowas auch die Spule. Wichtig ist, daß die Spannungsspitzen nicht in den 7805 durchschlagen. Die TRANSILs (15KE oder P6KE) schalten schnell und können auch einiges an Strom ab aber die Spule kann einen sprunghaften Anstieg des Stroms verhindern.
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.