rs485txd.c
来自「基于51单片机」· C语言 代码 · 共 36 行
C
36 行
/***********************************************
主机
**********************************************/
#include<reg52.h>
#define uchar unsigned char
sbit led = P1^0;
sbit EN = P1^1;
uchar code uart_table[]={0x04,0x00,0x11,0x22,0x33
}; //第一个数是发射字节长度
void delay(uchar x)
{
while(x--);
}
void main (void)
{
uchar i;
SCON = 0x50; /* uart in mode 1 (8 bit), REN=1 */
TMOD = TMOD | 0x20 ; /* Timer 1 in mode 2 */
TH1 = 0xFD; /* 9600 Bds at 11.059MHz */
TL1 = 0xFD; /* 9600 Bds at 11.059MHz */
IE =0x90;
TR1 = 1; /* Timer 1 run */
EN = 1; /* RS-485 enable,'0'--RX enable; '1'--TX disable */
while(1)
{ for(i=0;i<5;i++) //sent bytes
{
SBUF=uart_table[i];
while(TI==0);
TI=0;
}
led = 0; //发送完点亮灯
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?