OpenEdv-开源电子网

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

对寄存器操作的问题

[复制链接]

8

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2015-3-13
在线时间
8 小时
发表于 2015-4-3 15:31:04 | 显示全部楼层 |阅读模式
5金钱
#define SCCB_SDA_IN()  {GPIOD->MODER&=~(3<<(7*2));GPIOD->MODER|=0<<7*2;} //PD7 输入
#define SCCB_SDA_OUT() {GPIOD->MODER&=~(3<<(7*2));GPIOD->MODER|=1<<7*2;} //PD7 输出

求高手说详细一点,现在可以理解到是对GPIOD的MODER寄存器进行操作,将3左移7*2位,即对pin7进行操作,再向后就不明白了,望高手们指导!!!

最佳答案

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

简化就是这样。 要学会看代码。 楼主去找MODER的寄存器描述看看,再结合代码看,就知道为什么了。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2015-4-3 15:31:05 | 显示全部楼层
简化就是这样。
要学会看代码。
楼主去找MODER的寄存器描述看看,再结合代码看,就知道为什么了。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

28

主题

1489

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1656
金钱
1656
注册时间
2013-7-24
在线时间
1 小时
发表于 2015-4-3 16:05:43 | 显示全部楼层
可读性确实差,全是数。x2是因为每Pin使用2bits。
于20150522停用该账号:http://www.microstar.club
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-24 12:24

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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