![Keil RTX51 Скачать руководство пользователя страница 58](http://html1.mh-extra.com/html/keil/rtx51/rtx51_manual_3913946058.webp)
58
Application Examples
6
#define ILEN 8 /* size of serial receiving buffer
*/
unsigned char istart; /* receiving buffer start index
*/
unsigned char iend; /* receiving buffer end index
*/
idata char inbuf[ILEN]; /* storage for receiving buffer
*/
unsigned char itask = 0xff; /* task number of output task
*/
#define CTRL_Q 0x11 /* Q character code
*/
#define CTRL_S 0x13 /* S character code
*/
bit sendfull; /* flag: marks transmit buffer full
*/
bit sendactive; /* flag: marks transmitter active
*/
bit sendstop; /* flag: marks XOFF character
*/
/*****************************************************************************
*/
/* putbuf: write a character to SBUF or transmission buffer
*/
/*****************************************************************************
*/
putbuf (char c) {
if (!sendfull) { /* transmit only if buffer not full
*/
if (!sendactive && !sendstop) { /* if transmitter not active:
*/
sendactive = 1; /* transfer the first character direct
*/
SBUF = c; /* to SBUF to start transmission
*/
}
else { /* otherwize:
*/
outbuf[oend++ & (OLEN-1)] = c; /* transfer char to transmission buffer
*/
if (((oend ^ ostart) & (OLEN-1)) == 0) sendfull = 1;
} /* set flag if buffer is full
*/
}
}
/*****************************************************************************
*/
/* putchar: interrupt controlled putchar function
*/
/*****************************************************************************
*/
char putchar (char c) {
if (c == '\n') { /* expand new line character:
*/
while (sendfull) { /* wait for transmission buffer empty
*/
Содержание RTX51
Страница 4: ......
Страница 6: ......
Страница 20: ......
Страница 24: ......
Страница 39: ...RTX Tiny 39 4...
Страница 40: ......
Страница 44: ...44 RTX51 Tiny Specifications 5...
Страница 68: ...RTX51 TINY REAL TIME OPERATING SYSTEM User s Guide 2 95...