mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik R232 richtig einstellen für einen Pic18


Autor: Kay Servatius (mikromaster)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich arbeite gerade mit dem demo board MPLAB-ICD mit einen Pic18f44k22 
Mikrocontroller darauf. Das Problem besteht darin das er gar keine 
Zeichen gesendet werden obwohl ich die in das entsprechende TEXREG 
Register schreibe.Ich muss die serielle Schnittstelle per Hand 
Programieren da er wenn ich die Vorgefertigten Include Dateien verwende 
z.B. usart.h die darin deklarierten Programmfunktionen nicht findet.
Vieleicht kann mir jemand weiter helfen und mir sagen was ich falsch 
mache.

Danke im Vorraus






#include <p18f44k22.h>
#include <stdio.h>

#pragma config FOSC = ECHPIO6, WDTEN = OFF, PBADEN = OFF, LVP = OFF, 
PWRTEN = OFF, XINST = OFF

 void UART_setup(void){

SPBRG = 20;        // Baudrate 57600 Baud  SPBRG- Berechnung  59524 = 
20000000/(16*(20+1)) = Fehlerquote unter 5%
 SPBRGH =  0;

 TXSTAbits.BRGH = 1; // high data rate for sending
 RCSTAbits.SPEN = 1; // enable serial port pins
 TXSTAbits.SYNC = 0;  // Asynchron
 TXSTAbits.TX9  = 0; // 8-bit transmission
 TXSTAbits.TXEN = 1; // enable the transmitter
 RCSTAbits.RX9 = 0;// 8-bit reception
 }

 //-----------------------------------------------------
 // writes a character to the serial port
 void putChar(unsigned char ch){

unsigned char string;

string = ch;

while(!PIR1bits.TXIF){

TXREG=string;
 }
  }

 //-----------------------------------------------------
 void main(void){

unsigned char charRx;



 TRISC = 0b10000000;



UART_setup();
 while(1){


putChar('d');

 }
 }

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>while(!PIR1bits.TXIF)
>{
>
>TXREG=string;
> }

Solange senden nicht fertig immer schön
weiter Daten in TXREG schreiben.

Vollspacke;)

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.