五月天青色头像情侣网名,国产亚洲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...的評論 (共 條)

分享到微博請遵守國家法律
定襄县| 资阳市| 佛学| 新绛县| 临沧市| 徐水县| 昭通市| 那曲县| 广饶县| 安多县| 古浪县| 长春市| 奎屯市| 巨野县| 清苑县| 铜川市| 衡阳市| 青浦区| 东莞市| 济南市| 墨竹工卡县| 霍林郭勒市| 修武县| 叶城县| 海南省| 上高县| 张家界市| 白玉县| 济源市| 吉林市| 屏南县| 淄博市| 峨眉山市| 金山区| 嘉禾县| 长治县| 盐源县| 清流县| 安达市| 汉沽区| 通城县|