}
void Initial(void)
{
TMOD=0x21; //T1设置为模式2,波特率=9600,fosc=11.0952MHZ
TL1=0xfd;
TH1=0xfd;
SCON=0x50; //串口设置为模式1,8位UART,波特率=T1溢出率/n
PCON=0x00; //SMOD=0
TCON=0x30; //用T1作为波特率发生?
}
另外,单片机对串口用模式2是一个开始位,8个数据位,一个停止位。VB中MSComm对串口操作是8个数据位,一个停止位,两者之间如何通信。
以下是引用追风者在2003-7-16 10:35:34的发言: 单片机怎样对COM写???我最近做了一个单片机对COM1口写的程序,但是烧了之后,发现计算机不能读出字符,各位大虾可否给点意见。程序如下: #include <reg51.h> void Initial(void); void main(void) { unsigned ch='a'; Initial(); ES=0; SBUF=ch; while(1) { if (TI==1) { TI=0; break; } } ES=1; } |