打印

请教一下各位大侠 函数参数调用问题

[复制链接]
1738|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
abtc1130|  楼主 | 2012-12-26 12:23 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
最近本菜鸟开始学习32!今天在写流水灯时有个问题一直没搞明白!在这请教下各位

为什么在调用使能时钟函数RCC_APB2PeriphClockCmd时能再里面同时输入2个GPIO参数!
如RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOD,ENABLE);

但是GPIO初始化时!GPIO_Init()不能同时输入2个参数!如果同时输入就会报错
GPIO_Init(GPIOA|GPIOD,&GPIO_InitStructure);               //这样会报错

想要初始化2个不同GPIO就只能写2条
        GPIO_Init(GPIOA,&GPIO_InitStructure);
        GPIO_Init(GPIOD,&GPIO_InitStructure);
沙发
abtc1130|  楼主 | 2012-12-26 12:26 | 只看该作者
这是我写的GPIO初始化程序!

QQ截图20121226115833.png (18.03 KB )

QQ截图20121226115833.png

使用特权

评论回复
板凳
huangxz| | 2012-12-26 14:33 | 只看该作者
void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct)
第一个参数是指针啊,怎么可以|啊

使用特权

评论回复
地板
uet_cache| | 2012-12-26 15:10 | 只看该作者
时钟配置函数,那个是或的关系,或后送到相同的寄存器。后面是IO配置,每个GPIO是独立的寄存器,不能进行或处理,当然要一个IO一个IO的赋值了。这样讲,可明白?

使用特权

评论回复
5
abtc1130|  楼主 | 2012-12-26 22:40 | 只看该作者
uet_cache 发表于 2012-12-26 15:10
时钟配置函数,那个是或的关系,或后送到相同的寄存器。后面是IO配置,每个GPIO是独立的寄存器,不能进行或 ...

:o嗯!明白了!以前C和数据结构没学好!51还好!现在学32看着各种指针和数据结构就有点吃力

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

36

帖子

0

粉丝