社区
单片机/工控
帖子详情
IIC_SDA=(txd&0x80)>>7为什么要右移七位?
jiaobiedeng1738
2017-08-20 09:37:57
以前学51的时候,写的I2C是没有右移七位的,然后现在学STM32的时候看到I2C发送函数里面有右移七位,请问这是怎么回事?
...全文
3077
2
打赏
收藏
IIC_SDA=(txd&0x80)>>7为什么要右移七位?
以前学51的时候,写的I2C是没有右移七位的,然后现在学STM32的时候看到I2C发送函数里面有右移七位,请问这是怎么回事?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ckc
2017-08-20
打赏
举报
回复
把最高位转移到最低位吧 51只能一位一位移动,所以这样做很不合适 也许stm32可以一次性移动7位
tianxj001
2017-08-20
打赏
举报
回复
6
IIC_SDA=(txd&0x80)>>7 没看见其他源代码,这里,txd应该是一个寄存器,&0X08 也就是和0B10000000 逻辑与,也就是结果取最高位,然后右移7位,最高位变成最低位,IIC_SDA是一根串口数据, 这个代码的意思就是把txd 最高位 发送到IIC_SDA。 再看看这个代码,如果是这个目的,貌似IIC_SDA=txd>>7; 就可以了,和0X80做逻辑与好像是多余的哈。
【
IIC
通信】Chap.1(I2C)
IIC
通信原理、
IIC
读写时序详解
IIC
通信以两根连线
SDA
、SCL实现了完善的全双工同步数据传送, 可以方便地构成多机系统和外围器件扩展系统。
STM32
IIC
详解
本文的程序是主控室STM32F207,读取的芯片是PCF8563。各种宏定义和文件会在末尾说明。 1、
IIC
的定义:
IIC
即Inter-Integrated Circuit(集成电路总线),这种总线类型是由飞利浦半导体公司在八十年代初设计出来的一种简单、双向、二线制、同步串行总线,主要是用来连接整体电路(ICS) ,
IIC
是一种多向控制总线,也就是说多个芯片可以连接到同一总线结构下,同...
IIC
通信协议中SCL和
SDA
电平变化
本文重点叙述
IIC
通信时SCL和
SDA
两条线上的电平变化,这其实对应了
IIC
通信的通信协议。本文将利用逻辑分析仪观察
IIC
通信时的通信协议,即SCL和
SDA
两条线上的电平变化。
IIC
协议中
SDA
_IN与
SDA
_OUT理解 IO口寄存器
在学习
IIC
协议时,看到以下代码,查阅资料,自己理解了一下: #define
SDA
_IN() {GPIOB->CRL&=0X0FFFFFFF;GPIOB->CRL|=(u32)8<<28;} #define
SDA
_OUT() {GPIOB->CRL&=0X0FFFFFFF;GPIOB->CRL|=(u32)3<<28;} 首...
if(input &
0x80
)在I2C中是怎么样一步步写入数据的?
input &
0x80
判断真假过程 我们先放一段if(input &
0x80
)在I2C写字节的代码 /************************************************ *函数名称 : void I2C_WriteByte *功 能 : I2C写一个字节 *参 数 : dat:传输数据 *返 回 值 : 无 **************...
单片机/工控
27,522
社区成员
28,798
社区内容
发帖
与我相关
我的任务
单片机/工控
硬件/嵌入开发 单片机/工控
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章