OpenEdv-开源电子网

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

不晓得这段函数啥意思?枚举类型的

[复制链接]

6

主题

50

帖子

0

精华

初级会员

Rank: 2

积分
108
金钱
108
注册时间
2013-12-14
在线时间
4 小时
发表于 2015-7-4 10:13:53 | 显示全部楼层 |阅读模式
5金钱
[mw_shl_code=c,true]typedef enum { GPIO_Speed_10MHz = 1, GPIO_Speed_2MHz, GPIO_Speed_50MHz }GPIOSpeed_TypeDef; #define IS_GPIO_SPEED(SPEED) (((SPEED) == GPIO_Speed_10MHz) || ((SPEED) == GPIO_Speed_2MHz) || \ ((SPEED) == GPIO_Speed_50MHz))[/mw_shl_code]
为什么在库函数中调用GPIO_Speed_10Mhz就能调用他?

最佳答案

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

1,枚举变量      相当于定义       #define GPIO_Speed_10MHz     1      #define GPIO_Speed_2MHz       2      #define GPIO_Speed_50MHz     3 1,带参数的#define       I ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

84

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
214
金钱
214
注册时间
2014-12-29
在线时间
36 小时
发表于 2015-7-4 10:13:54 | 显示全部楼层
1,枚举变量
     相当于定义 
     #define GPIO_Speed_10MHz     1
     #define GPIO_Speed_2MHz       2
     #define GPIO_Speed_50MHz     3

1,带参数的#define
      IS_GPIO_SPEED(SPEED)是判断当前GPIO的速度设定
      例如
      if(IS_GPIO_SPEED(GPIO_Speed_10MHz))
     {
           ;
     }
     相当于
      if(((GPIO_Speed_10MHz) == 1) || ((GPIO_Speed_10MHz) == 2) || ((GPIO_Speed_10MHz) == 3))
     {
           ;
     }
回复

使用道具 举报

12

主题

71

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2015-1-28
在线时间
8 小时
发表于 2015-7-4 10:27:16 | 显示全部楼层
“这段函数”?这里哪里有函数?
这里只是枚举和宏定义。
建议先打好c基础。
持续而安静地投入
回复

使用道具 举报

30

主题

705

帖子

1

精华

新手上路

积分
21
金钱
21
注册时间
2013-3-14
在线时间
52 小时
发表于 2015-7-4 13:52:47 | 显示全部楼层
那个老师讲的遇到“{、}”这哥俩就一定是函数的啊。枚举和宏定义差不多,一般都是全局的。
原子哥是不是又要出黑科技了呀。^_^...
回复

使用道具 举报

6

主题

50

帖子

0

精华

初级会员

Rank: 2

积分
108
金钱
108
注册时间
2013-12-14
在线时间
4 小时
 楼主| 发表于 2015-7-4 14:08:33 | 显示全部楼层
回复【3楼】hhlh2l:
---------------------------------
多谢解答,我找到了,多谢
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-20 13:24

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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