五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

單片機應(yīng)用實踐篇之單片機IO模擬I2C總線時序按頁寫24C02并顯示在LC...

2023-07-26 19:25 作者:無數(shù)碎片尋你  | 我要投稿

問:if(addr&Page_bye==0) 看不懂這個, 如何判斷出寫了八個字節(jié)呢


答:這一行代碼中的 if(addr&Page_bye==0) 是用來判斷是否已經(jīng)寫入了8個字節(jié)。addr 是當前寫入的地址,Page_bye 是一個宏變量,其值為 0x07。& 是按位與運算符,它將 addr 和 Page_bye 的二進制表示進行按位與運算。

由于 Page_bye 的值為 0x07,它的二進制表示為 00000111。當 addr 的二進制表示的最后三位都為0時,addr & Page_bye 的結(jié)果為0。這意味著 addr 是8的倍數(shù),即已經(jīng)寫入了8個字節(jié)。

因此,當 addr & Page_bye == 0 時,意味著已經(jīng)寫入了8個字節(jié),此時會退出內(nèi)循環(huán)并開始寫入下一頁的數(shù)據(jù)。


問:那么 addr的初值, 是不是有限制了,

答:是的,addr 的初始值會影響這個函數(shù)的行為。addr 是函數(shù)的第二個參數(shù),表示要寫入數(shù)據(jù)的起始地址。如果 addr 的初始值不是8的倍數(shù),那么第一次寫入數(shù)據(jù)時不會寫滿8個字節(jié)。

例如,如果 addr 的初始值為3,那么第一次寫入數(shù)據(jù)時只會寫入5個字節(jié)(地址3、4、5、6和7),然后退出內(nèi)循環(huán)并開始寫入下一頁的數(shù)據(jù)。這是因為當 addr 增加到8時,addr & Page_bye == 0 為真,導(dǎo)致退出內(nèi)循環(huán)。

因此,如果您希望每次都寫滿8個字節(jié),那么應(yīng)該確保 addr 的初始值是8的倍數(shù)。


問:if(addr&Page_bye==0) 這樣做, 是不是相當于 分頁了, 因為這完全是把 256 分成 每頁為 8個字節(jié), 然后很巧妙的 , 按照這個去寫入每頁, 而不是 8 個必須湊成所謂的一頁 , 而是根據(jù)256 這個進行寫入

答:是的,這個函數(shù)會按照頁大?。?個字節(jié))來寫入數(shù)據(jù)。addr & Page_bye == 0 這個條件用來判斷是否已經(jīng)寫滿了一頁。當這個條件為真時,意味著已經(jīng)寫滿了一頁,此時會退出內(nèi)循環(huán)并開始寫入下一頁的數(shù)據(jù)。

這樣做可以確保每次寫入的數(shù)據(jù)都是按照頁大小對齊的。這對于某些I2C設(shè)備來說是很重要的,因為它們要求寫入數(shù)據(jù)時必須按照頁大小對齊。

當然,這并不意味著每次都必須寫滿一頁。如果要寫入的數(shù)據(jù)不足一頁,那么函數(shù)會正常寫入數(shù)據(jù)并返回。只有當要寫入的數(shù)據(jù)超過一頁時,才會按照頁大小對齊來寫入數(shù)據(jù)。


單片機應(yīng)用實踐篇之單片機IO模擬I2C總線時序按頁寫24C02并顯示在LC...的評論 (共 條)

分享到微博請遵守國家法律
鹰潭市| 临朐县| 太原市| 山东省| 渝中区| 东乡县| 兴山县| 新安县| 都昌县| 顺昌县| 泗洪县| 南通市| 青田县| 丰县| 类乌齐县| 秦安县| 霍邱县| 桐庐县| 万安县| 延寿县| 女性| 新疆| 丹巴县| 建始县| 石狮市| 文安县| 巧家县| 桂东县| 慈溪市| 措美县| 新巴尔虎左旗| 汽车| 阳原县| 衡南县| 清流县| 天水市| 基隆市| 青岛市| 新闻| 合山市| 平乡县|