51單片機軟件I2C驅動中的CY


做一個MSP430的項目,雖然430內部有硬件I2C的模塊,略難,准備直接移植51的。。碰到一句代碼

        dat <<= 1;              //移出數據的最高位
        pSDA = CY;               //送數據口
        digitalWrite(pSCL, HIGH);                //拉高時鍾線

CY是什么??

百度了一下。。

位 7: CY:進位標志。 
當最后一次算術操作產生進位(加法)或借位(減法)時,該位置 1。其它算
術操作將其清 0。
右移時最高位被移入CY。循環移八次,剛好把一字節移完。

意思就是左移的時候溢出后CY會成為1

一次一次發就把8位發完了。。

移植到430上直接dat&0x80取最高位就行就可以無視CY勒。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM