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


von Sebastian H. (sebihepp)


Angehängte Dateien:

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

von Sebastian H. (sebihepp)


Angehängte Dateien:

Lesenswert?

So, hier ist das Platinenlayout =)

von Sebastian H. (sebihepp)


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.

von Sebastian H. (sebihepp)


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

von Sebastian H. (sebihepp)


Angehängte Dateien:

Lesenswert?

Okay, ich habe das Platinenlayout verbessert.

von holger (Gast)


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.

von Sebastian H. (sebihepp)


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.

von Sebastian H. (sebihepp)


Angehängte Dateien:

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. =)

von (prx) A. K. (prx)


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?

von spess53 (Gast)


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

von Sebastian H. (sebihepp)


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

von Sebastian H. (sebihepp)


Angehängte Dateien:

Lesenswert?

So, neue Platine, neues Glück. =)

von (prx) A. K. (prx)


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.

von Sebastian H. (sebihepp)


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

von (prx) A. K. (prx)


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.

von Sebastian H. (sebihepp)


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?

von (prx) A. K. (prx)


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.

von Sebastian H. (sebihepp)


Lesenswert?

Okay, danke. Dann werde ich demnächst die Platine herstellen lassen.

Viele Grüße
Sebihepp

von holger (Gast)


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ß.

von Sebastian H. (sebihepp)


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

von Sebastian H. (sebihepp)


Angehängte Dateien:

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

von Sebastian H. (sebihepp)


Lesenswert?

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

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.