找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2060|回復(fù): 8
打印 上一主題 下一主題
收起左側(cè)

C語(yǔ)言中位操作問(wèn)題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:329253 發(fā)表于 2018-5-25 00:00 來(lái)自觸屏版 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
這個(gè)EEPROM的程序里邊,讀操作這個(gè)dat|=I2C_SDA是怎么回事?麻煩會(huì)的大神給我講講,小弟不勝感激

1527177556791.jpg (86.71 KB, 下載次數(shù): 38)

1527177556791.jpg
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:328769 發(fā)表于 2018-5-25 01:48 來(lái)自觸屏版 | 只看該作者
就是dat=dat或上i2c的數(shù)據(jù)嗯
回復(fù)

使用道具 舉報(bào)

板凳
ID:18297 發(fā)表于 2018-5-25 08:27 | 只看該作者
dat <<1;            //左移一位,
dat|=I2C_SDA;    //dat 或 I2C_SDA,說(shuō)明dat的最低位(0)和I2C_SDA或,相當(dāng)于取了I2C—SDA.
循環(huán)8次,相當(dāng)于取了8次I2C—SDA位,將I2C—SDA的串行發(fā)送的數(shù)字8位取成一個(gè)8位數(shù)。
即讀取了一個(gè)字節(jié)的數(shù)(8位)。
回復(fù)

使用道具 舉報(bào)

地板
ID:337566 發(fā)表于 2018-5-25 08:41 | 只看該作者
加上sda的數(shù)據(jù)啊
回復(fù)

使用道具 舉報(bào)

5#
ID:330198 發(fā)表于 2018-5-25 09:09 | 只看該作者
I2C標(biāo)準(zhǔn)讀取數(shù)據(jù)的流程,在時(shí)鐘線拉高的情況下,數(shù)據(jù)線的高低電平由dat保存,每保存一位dat就左移一位,因?yàn)槭嵌M(jìn)制只能這樣保存數(shù)據(jù)。
回復(fù)

使用道具 舉報(bào)

6#
ID:164602 發(fā)表于 2018-5-25 10:05 | 只看該作者
你寫的這個(gè),是收集位數(shù)據(jù),轉(zhuǎn)換為8位字節(jié)的表達(dá)式。
第一:“或|”運(yùn)算:就是有1得1,全為零才為零。
第二:dat是8位,I2C_SDA是一位。
當(dāng)兩數(shù)據(jù)進(jìn)行或賦值運(yùn)算時(shí),就將SDA的一位數(shù)據(jù),加入到8位的dat低位中,再通過(guò)移位,得到一個(gè)完整的8位數(shù)據(jù)。
回復(fù)

使用道具 舉報(bào)

7#
ID:91114 發(fā)表于 2018-5-25 14:09 | 只看該作者
dat = dat | I2C_SDA;
回復(fù)

使用道具 舉報(bào)

8#
ID:92570 發(fā)表于 2018-5-25 16:19 | 只看該作者
讀取當(dāng)前I2C_SDA上的數(shù)據(jù) (一個(gè)bit讀。
回復(fù)

使用道具 舉報(bào)

9#
ID:284659 發(fā)表于 2018-5-25 17:30 | 只看該作者
和它或,按位或
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表