那位大哥能給個(gè)CH452示例程序?

那位大哥能給個(gè)msp430的CH452示例程序,我有c51的,但一些地方看不懂,例如: unsigned char CH452_Read() //讀取按鍵 { unsigned char key; CH452_I2c_Start(); /*啟動(dòng)總線*/ CH452_I2c_WrByte(0x6F); // 若有兩個(gè)CH452并連,當(dāng)ADDR=0時(shí),此值為0x4F key=CH452_I2c_RdByte(); /*讀取數(shù)據(jù)*/ CH452_I2c_Stop(); /*結(jié)束總線*/ return(key); } 中CH452_I2c_WrByte(0x6F); 為什么要寫(xiě)入0x6F?我在datasheet中也沒(méi)有找到此地址的具體意義,有沒(méi)有更詳細(xì)的datasheet?


熱門(mén)產(chǎn)品 : CH641: PD及無(wú)線充電專用MCU

是這樣的,手冊(cè)中有提到兩個(gè)CH452并聯(lián)在一起的時(shí)候的地址發(fā)送地址的情況,您具體可以看一下時(shí)續(xù)圖,DA0和DA1分別是0 1,B11-B8分別是 0 1 1 1,R/W在讀的時(shí)候?yàn)?1 1.當(dāng)ADDR=0時(shí),CH452的地址是 0 1 0 0 1 1 1 1 ,即0X4F; 2.當(dāng)ADDR=1時(shí),CH452的地址是 0 1 1 0 1 1 1 1 ,既0X6F;


多謝“下雨的天” 還有這兩句不明白: CH452_I2c_WrByte(((unsigned char)(command>>7)&0x3E)|0x60); CH452_I2c_WrByte((unsigned char)command); 這不是輸出16位么?但我查了一下,一共是17位呀(難道I2C設(shè)備回送應(yīng)答位不用輸出么?) 再說(shuō)command作為操作碼應(yīng)該是12位,怎么能用CH452_I2c_WrByte函數(shù)?(這個(gè)函數(shù)不是只能寫(xiě)8位么) 我的qq:26991361,高手加我一下吧,問(wèn)起來(lái)更方便。


是這樣的,這兩條語(yǔ)句是出現(xiàn)在寫(xiě)命令的時(shí)候的,我們這樣寫(xiě)的目的是讓程序看起來(lái)更清爽. 您說(shuō)的沒(méi)有錯(cuò),這是發(fā)送16個(gè)位的,命令也是12位的,其中也包含了我剛才對(duì)您說(shuō)你設(shè)備地址的問(wèn)題,這樣加起來(lái)就正好2個(gè)字節(jié)! 如果您還是有點(diǎn)疑惑,那您也可以這樣做: 1.Start IIC 2.發(fā)送設(shè)備地址和命令高4位 3.發(fā)送命令低8位. 4.Stop IIC


(1)CH452的命令為12位,在實(shí)際的發(fā)送過(guò)程中,這個(gè)12個(gè)位被分成兩部分處理:高4位和低8位,其中高4位與命令標(biāo)識(shí)位(DA0,DA1),地址位(ADDR),讀寫(xiě)位(R/W)通過(guò)CH452_I2c_WrByte(((unsigned char)(command>>7)&0x3E)|0x60)組成一個(gè)字節(jié)并發(fā)送給CH452,低8位自成一個(gè)字節(jié)通過(guò)CH452_I2c_WrByte((unsigned char)command)發(fā)送CH452,這樣總共是2個(gè)字節(jié) (2)關(guān)于應(yīng)答位,CH452本身不會(huì)發(fā)出應(yīng)答位,也不接收應(yīng)答位,只是兼容I2C時(shí)序,并不完全遵循該協(xié)議


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频