天嵌 ARM开发社区

 找回密码
 注册
查看: 1974|回复: 9

串口通信问题

[复制链接]
long0702 发表于 2012-11-21 13:30:03 | 显示全部楼层 |阅读模式
在TQ2440_test中,使用函数Uart_SendByte(0x0a),预期发送0x0a,结果发送0x0d,0x0a 两个数据?
embedsky_lhh 发表于 2012-11-21 16:09:10 | 显示全部楼层
逻辑下面不会出现这种问题的,你仔细看下代码,
 楼主| long0702 发表于 2012-11-21 16:24:43 | 显示全部楼层
embedsky_lhh 发表于 2012-11-21 16:09
逻辑下面不会出现这种问题的,你仔细看下代码,

“逻辑下面”什么意思?

我在main.c中添加了
Lcd_TFT_Init() ;                // LCD initial
download_run=1; //The default menu is the Download & Run mode.  
Uart_Init( 0,115200 );
     while(1)
     {
      for(data=0;data<=0xff;data++)
      Uart_SendByte(data);
      }
预期收到的结果是0x00-0xFF,
但是收到的结果是0x00,0x01,..0x09,0x0D,0x0A,0x0B..,
多了个0x0D
zhanzhp 发表于 2012-11-21 22:24:53 | 显示全部楼层
是否会是串口收到干扰了
 楼主| long0702 发表于 2012-11-22 08:32:59 | 显示全部楼层
zhanzhp 发表于 2012-11-21 22:24
是否会是串口收到干扰了

我也这么想过,但是发送其它数据就没有任何问题,就0x0A有问题。
TQ-ZQL 发表于 2012-11-22 09:20:11 | 显示全部楼层
本帖最后由 TQ-ZQL 于 2012-11-22 09:20 编辑

只要看下这个函数定义就知道了。Uart_SendByte
 楼主| long0702 发表于 2012-11-22 12:27:35 | 显示全部楼层
TQ-ZQL 发表于 2012-11-22 09:20
只要看下这个函数定义就知道了。Uart_SendByte

???是参数是int的缘故吗?求详解。。。
 楼主| long0702 发表于 2012-11-22 16:01:24 | 显示全部楼层
TQ-ZQL 发表于 2012-11-22 09:20
只要看下这个函数定义就知道了。Uart_SendByte

:),知道问题在哪儿,谢谢。。。
TQ-ZQL 发表于 2012-11-22 18:01:04 | 显示全部楼层
static void Uart0_SendByte(int data)
{
    if(data == '\n')
    {
        while(!(rUTRSTAT0 & (1 << 2)));//等待发送完成
      rUTXH0 = '\r';
    }
    while(!(rUTRSTAT0 & (1 << 2)));   
     rUTXH0 = data  ;   
}
这不是说是如果有发\n的话会自动加多一具\r吗?
zhanzhp 发表于 2012-11-22 19:29:33 | 显示全部楼层
long0702 发表于 2012-11-22 16:01
,知道问题在哪儿,谢谢。。。

问题在哪?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号-2 )

GMT+8, 2024-9-28 05:30 , Processed in 1.037150 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表