IIC通讯实验里面的例程:

#define SDA_IN()  {GPIOB->MODER&=~(3<<(9*2));GPIOB->MODER|=0<<9*2;}        //PB9输入模式
#define SDA_OUT() {GPIOB->MODER&=~(3<<(9*2));GPIOB->MODER|=1<<9*2;} //PB9输出模式

不是右移3位

前部分GPIOB->MODER&=~(3<<(9*2));  是将十进制的3(二进制是11)左移(9*2)个位,也就是将16,17位置置为11,然后取反变为00,再和GPIOB->MODER与运算,此时GPIOB->MODER的16,17位变为00。第一句也就是将GPIOB->MODER的16,17位置0.
后部分GPIOB->MODER|=0<<9*2和GPIOB->MODER|=1<<9*2也就是根据参考手册的输入输出给这两个位置赋值,过程和上面是一样的。

应该就是这样吧,,我也是初学,,

3 << 2,则是将数字3左移2位

罪过啊,移位运算符的符、规则没有记清楚,所以就蒙蔽了,在这里记一笔,以后忘记了过来翻翻看看。

IIC实例的SDA_In和SDA_Out的代码理解GPIOB-MODER=~(3(9*2));GPIOB-MODER|=09*2;相关推荐

  1. 正点原子中 IIC 例程中SDA_IN()和SDA_OUT()函数理解

    在学习正点原子IIC例程时遇到SDA_IN()和SDA_OUT()两个端口模式配置函数,代码如下: //IO口方向设置 #define SDA_IN() {GPIOB->MODER&=~ ...

  2. ST官方的IIC实例解析(第一部分)

    ST官方的IIC实例解析 LM75A的管脚描述 输入/输出(引脚属性) 引脚标识 描述 输入 VCC 供电电压 输入 GND 参考地 输入 A2~A0 低3位地址引脚 输入 SDA IIC的数据总线 ...

  3. 正点原子stm32中hal库iic模拟`#define SDA_IN() {GPIOB->MODER=~(3<<(9*2));GPIOB->MODER|=0<<9*2;}` //PB9 输入模式

    正点原子hal库模拟iic中涉及到 #define SDA_IN() {GPIOB->MODER&=~(3<<(9*2));GPIOB->MODER|=0<< ...

  4. java学习 类变量 类方法_这篇文章主要介绍了JAVA类变量及类方法代码实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下类变量(...

    这篇文章主要介绍了JAVA类变量及类方法代码实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 类变量(static) 类变量是该类的所有对象共 ...

  5. php实现轮播图代码,微信小程序实例:轮播图的代码实现与分析

    本篇文章给大家带来的内容是关于微信小程序实例:轮播图的代码实现与分析,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 本文来说说轮播图,最常见的一个轮播图,中间带小圆点,自动轮播. S ...

  6. java斗地主代码_实例解析java如何实现斗地主代码

    实例解析java如何实现斗地主代码 发布时间:2020-07-20 14:41:41 来源:亿速云 阅读:73 作者:小猪 小编这次要给大家分享的是实例解析java如何实现斗地主代码,文章内容丰富,感 ...

  7. js+css实例超漂亮tab切换选项卡代码

    效果图: 代码:切换效果,要点击才能实现. js+css实例超漂亮tab切换选项卡代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Tra ...

  8. (一)基于知识图谱的医疗问答系统(实例+代码理解)保姆级教程

    本篇文章内容来源于刘焕勇老师在Github上的开源项目.https://github.com/liuhuanyong/QASystemOnMedicalKG 如果打不开或者是想要数据集.源码等文件,或 ...

  9. Reverse Attention的代码理解

    目录 前言 1. REA模块的代码实现 2. REA模块在CFF模块中的调用 3. CFF模块在OSFormer中的调用 4.疑问分析 4. 下一步计划 参考 前言 通过溯源Reverse Atten ...

最新文章

  1. Single Shot Multibox Detection (SSD)实战(上)
  2. 将 instance 连接到 first_local_net - 每天5分钟玩转 OpenStack(82)
  3. python图像直方图与直方图均衡化
  4. MetadataType的使用
  5. Mysql5.6.x版本半同步主从复制的开启方法
  6. js延迟加载优化页面响应速度
  7. lua怎么嵌入php,linux下安装php的lua扩展
  8. 2016计算机一级成绩,2016年江苏计算机一级成绩查询_无忧考网.docx
  9. 459-Linux基础(echo)
  10. java excel添加批注
  11. 科研写作之word技巧——首行缩进、图 表 公式 自动编号和引用、子标题细节
  12. php theexcerpt,WordPress:the excerpt(摘要)
  13. TCP粘包/拆包问题
  14. rrpp协议如何修改_RRPP单环
  15. 树状数组(二)——#10115. 「一本通 4.1 例 3」校门外的树
  16. Tile based Rendering 二 tbr and tbdr 优化建议tiled based deferred rendering
  17. python之会动的图片
  18. av_find_best_stream
  19. 测试踩坑:手机号一键登录的手机双卡运营商问题
  20. mysql查询表中不重复数据

热门文章

  1. 网人笔记_拔剑-浆糊的传说_新浪博客
  2. 树莓派实现自动浇花程序
  3. 推荐个网络相册:影墙网络相册(www.ephotowall.com)
  4. 发现电影《神奇遥控器》和美剧《迷失》的男主角长得很像
  5. IDEA集成JProfiler
  6. opencv安装流程及vs一次性封装
  7. 手动更新jar包中的class文件,报java.lang.ClassNotFoundException或java.lang.NoClassDefFoundError问题记录
  8. 用多态来实现U盘,Mp3,移动硬盘和电脑的对接,读取写入数据。
  9. solr分词Analysis
  10. 【全源码及文档】基于JSP和SQL Server实现的网上招标系统