做一個MSP430的項目,雖然430內部有硬件I2C的模塊,略難,准備直接移植51的。。碰到一句代碼
dat <<= 1; //移出數據的最高位 pSDA = CY; //送數據口 digitalWrite(pSCL, HIGH); //拉高時鍾線
CY是什么??
百度了一下。。
位 7: CY:進位標志。
當最后一次算術操作產生進位(加法)或借位(減法)時,該位置 1。其它算
術操作將其清 0。
右移時最高位被移入CY。循環移八次,剛好把一字節移完。
意思就是左移的時候溢出后CY會成為1
一次一次發就把8位發完了。。
移植到430上直接dat&0x80取最高位就行就可以無視CY勒。。