www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Temperatursensor DS1620, LCD und PIC


Autor: Sebastian Hepp (sebihepp)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe einen Schaltplan für den PIC18F4550, einen DS1620
Temperatursensor und ein "EA DIPS082 HNLED" LCD erstellt.

Neuland ist für mich I2C und das LCD. Es wäre also nett, wenn mich 
jemand
auf evtl. Fehler aufmerksam machen würde.

Für den PIC ist kein Reset vorgesehen und das LCD soll im 4 Bit Modus
angesteuert werden.

Das Platinenlayout schicke ich im nächsten Post nach.

Auch über Verbesserungsvorschläge würde ich mich freuen.

Viele Grüße
Sebihepp

Autor: Sebastian Hepp (sebihepp)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
So, hier ist das Platinenlayout =)

Autor: Sebastian Hepp (sebihepp)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Den ertsen Fehler habe ich selber entdeckt.
Der I2C-Bus sollte mit mind. 3mA gefüttert werden. Die 10k Widerstände
sind also zu groß. 1,5k sollten ausreichen.

Autor: Sebastian Hepp (sebihepp)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh, ich habe die ganze Zeit den falschen Sensor benutzt.
Gemeint ist der DS1621. Ich hatte mich schon gefragt, wie die Adresse
zustande kommt. =D

Alle Adressen werden auf GND gezogen, also 1001000 ist die Adresse.
Die Platine verbessere ich gleich mal...

Sebihepp

Autor: Sebastian Hepp (sebihepp)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Okay, ich habe das Platinenlayout verbessert.

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
RC4,RC5 können nur als Eingänge benutzt werden.
Das geht so schon mal nicht.

Der 470u Elko ist falschrum gezeichnet ;)
Der gehört auch eher vor den 7805.

Autor: Sebastian Hepp (sebihepp)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uff, danke. Ich habe nochmal im Datenblatt nachgesehen: RC4 und 5 sind
nur Eingänge. Das hätte was gegeben. =)

Jetzt setze ich eben alles auf Port D. RD4-7 sind die Datenleitungen
und RD1-3 die Steuerleitungen. Mal sehen, ob ich das noch Routen kann.

Wieso ist der Elko Falschherum? In der Mitte des 7805 ist die Masse.
Den hatte ich als Versorgungselko geplant, also um kurzzeitige Strom-
spitzen zu versorgen.

Autor: Sebastian Hepp (sebihepp)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
So, ich benutze nun PortD4-7 für die LCD-Daten, PortD2-3 für die
Steuersignale Write/Read und Daten/Kommando und PortC7 für Enable.

Ausserdem habe ich auf der Platine noch einen Reset vorgesehen.
Dieser muss nicht benutzt werden, kann aber wenn ich einen Taster
gekauft habe. =)

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bist du sicher, dass die 100nF Kondensatoren derart gross sind? 
Normalerweise nimm man Kerkos mit RM2,5.

Der an VCC/GND vom Controller ist zu weit weg. Die Pins liegen nicht 
zufällig direkt nebeneinander. An jedes Paar davon einer, und zwar 
direkt da dran.

470µF hinter dem Regler ist Unfug.

Wie gedenkst du das Teil zu programmieren? Mit steinzeitlicher 
raus/rein/raus/rein/... Technik aus EPROM-Zeiten?

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Den 470µ-Elko sollte besser vor den 7805. Danach evtl. noch einen 2,2µ.

Die Footprints der Keramikkondensatoren solltest du auch mal überprüfen. 
Üblicherweise haben die ein Rastermaß von 200 oder 100mil. Deine 
Leitungsführung (z.B. Masse am DS1621) ist etwas 'unorthodox'.

MfG Spess

Autor: Sebastian Hepp (sebihepp)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Wie gedenkst du das Teil zu programmieren? Mit steinzeitlicher
> raus/rein/raus/rein/... Technik aus EPROM-Zeiten?

