| Autor |
|
PIC18F1320 RS232 Pegel invertrieren |
|
|
|
|
BID = 562068
Michael K. Neu hier

Beiträge: 26 Wohnort: Niederbayern
|
|
Hallo,
ich möchte den Pic18f1320 direkt an die RS232 Schnittstelle am PC anschließen.
Die Schnittstelle hab ich folgender maßen konfiguriert.
baudUSART (BAUD_IDLE_RX_PIN_STATE_LOW &
BAUD_IDLE_TX_PIN_STATE_LOW &
BAUD_8_BIT_RATE &
BAUD_WAKEUP_ON &
BAUD_AUTO_OFF);
OpenUSART( USART_TX_INT_OFF &
USART_RX_INT_OFF &
USART_ASYNCH_MODE &
USART_EIGHT_BIT &
USART_CONT_RX &
USART_BRGH_HIGH,
51 );
Der Pic sendet zwar was, aber es kommen andere Zeichen an.
Für mich sieht es so aus, als ob das Signal invertriert gehört.
Hat jemand eine Ahnung wie man das Softwaremäßig hinbekommt?
Einen Treiber IC (MAX....) möcht ich eigentlich nicht benutzen!
Ich bin für jeden Tip dankbar.
mfg Mike |
|
BID = 562071
DonComi Inventar
     
Beiträge: 8604 Wohnort: Amerika
|
|
Zitat :
|
Einen Treiber IC (MAX....) möcht ich eigentlich nicht benutzen!
|
Wäre aber besser! Zumindest wenn die RS232-Schnittstelle korrekt ist, kommen dort Spannungen jenseits der Versorgung deines µCs raus, was der nicht mag. Es sei denn, diese Spannungen werden begrenzt.
So, und der Datensalat, der da rauskommt kann auch durch eine falsche Einstellung (z.B. die Baudrate) zustandekommen!
_________________
|
|
BID = 562075
Her Masters Voice Inventar
     
Avatar auf fremdem Server ! Hochladen oder per Mail an Admin
Beiträge: 5312 Wohnort: irgendwo südlich von Berlin
|
da der MAX232 das Signal invertiert wird das wohl ohne eine Invertierung nichts werden. Keine Ahnung in welcher Sprache da programmiert werden soll aber im Zweifelsfall programmiert man sich eine RS232 in Software, da kann man selbst entscheiden ob ne 1 oder ne 0 rauskommen soll.
_________________
Tschüüüüüüüs
Her Masters Voice
aka
Frank
***********************************
Der optimale Arbeitspunkt stellt sich bei minimaler Rauchentwicklung ein...
***********************************
|
BID = 562076
perl Ehrenmitglied
       
Beiträge: 11110,1 Wohnort: Rheinbach
|
Zitat :
| | Einen Treiber IC (MAX....) möcht ich eigentlich nicht benutzen! |
Das wird der PIC evtl. nicht überleben.
|
BID = 562086
Racingsascha Schreibmaschine
    
Beiträge: 2247 Wohnort: Gundelsheim
|
Zitat :
| | Einen Treiber IC (MAX....) möcht ich eigentlich nicht benutzen! |
Dann wäre wohl das hier (zweites Bild) das Richtige für dich.
_________________
Fnord ist die Quelle aller Nullbits in deinem Computer.
Fnord ist die Angst, die Erleichterung, und ist die Angst.
Fnord schläft nie.
|
BID = 562090
Ltof Inventar
     
Beiträge: 9386 Wohnort: Hommingberg
|
Zitat :
Michael K. hat am 6 Nov 2008 22:22 geschrieben :
|
Einen Treiber IC (MAX....) möcht ich eigentlich nicht benutzen!
|
Das lässt sich auch mit Optokopplern erledigen. Benutz mal die Forensuche. Dazu hatte ich schon mal was geschrieben. Falls das nicht mehr auffindbar ist, schreibe ich das neu. Das kann aber dauern...
_________________
„Schreibe nichts der Böswilligkeit zu, was durch Dummheit hinreichend erklärbar ist.“
(Hanlon’s Razor)
|
BID = 562094
Michael K. Neu hier

