OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4156|回复: 5

STM32 接收缓冲区和发送缓冲区是同一个地方吗?

[复制链接]

4

主题

37

帖子

0

精华

初级会员

Rank: 2

积分
93
金钱
93
注册时间
2017-1-10
在线时间
28 小时
发表于 2017-1-20 14:33:10 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 zhihuan93 于 2017-1-20 14:43 编辑

使能了接收中断,判断如果收到数据,就点亮led。
然后我把rx的引脚悬空,上电后发现led灯亮了。


我看源码中 USART_SendData()函数和USART_ReceiveData()里面的代码一样,都是往USARTx->DR寄存器里写数据。
为什么我把串口的RX引脚悬空了还能收到数据?接收缓冲区和发送缓冲区是同一个地方吗?




附上代码:
[mw_shl_code=c,true]void USART1_IRQHandler(void)
{
    if (USART_GetITStatus(USART1, USART_IT_RXNE) != RESET)  //判断发生接收中断
    {
                tmp = USART_ReceiveData(USART1); //获取单个字符
                if(tmp)
                {
                        USART_SendData(USART1,tmp); //我想把这个数据打印到uart1串口上,但是什么也没有显示。
                        while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET);//每发送一次都要检查发送完成否   
                        WKUP_PIN(!aa);//led开灯
                }
    USART_ClearITPendingBit(USART1,  USART_IT_RXNE);          //清除中断标志
   }        
}[/mw_shl_code]









最佳答案

查看完整内容[请看2#楼]

是同一个寄存器,不过实际上有2个,接收是RDR,发送是TDR,所以收发可以同时,是全双工的
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2017-1-20 14:33:11 | 显示全部楼层
是同一个寄存器,不过实际上有2个,接收是RDR,发送是TDR,所以收发可以同时,是全双工的
回复

使用道具 举报

4

主题

37

帖子

0

精华

初级会员

Rank: 2

积分
93
金钱
93
注册时间
2017-1-10
在线时间
28 小时
 楼主| 发表于 2017-1-20 15:12:25 | 显示全部楼层
回复

使用道具 举报

15

主题

866

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
7542
金钱
7542
注册时间
2016-11-30
在线时间
642 小时
发表于 2017-1-20 16:01:16 | 显示全部楼层
你的LED灯脚是不是上电默认就是点亮的呢?
回复

使用道具 举报

4

主题

37

帖子

0

精华

初级会员

Rank: 2

积分
93
金钱
93
注册时间
2017-1-10
在线时间
28 小时
 楼主| 发表于 2017-1-21 09:01:43 | 显示全部楼层
lvkanger 发表于 2017-1-20 16:01
你的LED灯脚是不是上电默认就是点亮的呢?

不是啊,默认的是关闭
回复

使用道具 举报

15

主题

866

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
7542
金钱
7542
注册时间
2016-11-30
在线时间
642 小时
发表于 2017-1-21 09:20:19 | 显示全部楼层
zhihuan93 发表于 2017-1-21 09:01
不是啊,默认的是关闭

如果确定了初始设置是灭灯的,而且别的地方也没有开灯,那只能说明程序确实执行到这里了,但是跟发送没什么关系!再仔细审一下代码吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-1 02:22

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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