www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PIC mit zwei TX-Eingängen


Autor: Tobi R. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Gibt es eignentlich einen PIC, der mehr als einen TX- und RX-Pin hat?

Ich muss in einem kleinen Projekt zwei asynchrone serielle Datenstränge
empfangen und verarbeiten und einen wieder ausgeben. Mir fehlt im Moment
noch die Idee das Problem des geleichtzeitigen Empfangens und Sendens
per Software zu lösen. Außerdem sollte er noch eine I2C-Schnittstelle
haben, da ich wahrscheinlich noch ein Ram anschließen muss.

Vielen Dank im Voraus!

Gruß Tobi

Autor: Tobi R. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ups, meinte natürlich zwei RX-Eingänge und 1 TX-Ausgang!!!

Autor: alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nim doch nen ATMega64 oder ATMega128, der hat zwei USART und I2C.

Autor: Gehard Gunzelmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Tobi

gibts schon, aber in der Regel sind das große PIC's - das heißt,
solche mit vielen Anschlüssen. Derzeit hab ich einen PIC30F4013 in
Arbeit, der hat 2 UART's und ist in einem 40-Pin gehäuse.

Gerhard

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit PIC kenne ich mich nicht aus, aber AVR, 8051 gibt es einige mit 2
UARTs.

Bei den 8051 mit PCA kann man noch eine 2. und 3. UART in Software
basteln.

Beim AVR mit T1 prinzipiell auch, wird aber tricky bei hohen Baudraten
und wenn noch andere Interrupts zuschlagen können, wegen der fehlenden
Interruptprioritäten.


Was sind denn das für RAMs, die per I2C gehen und wieviel kB könne die
?

Meinst doch wohl nicht etwa diese uralt Philipser, magere 256 Byte
klein.
Da nimmt man besser gleich nen MC mit popeligen 256 Byte mehr.


Peter

Autor: Tobi R. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die schnellen Antworten!

Also ein PIC sollte es schon sein, da ich den einigermaßen gut
programmieren kann. Da ich außer den erwähnten Anschlüssen nur noch ein
3-4 normal IN/OUTs brauche, wird ein großer wie der PIC30F4013 nicht in
frage kommen.

Als Ram werde ich so 1-2k brauchen. Spezielle bauelemente habe ich noch
nicht rausgesucht.

Tobi

Autor: Gehard Gunzelmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der PIC 30F3013 ist ein 28-pinner und der hat auch schon 2 UART's und 2
K RAM

Gerhard

Autor: Tobi R. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh, danke!

Ich werd mir mal die Datenblätter von den zwei genannten pics ansehen.

Tobi

Autor: Schoaschi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
bei dem PIC30F3013 (eigentlich dsPIC30F3013) handelt sich es aber um
einen DSP...möchte ich hier nur mal erwähnen.

Es gibt aber auch andere "normale" PICs mit 2 UARTs und I²C.
SChau dir mal folgende an:
PIC18F6520
PIC18F6527
PIC18F65J10
....
(Also in der PIC18F Serie sind doch einige zu finden)

mfg schoasch

Autor: GeriB (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Tobi

Man müsste natürlich Deine Anwendung kennen um definitive Aussagen zu
treffen. Eine einfache Möglichkeit wäre aber z.B. auch die serielle
Schnittstelle per Software zu implementieren. Dann könnte man sogar
mehrere Schnittstellen realisieren,  Z.B. über PortB.

Eine weitere Möglichkeit wäre evtl. auch auf die USB-Schnittstelle
auszuweichen. Hier eine Beispielschaltung:
http://burger-web.com/Projects/PIC18F4550USB/de_PI...

Die serielle Schnittstelle ist hier noch frei und man hat mit dem
PIC18F4550 genügend Power für andere Dinge.

Überlegen könnte man sich auch eine Variante mit zwei Pics, die über
I2C kommunizieren. Die Anwendung wäre dann fast beliebig erweiterbar,
allerdings steigt der Programmieraufwand ein wenig.

Beste Grüsse
Geri

Autor: Tobi R. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!

Mal ganz gleich zu Anfang: Mein Projekt hat nix mit der kommunikation
mit dem PC zu tun und auch nicht mit RS232 oder USB.

Ich muss zwei DMX512 Signale empfangen und verarbeiten und gleichzeitig
noch ein DMX Signal ausgeben. Mit zwei UARTS könnte ich mir einiges an
Programmieraufwand ersparen.

Wie würde ich da rann gehen, wenn ich es per Software lösen wollte?
drei timer und per interrupts? was aber passiert, wenn zwei interrups
fast zeitgleich ausgelöst werden?

Tobi

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.