Pic 18F27J53 problem mit einem Pin

Gast #3514557
Hallo zusammen,

ich habe ein Problem mit meinem Pic 18F27J53.
Es geht darum, dass ich das Bluetooth Modul (HC-05) in Kombination mit 
meinem Pic verwende.
Das Bluetooth Modul empfängt Signale von einem Handy und übermittelt 
diese an meinen Pic weiter.
Der Pic empfängt Signale sendet aber keine an das Bluetooth Modul 
zurück.
Somit benötige ich die RX - Leitung der Bluetooth Moduls nur zum 
Konfigurieren des Moduls und nicht bei der Steuerung des PIC mit dem 
Handy.
Da ich dadurch den c6 Pin des Pic auch nicht benötige, wollte ich diesen 
für etwas anderes verwenden.

Mein Problem ist, das dieser Pin irgendwie immer auf „High“ geschaltet 
ist und das liegt an dieser Zeile in meinem Programmcode:

#use    rs232(baud=38400, xmit=PIN_c6, rcv=PIN_c7, ERRORS)

Wenn ich nun das "xmit=PIN_c6" aus der Zeile lösche, dann ist der Pin c6 
auch nicht mehr auf High und ich kann in ganz normal verwenden so wie 
ich ihn brauche, aber der Pic reagiert leider nicht mehr auf das was er 
vom Bluetooth Modul übermittelt bekommt.

Wie kann ich das so umändern, dass ich den c6 Pin verwenden kann und der 
Pic trotzdem noch auf die Befehle des Bluetooth Moduls reagiert?


Ich dank euch im Vorhinein!
Helpme91 schrieb:
> #use    rs232(baud=38400, xmit=PIN_c6, rcv=PIN_c7, ERRORS)
>
> Wenn ich nun das "xmit=PIN_c6" aus der Zeile lösche, dann ist der Pin c6
> auch nicht mehr auf High und ich kann in ganz normal verwenden so wie
> ich ihn brauche, aber der Pic reagiert leider nicht mehr auf das was er
> vom Bluetooth Modul übermittelt bekommt.

Keine Ahnung was "#use    rs232(baud=38400, xmit=PIN_c6, rcv=PIN_c7, 
ERRORS)" im Hintergrund genau macht, aber offensichtlich wird das EUSART 
Modul von diesem Macro ohne vollständige Parameter gar nicht 
initialisiert, daher auch keine Verbindung auf der RX-Leitung. Mich 
wundert nur das ohne "xmit=PIN_c6" keine Fehlermeldung oder Warnung 
kommt?

Versuche die EUSART-Initialisierung direkt (also ohne diseses vorgegeben 
Makro) mit den entsprechenden Controllerregistern durchzuführen und 
Configuriere dir danach den PORTC.6 für deine Zwecke (der wird von 
EUSART Modul auf Output gestellt).

Keine Ahnung ob das funkteoniert da noch nie probiert.....
Gast
Ich möchte den Pin RC6 einfach zum ein und ausschalten einer LED 
verwenden.

Nur wie sage ich das dem Pic, das er Pin RC7 zum empfangen der Daten und 
RC6 zum schalten verwendet?
Helpme91 schrieb:
> Ich möchte den Pin RC6 einfach zum ein und ausschalten einer LED
> verwenden.
>
> Nur wie sage ich das dem Pic, das er Pin RC7 zum empfangen der Daten und
> RC6 zum schalten verwendet?

Dann initialisiere wie gehabt. RC6 wird ohnehin als Output konfiguriert.
Die Leitung RC6 -> RS232-Treiber oder SUB-D Buchse auftrennen und den 
Treibereingang/SUB-D Buchse mit HIGH-Pegel versorgen (über 10K an Plus).
An RC6 eine LED mit Vorwiderstand gegen GND oder Plus.
LED dann mit LATCbits.LATC6 = 1 bzw. 0 schalten ( oder wie das beim CCS 
eben gemacht wird).

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 12 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.