OpenEdv-开源电子网

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

为啥stm32串口接受发送函数中定义的数据位uint16_t,但串口只能接受发送8位数据

[复制链接]

18

主题

54

帖子

0

精华

初级会员

Rank: 2

积分
186
金钱
186
注册时间
2016-2-27
在线时间
39 小时
发表于 2016-3-31 09:09:07 | 显示全部楼层 |阅读模式
5金钱
stm32串口接受发送函数中定义的数据位uint16_t,但串口只能接受发送8位数据,是不是说stm32串口接受发送函数能处理16位数据??????
void USART_SendData(USART_TypeDef* USARTx, uint16_t Data)
{
  /* Check the parameters */
  assert_param(IS_USART_ALL_PERIPH(USARTx));
  assert_param(IS_USART_DATA(Data));

  /* Transmit Data */
  USARTx->DR = (Data & (uint16_t)0x01FF);
}


uint16_t USART_ReceiveData(USART_TypeDef* USARTx)
{
  /* Check the parameters */
  assert_param(IS_USART_ALL_PERIPH(USARTx));

  /* Receive Data */
  return (uint16_t)(USARTx->DR & (uint16_t)0x01FF);
}

最佳答案

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

大概知道樓主要問啥了.... 因為UART不是可以設定Word length 8 or 9bit 那個函式只是為了能兼容設定的9bit的情況 其實你可以把它改成u8 因為從來沒看過要設定9bit的時候...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

60

主题

409

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2814
金钱
2814
注册时间
2012-10-17
在线时间
653 小时
发表于 2016-3-31 09:09:08 | 显示全部楼层
大概知道樓主要問啥了....

因為UART不是可以設定Word length 8 or 9bit

那個函式只是為了能兼容設定的9bit的情況

其實你可以把它改成u8 因為從來沒看過要設定9bit的時候...
回复

使用道具 举报

58

主题

6293

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11475
金钱
11475
注册时间
2014-4-1
在线时间
1297 小时
发表于 2016-3-31 09:23:09 | 显示全部楼层

也能接受32位,
但多余部分一律无视了。


回复

使用道具 举报

18

主题

54

帖子

0

精华

初级会员

Rank: 2

积分
186
金钱
186
注册时间
2016-2-27
在线时间
39 小时
 楼主| 发表于 2016-3-31 11:15:46 | 显示全部楼层
xuande 发表于 2016-3-31 09:23
也能接受32位,
但多余部分一律无视了。

也能接受32位是什么意思??,不是没次只能收到8位数据吗??
回复

使用道具 举报

60

主题

409

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2814
金钱
2814
注册时间
2012-10-17
在线时间
653 小时
发表于 2016-3-31 11:26:42 | 显示全部楼层
因為 USARTx->DR 是從USARTx_BASE後的0x04-0x07

只有前面9個bit有用

所以u16&0x01FF 取前面9個bit
回复

使用道具 举报

58

主题

6293

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11475
金钱
11475
注册时间
2014-4-1
在线时间
1297 小时
发表于 2016-3-31 11:28:10 | 显示全部楼层

和你所说“接收16位数据”是一样意思。
反正多余部分都扔了。


回复

使用道具 举报

0

主题

1

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2015-11-7
在线时间
5 小时
发表于 2016-3-31 15:03:21 | 显示全部楼层
本帖最后由 诺呵呵 于 2016-3-31 15:10 编辑

希望你的问题得到解决

看一下中文参考手册

看一下中文参考手册
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-26 18:07

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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