Beiträge: 26 Wohnort: Niederbayern
|
Hallo,
programmiert wird mit dem C18 Compiler von Microchip.
Ich mein warum soll man extra eine RS232 Software pgrammieren, wenn der PIC schon eine integeriert hat und auserdem kostet eine Software RS232 performance...
Hardwaretechnsich möchte ich mich so klein halten wie es nur möglich ist.
Kann man die Schnittstelle nicht so konfigurieren, sodass die Pegel beim senden (vom Pic zu PC) invertriert werden.
Mit einem 16F84 hab ich schon mal eine Software RS232 Schnittstelle aufgebaut. Das senden an den PC hat erst funktioniert als der Pegel invertriert wurden. Das beweißt zumindestens, das meine Schnittstelle mit 0 und 5V klar kommt.
mfg Mike
|
BID = 562101
DonComi Inventar
     
Beiträge: 8604 Wohnort: Amerika
|
Schade, aber es scheint nicht anzukommen.
Tja, dann mache deine PICs ruhig kaputt, mehr als warnen können wir auch nicht.
Es kann ja sein, dass der Empfänger deines PCs diese Spannungen noch korrekt interpretieren kann, aber so richtig normgerecht sind sie nicht. Und der Empfänger resp. die IO-Pinnen deines PICs kommen mit den bis zu +-15V nicht klar, da beginnen dann die internen Schutzdioden zu leiten. Dabei kannst du eben deinen PIC schrotten.
Es gibt integrierte Treiber, die sehr klein sind (SOIC oder kleiner), da wirst du diskret nichts reißen können, oder nur schwerlich und nicht wirklich sauber.
Wenn es denn wirklich nur ein Inverter sein soll und du keine Signale empfangen willst (die dir potentiell den PIC schrotten können) dann reicht ein Transistor mit zwei Widerständen als Inverter. Das schafft man in SMD diskret so klein, dass man es aus 1m Entfernung nicht mehr sieht!
_________________
|
BID = 562141
hajos118 Schreibmaschine
    
Beiträge: 2453 Wohnort: Untermaiselstein
|
Zitat :
Michael K. hat am 6 Nov 2008 23:37 geschrieben :
|
Ich mein warum soll man extra eine RS232 Software pgrammieren, wenn der PIC schon eine integeriert hat
|
... weil Du offensichtlich keine externe Hardware verwenden möchtest.
Zitat :
|
Hardwaretechnsich möchte ich mich so klein halten wie es nur möglich ist.
|
Also Inverter als Transistor oder Treiber (MAX233 - ohne ext. Kondensatoren mit 5V) + interne RS232
ODER
Direkte Anschaltung an PC mit der Hoffnung auf das Überleben des PIC + selbstgebastelte RS232 Software.
*FlüsterSusi* So, nun musst Du Dich entscheiden ....
_________________
Interpunktion und Orthographie dieses Beitrags sind frei erfunden.
Eine Übereinstimmung mit aktuellen oder ehemaligen Regeln wäre rein zufällig und ist nicht beabsichtigt.
Wer einen Fehler findet, darf ihn behalten!
|
BID = 562172
Michael K. Neu hier

Beiträge: 26 Wohnort: Niederbayern
|
|
BID = 562194
DonComi Inventar
     
Beiträge: 8604 Wohnort: Amerika
|
Das ist Murks.
Aber wenn es funktioniert, bitte...
Ich würde das den Schutzdioden nicht permanent zumuten wollen.
_________________
|
BID = 562199
perl Ehrenmitglied
       
Beiträge: 11110,1 Wohnort: Rheinbach
|
Zitat :
| | Damit der Pic durch den 12V Pegel nicht zerstört wird, reicht ein 22K Widerstand. |
Man kann ihn auch leicht über die Ausgangsleitung, in der kein Widerstand ist, umbringen, aber offenbar bist du ja beratungsresistent.
_________________
Haftungsausschluß:
Bei obigem Beitrag handelt es sich um meine private Meinung.
Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.
Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !
|
BID = 563291
Michael K. Neu hier

Beiträge: 26 Wohnort: Niederbayern
|
Hab jetzt mit einem Transistor den Pegel invertriert. Jetzt funktionierts...
Mike
|