久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3304|回復: 8
打印 上一主題 下一主題
收起左側

單片機I2C總線 k=(k>>1)|sda該怎么理解呢?

[復制鏈接]
跳轉到指定樓層
樓主
ID:391847 發表于 2018-11-15 23:33 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
uchar read_byte()//讀取數據
{
請教前輩們個問題
       uchar i,k;
                scl=0;
                delay();
                sda=1;
                delay();
                for(i=0;i<8;i++)
                {
                        scl=1;
                        delay();
                        k=(k<<1)|sda;
                        scl=0;
                        delay();
               
                        
                }
                        return k;//返回值函數
}
k=(k>>1)|sda該怎么理解呢?向各位大神請教,這個是I2C總線讀取一個字節的函數

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:23606 發表于 2018-11-16 09:14 | 只看該作者
scl=1;
                        delay();
                        k=(k<<1)|sda;
                        scl=0;
                        delay();
到底是往哪邊移?
回復

使用道具 舉報

板凳
ID:94031 發表于 2018-11-16 10:39 | 只看該作者
k=(k<<1)|sda;,先把k左移一位然后跟sda相或,結果放到k里。
回復

使用道具 舉報

地板
ID:391847 發表于 2018-11-16 21:36 | 只看該作者
YJGG 發表于 2018-11-16 09:14
scl=1;
                        delay();
                        k=(k

左移一位 然后或
回復

使用道具 舉報

5#
ID:391847 發表于 2018-11-16 21:45 | 只看該作者

我可以理解將K左移一位的值跟這個sda進行或 假如k為0 sda=1;相或為1;當k再次位移時k的低位補0 sda=0時,相或時還是0,即兩次產生的值為10 對嗎?
回復

使用道具 舉報

6#
ID:418425 發表于 2018-11-16 23:38 | 只看該作者
例如:你傳送11010010這個字節,一共8位,你需要一位一位的傳送,k變量初始為00000000,和KDA進行位或運算得11010010,傳送回k,得到字節11010010
回復

使用道具 舉報

7#
ID:391847 發表于 2018-11-17 22:23 | 只看該作者
yf15966844335 發表于 2018-11-16 23:38
例如:你傳送11010010這個字節,一共8位,你需要一位一位的傳送,k變量初始為00000000,和KDA進行位或運算 ...

00000000|11010010  k每左移一位最對位補0 再和我要傳輸最高的值相或對嗎?非常感謝您
回復

使用道具 舉報

8#
ID:448720 發表于 2018-12-24 16:19 | 只看該作者
阿慶永不言棄 發表于 2018-11-17 22:23
00000000|11010010  k每左移一位最對位補0 再和我要傳輸最高的值相或對嗎?非常感謝您

這個要循環8次  那第二次K是多少呢?    大神們請賜教!!!
回復

使用道具 舉報

9#
ID:451718 發表于 2018-12-24 17:36 | 只看該作者
無論k的初值是什么,經過8此左移操作后,k的8位數據都和SDA的輸出數據位相與運算了,也就是循環8次取了SDA的值。
如果你右移,每次SDA的賦值都別下一次覆蓋,最后k的值就只有SDA最后一次的位移賦值了。
詳情,請參考移位賦值的原則。這是C語言的內容。跟51無關。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 免费一级毛片 | 国产91色在线 | 亚洲 | 久久久久久久久久久久久9999 | 成人在线免费视频 | 欧美一级网站 | 欧美一二三区 | 成人av观看 | 中文字幕在线第二页 | 中文字幕av一区二区三区 | 欧州一区二区 | 色吊丝2288sds中文字幕 | 性高湖久久久久久久久3小时 | 337p日本欧洲亚洲大胆 | 国产精品视频网 | 欧美激情精品久久久久久 | 久久777 | 亚洲一区不卡在线 | 一区二区三区欧美在线观看 | 美女久久 | 国产日产久久高清欧美一区 | 亚洲成人网在线播放 | 久久久久久久久久久久久久久久久久久久 | 一级毛片在线看 | 国产区在线观看 | 91精品麻豆日日躁夜夜躁 | 黄色免费网站在线看 | 国产区在线观看 | 91高清视频在线观看 | av国产精品毛片一区二区小说 | 国产美女自拍视频 | 久久亚洲国产精品日日av夜夜 | 一级片子 | 日韩精品免费视频 | 国内精品久久久久久 | 日韩精品一区二区三区中文字幕 | 日韩欧美中文 | 成人精品一区二区三区四区 | 亚洲五码在线 | 天天操天天怕 | 波多野结衣先锋影音 | 日韩欧美三级电影在线观看 |