Genau so ;) Mein Programmer funktioniert nur auf diese Weise.
Ich werde mich später mal mit ICSP beschäftigen.

> Bist du sicher, dass die 100nF Kondensatoren derart gross sind?
> Normalerweise nimm man Kerkos mit RM2,5.

Jep, bin mir sicher. Ich habe nochmal nachgesehen und der Pinabstand
ist ziemlich genau 10mm. Das nächste Mal kaufe ich mir aber kleinere.


> Den 470µ-Elko sollte besser vor den 7805. Danach evtl. noch einen 2,2µ.

Okay, dann stelle ich die 470uF vor den 7805. Danach kommt dann einfach
keiner.

> Der an VCC/GND vom Controller ist zu weit weg. Die Pins liegen nicht
> zufällig direkt nebeneinander. An jedes Paar davon einer, und zwar
> direkt da dran.

Ist der wirklich zu weit weg? Ich habe ihn extra über den Controller
gestellt und direkt verbunden. Meinst du, ich soll ihn links daneben
stellen? Der PIC hat sogar 2 paare VSS und VDD, reicht es, wenn ich
einen anschließe?


> Deine Leitungsführung (z.B. Masse am DS1621) ist etwas 'unorthodox'.

Meinst du, warum die Masse auch gleich an die Adresspins gelegt wird?
Oder einfach alles an sich?

Ich werde die Platine auch nochmal neu designen, einen Resettaster und
2 weitere an irgendeinem freien Port hinzufügen.

Viele Grüße und danke für die ganzen Antworten
Sebihepp

Autor: Sebastian Hepp (sebihepp)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
So, neue Platine, neues Glück. =)

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sebastian Hepp schrieb:

> Genau so ;) Mein Programmer funktioniert nur auf diese Weise.
> Ich werde mich später mal mit ICSP beschäftigen.

Stecker dafür würde ich trotzdem vorsehen.

> Der PIC hat sogar 2 paare VSS und VDD, reicht es, wenn ich
> einen anschließe?

Normalerweise gehört sich das so, aber angesichts deiner Kolosse macht 
das auch keinen grossen Unterschied mehr. Jetzt ist es jedenfalls 
wesentlich besser.

Autor: Sebastian Hepp (sebihepp)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Normalerweise gehört sich das so, aber angesichts deiner Kolosse macht
> das auch keinen grossen Unterschied mehr. Jetzt ist es jedenfalls
> wesentlich besser.

Normalerweise gehört sich das wie? Also immer alle 4 anschließen?

Viele Dank für die ganze Hilfe. Ich melde mich wieder, wenn die
Platine fertig ist.

Viele Grüße
Sebihepp

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sebastian Hepp schrieb:

> Normalerweise gehört sich das wie? Also immer alle 4 anschließen?

Hatte mich etwas unglücklich ausgedrückt. Normalerweise wird jedes 
VCC/GND Paar mit jeweils einem Keramikkondensator dicht an den Pins 
beglückt. Deshalb liegen die ja benachbart. Wer perfekt sein will lötet 
einen SMD 0805 oder 1206 direkt dazwischen.

Autor: Sebastian Hepp (sebihepp)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Hatte mich etwas unglücklich ausgedrückt. Normalerweise wird jedes
> VCC/GND Paar mit jeweils einem Keramikkondensator dicht an den Pins
> beglückt. Deshalb liegen die ja benachbart. Wer perfekt sein will lötet
> einen SMD 0805 oder 1206 direkt dazwischen.

Macht es etwas aus, dass meine Kondensatoren Folienkondensatoren
sind? Und gilt das für alle ICs, dass je ein paar VDD und VSS
mit einem Stützkondensator angeschlossen werden?

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist die Regel bei digitalen ICs, ja. Dass es bei dir Folientypen 
sind dachte ich mir angesichts der Bauform schon. Kerkos sind da zwar 
besser geeignet, weil von der Charakteristik her schlechter (ja, stimmt 
so!), aber deine Schaltung ist nicht sonderlich anspruchsvoll, das ist 
kein Problem.

