mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Doppelnutzung der Ports


Autor: Helmut Hofmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich möchte mit einem AT90S4433 und einem LCD-Display (2x16) eine Uhr 
realisieren.
Die Zeitimpulse möchte ich entweder mit einem externen Zeitgeber über 
INT0 oder INT1 aufnehmen .Bei externer Impulsaufnahme bräuchte ich die 
Eingänge INT0 oder INT1.Diese werden aber schon durch das LCD-Display 
als Ausgänge (PD2 und PD3)  gebraucht.Gibt es die Möglichkeit der 
Doppelnutzung der Ports PD2(INT0) und PD3(INT1)? oder muß ich den Takt 
intern erzeugen?.


Gruß Helmut

Autor: Reiner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das sieht nach Konflikten aus. Selbst wenn Du da 'ne Lösung für findest, 
wirst Du wahrscheinlich schwer nachvollziehen können wenn mal was 
danebengeht wo es denn herkam. War's das Display das den Interrupt 
auslöste oder kam's vom Zeitgeber. Ich würd's lassen. Nutze doch den 
32kHz Oszillator im Interruptbetrieb, oder Taste doch das Signal einfach 
ab, wenn die Sekunde man ein paar microsekunden danebenliegt ist es ja 
nicht schlimm - meist nicht.

Reiner

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein externer Uhrenchip macht nur Sinn, wenn es auf geringste 
Stromaufnahme bei Batteriebetrieb ankommt.

Ansonsten freut sich einer der internen Timer, wenn er zu was nütze ist. 
Will sagen, es ist einfacher mit dem Timer und ein paar Bytes die Zeit 
zu zählen, als irgendwelche Protokolle von Uhrenchips zu
verstehen.

Ich bin z.B. gerade dabei, mir am DS1994 die Zähne auszubeißen.


Wenns aber darum geht, einen DCF77-Impuls zu dekodieren, der ist 
mindestens 100ms lang, d.h. da brauchts keinen Interrupt.

Interrupts sind eigentlich nur dazu da, um extrem schnell auf etwas zu 
reagieren. Alles, was langsamer als 1ms ist, läst sich bequemer per 
Polling oder im Timerinterrupt abfragen.


Wenn Du die Interruptpins brauchst, dann nimm doch einfach andere Pins 
für das Display. Der 4433 hat doch insgesamt 20 I/O-Pins, da sollten 
sich doch die 7 Pins für das LCD finden lassen.


Auch eine Doppelnutzung ist möglich. Man muß bloß sehr genau überlegen, 
daß die eine Funktion der anderen nicht in die Quere kommt. D.h. es 
setzt schon einige Erfahrung im Programmieren voraus.


Peter

Autor: Helmut Hofmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

gute Idee, einfach andere Pins fürs LCD herzunehmen.Warum bin ich da 
nicht selbst daraufgekommen?

vielen Dank


Helmut

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.