[技术问答] 请教新唐N76E003串口接收识别问题

[复制链接]
8261|33
liulx1206 发表于 2018-5-21 20:47 | 显示全部楼层
16M时钟使用115200波特率,需要更改时钟到166000
dongnanxibei 发表于 2018-5-22 18:25 | 显示全部楼层
官方的例子里用的全是模式1,你试试官方的例子,看能否正常收发字符串,如果可以就没问题。然后你接收到字符串后判断。
dongnanxibei 发表于 2018-5-22 18:26 | 显示全部楼层
也可以用中断模式,接收到消息中断,然后逐个判断有没有第一次字符,如果有判断第二个,就这么搞。
chongq89 发表于 2018-6-11 16:59 | 显示全部楼层
UINT16 u16CNT=0  改为 UINT8
caoqing 发表于 2018-6-14 16:57 | 显示全部楼层
我也出现这个问题了,请问你们什么解决的???
caoqing 发表于 2018-6-14 16:58 | 显示全部楼层
我也出现这个问题了,请问你们什么解决的???
caoqing 发表于 2018-6-14 17:03 | 显示全部楼层
本帖最后由 caoqing 于 2018-6-14 17:04 编辑

N76E003发送数据全对,N76E003接收就第一个数据是对的,从第二个开始,全错。为什么???
void send_string_com(void)
{
    unsigned int i=0;
    do
    {
        Send_Data_To_UART0(Send);
        i++;
    } while(i < 8);
}

void SerialPort0_ISR(void) interrupt 4
{
          unsigned  char  i;
          for(i=0;i<4;i++)
             {
                     while(RI==0);       
                     clr_RI;
                     UART_BUFFER=SBUF;       
             }
                     switch(UART_BUFFER[2])
                    {
                     case 0X22:send_string_com();riflag =1;break;
                     default :  break;
                                                                                }
}

小灵通2018 发表于 2018-6-14 19:11 | 显示全部楼层
需要修改时钟频率
caoqing 发表于 2018-6-14 19:25 | 显示全部楼层
如何修改,这是厂家的例程稍微改动了一下,关键的波特率没改啊???
caoqing 发表于 2018-6-15 11:20 来自手机 | 显示全部楼层
如何修改,这是厂家的例程稍微改动了一下,关键的波特率没改啊???
caoqing 发表于 2018-6-16 11:06 来自手机 | 显示全部楼层
顶一下
chenwbs 发表于 2018-6-21 15:34 | 显示全部楼层
怎么没有高手过来指点下~我也遇到这问题
yanruiqi 发表于 2018-6-24 17:36 | 显示全部楼层
今天 用官方的例程 基本没有改动,使用UART0 用T1做为波特率发生器,16M主频,9600波特率不断地发同一个字节,经过监测几乎没有误码。
ynl02010 发表于 2020-9-2 09:52 | 显示全部楼层
问一下楼主,该问题解决了吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部