Keil RTX51 Manual page 60

Table of Contents

Advertisement

60
switch
*/
*/
*/
*/
*/
}
}
if
*/
TI = 0;
*/
if (ostart != oend)
*/
*/
*/
*/
*/
6
}
*/
}
}
/*****************************************************************************
*/
/*
*/
/*****************************************************************************
*/
serial_init ()
SCON
*/
TMOD |= 0x20;
*/
TH1
*/
(c)
{
case CTRL_S:
sendstop = 1;
break;
case CTRL_Q:
start_trans = sendstop;
sendstop = 0;
break;
default:
if (istart + ILEN != iend)
inbuf[iend++ & (ILEN-1)] = c;
}
if (itask != 0xFF) isr_send_signal (itask);
break;
(TI
||
start_trans)
if (!sendstop)
{
SBUF
=
outbuf[ostart++
sendfull
=
0;
if (otask != 0xFF)
}
else sendactive = 0;
{
= 0x50;
= 0xf3;
/* if Control+S stop transmission
/* if Control+Q start transmission
/* read all other characters into inbuf
{
/*
if
task
{
/*
/* clear interrupt request flag
{
/* if characters in buffer and
/* if not Control+S received
&
(OLEN-1)];
/*
if
task
isr_send_signal (otask);
/* if all transmitted clear 'sendactive'
serial_init:
initialize
/* mode 1: 8-bit UART, enable receiver
/* timer 1 mode 2: 8-Bit reload
Application Examples
/*
process
character
waiting:
signal
ready
if
transmitter
interrupt
/*
transmit
character
/*
clear
'sendfull'
waiting:
signal
ready
serial
interface
/* reload value 2400 baud
flag

Advertisement

Table of Contents
loading

Table of Contents