社区导航

 
查看: 709|回复: 6

[求助] 哪位大侠解释一下这段代码是啥意思啊

[复制链接]

10

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2017-12-7 16:00:00 | 显示全部楼层 |阅读模式
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);
}

此帖出自stm32/stm8论坛


回复

使用道具 举报

3256

TA的帖子

0

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-12-7 16:47:16 | 显示全部楼层
第一段是个宏函数,调试的时候用到。
关于dr第九位数据,你看看手册上有说。
多数情况没有用。


回复

使用道具 举报

1万

TA的帖子

15

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-12-7 19:22:45 | 显示全部楼层
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);
}

说得很明白了,第一个是断言,第二个是收数据
http://shop34182318.taobao.com/


回复

使用道具 举报

3515

TA的帖子

11

TA的资源

五彩晶圆(高级)

Rank: 9Rank: 9Rank: 9

发表于 2017-12-8 10:20:30 | 显示全部楼层
assert_param,检查你传递给函数的参数是否正确。
return (uint16_t)(USARTx->DR & (uint16_t)0x01FF); 读取串口接收数据寄存器的值。并返回该值。去看串口部分的寄存器说明,不难理解。


回复

使用道具 举报

10

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

 楼主| 发表于 2017-12-8 11:03:37 | 显示全部楼层
ienglgge 发表于 2017-12-8 10:20
assert_param,检查你传递给函数的参数是否正确。
return (uint16_t)(USARTx->DR & (uint16_t)0x01FF);  ...

那是返回uint16_t这种类型的值么?

点评

是的,(USARTx->DR & (uint16_t)0x01FF),算完的值,强制转成uint16_t,返回。  详情 回复 发表于 2017-12-8 17:14


回复

使用道具 举报

3515

TA的帖子

11

TA的资源

五彩晶圆(高级)

Rank: 9Rank: 9Rank: 9

发表于 2017-12-8 17:14:22 | 显示全部楼层
mr940427 发表于 2017-12-8 11:03
那是返回uint16_t这种类型的值么?

是的,(USARTx->DR & (uint16_t)0x01FF),算完的值,强制转成uint16_t,返回。


回复

使用道具 举报

32

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2018-9-13 11:11:18 | 显示全部楼层

mr940427 发表于 2017-12-8 11:03
那是返回uint16_t这种类型的值么?

是的,(USARTx->DR & (uint16_t)0x01FF),算完的值,强制转成uint16_t,返回。


回复

使用道具 举报

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

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2018-10-19 14:24 , Processed in 0.225268 second(s), 16 queries , Gzip On, MemCache On.

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