我的stc12c5a60s2单片机程序用到了两个串口,第二个串口是发送程序中的一个数字 str[0]=0x30+numdat/10; str[1]=0x30+numdat%10;
Print(str);
tab1=str;
然后,我向上位机发送数据的时候会在前边出现 ?和正确的示数,16进制的话就是3F;
这是我的串口初始化
SCON=0x50; //UART方式1:8位UART; REN=1:允许接收
PCON=0x00; //SMOD=0:波特率不加倍
TMOD=0x21; //T1方式2,用于UART波特率
TH1=0xFD;
TL1=0xFD; //UART波特率设置:9600
TR1=1;
TR0=1;// 开定时器0
IT0=0;//中断0低电平中断
IT1=1;//中断1低电平中断
EX0=1;//开中断0
EX1=1;//开中断1
EA=1;
S2CON=0x50;
BRT=0XFD;
IE2=0X01;
AUXR = 0x10; //启动波特率发生器
|