Forum: Mikrocontroller und Digitale Elektronik RS232 am XC886CLM 8FF


von Frederic (Gast)


Lesenswert?

Hallo zusammen,

habe bei meinem µC das Problem, dass ich über die emulierte RS232 weder 
Daten empfange noch welche senden kann, bzw. das Telnet das nicht 
richtig anzeigt.

Einstellungen bei Telnet:

Com8
Bits pro Sek: 9600, 8 Datenbits, keine Parität, 1 Stoppbit, keine 
Flussteuerung

hier der quelltext in C:

#include <xc886.h>



//****************************+
void init(void);
void empfang(void);
void send (unsigned char wert);
void wait(void);
extern void adc_init(void);
extern unsigned int adc_in (unsigned char kanal);
extern void lcd_init(void);  // Init LCD
extern void lcd_clr(void);     // LCD Löschen
extern void lcd_byte(char);    // Ausgabe unsigned char  => 3 stellig
extern void lcd_str(char *ptr);// Ausgabe String
extern void lcd_curs(char);  // Cursor setzen
extern void wait_bsy1(void);    // kurz warten
extern void wait_bsy2(void);   // lang warten
extern void asc_out(char);       // Ausgabe eines ASCII Zeichens
extern void lcd_int(unsigned int);  // Ausgabe Int Wert => 4 stellig


//**************************


void main(void)
{
  init();
  while (1)
  {
    send('F');
    wait();
    empfang();
  }
}

//********************************

void wait(void)
{
  unsigned int i;
  for (i=0 ; i<=0xAAAA; i++);
}

//********************************

void init (void)
{
  PORT_PAGE = 0x02;  //PortPage 2 für Alt Select
  P1_ALTSEL1 = 0x02;
  P1_ALTSEL0 = 0x00;
  PORT_PAGE = 0;
  P1_DIR = 0x02; //DIRECTION TXD
  SCON =0x50;
  BCON=0;
  BG=156;
  BCON=0x11;
  lcd_init();
  lcd_clr();
}

//*******************************

void send(unsigned char wert)
{
  SBUF = wert;
  while (TI == 0);
  TI=0;
}

//******************************

void empfang (void)
{
  if (RI==1)
  {
    lcd_curs(10);
    asc_out(SBUF);
    RI=0;
  }
}


Falls jemand eine Lösung weiß bitte melden.


Danke und Gruß,

Frederic

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.