Autor: Sebastian Hepp (sebihepp)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Okay, danke. Dann werde ich demnächst die Platine herstellen lassen.

Viele Grüße
Sebihepp

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wieso nimmst du so einen riesigen PIC?
Dann noch die USB Version. Was für eine Verschwendung ;)
Ein 28 oder sogar nur 18 Beiner würde
es doch auch tun. Dann statt Quarzoscillator
ein Quarz mit 2xC und die Platine würde wesentlich
kleiner und billiger werden. Dann noch SMD Teile (kann ja
auch 1206 sein), und die Platte wird nur halb so groß.

Autor: Sebastian Hepp (sebihepp)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Wieso nimmst du so einen riesigen PIC?
> Dann noch die USB Version. Was für eine Verschwendung ;)
> Ein 28 oder sogar nur 18 Beiner würde
> es doch auch tun. Dann statt Quarzoscillator
> ein Quarz mit 2xC und die Platine würde wesentlich
> kleiner und billiger werden. Dann noch SMD Teile (kann ja
> auch 1206 sein), und die Platte wird nur halb so groß.

Hmmm, in diesem Fall hast du recht. Aber ich habe noch so einen
PIC18F4550 hier herum liegen und da bietet es sich doch an, diesen
gleich zu verwenden. Zumal nur die PIC18er Reihe auch Hardware-
multiplikation und C unterstützt.

Aber die nächste Platine möchte ich in SMD (Ausser dem PIC, da ich
ihn zum Proggen wieder entfernen muss) machen. Dann verwende ich auch
kleinere Kondensatoren und einen Quarz statt einem Oszillator.

Billiger wird sie leider nicht, sie ist jetzt schon 100mm x 80mm.
Die meissten Hersteller haben 1qdm als Mindestabnahme. Diese hier
lasse ich aber bei www.platinendesign.de fertigen. Da ist es ziemlich
günstig. Leider weiss ich noch nicht, welche Qualität die Platinen
haben. Das möchte ich erst sehen, bevor ich an SMD 'dran gehe.
Meine erste Platine habe ich bei www.mme-pcb.de fertigen lassen und
bin sehr zufrieden damit.
Ausserdem brauche ich noch nen besseren Lötkolben. Meiner ist mit
seiner 3mm Spitze doch etwas zu groß für SMD.

Viele Grüße
Sebihepp

Autor: Sebastian Hepp (sebihepp)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe Heute meine Platine bekommen (endlich!) und sofort die
Bauteile darauf gelötet. Dann habe ich die Batterie angeklemmt...
Nichts... PENG (So laut wie ein neuer Lichtschalter) => Ich habe sofort
die Batterie abgeklemmt (9V Block) und mir dabei noch eine Brandblase
an dem 7805 geholt. Der war vielleicht heiss. Also dachte ich an
einen Kurzschluss. Mit dem Durchgangsprüfer konnte ich aber keinen
feststellen. Ausserdem sind alle Bauteile vom aussehen her okay.
Kein dunkler Fleck auf der Platte, nichts.

Jetzt weiss ich nicht mehr weiter, denn ich traue mich nicht mehr die
Batterie anzuschließen.

Am Schaltplan hat sich nicht viel verändert. Lediglich der Taster
wurde noch nicht bestückt (Beinchen zu dick) und das Display wird
jetzt im 8-Bit-Interface betrieben. Ich lade das neue Layout, den
Assembler-Code und Bilder der Platine hoch. Vielleicht fällt ja
jemandem etwas auf.

Das Display bleibt übrigens dunkel, nach anschluss der Versorgungs-
spannung. Ich denke das ist normal und die Hintergundbeleuchtung wird
erst bei der Initialisierung angeschalten, richtig?

Viele Grüße
Sebihepp

Autor: Sebastian Hepp (sebihepp)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Achtung, habe den Fehler gefunden!
Layouts nicht benutzen! LCD Spannungsversorgung ist verpolt!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.