|
这的break是应该放到括号外面来吧?
发送应该是没有问题,在串口调试助手上可以看到单片机发送出来的一串正确的数,有点疑问就是,如果从串口调试器上发出来的一串数,数与数之间有多大的时间间隔呢?
在单片机与pc相连的时候,单片机可以接收pc的返回值反馈接收正确,不知道这能不能说明接收中断程序是对的呢?
有人还提出一种可能,就是我单片机的波特率在19200上有点偏差,指纹模块也是有点偏差,而他们的偏差又恰恰相反,可能会影响通信,请问这种说法有道理吗?我怎么调整这其中的偏差呢?
void init_serialcomm( void )
{
SCON = 0x50 ; //SCON: serail mode 1, 8-bit UART, enable ucvr 字串8
TMOD = 0x20 ; //TMOD: timer 1, mode 2, 8-bit reload
PCON = 0x80 ; //SMOD=1;
TH1 = 0xFA;
TL1 = 0XFA; //Baud:19200
EA=1 ; //Enable Serial Interrupt
ES=1;
TR1 = 1 ;
}
初始值稍微改变一个数就是另外一个波特率了,我该怎么调整偏差呢?
|
|