總線的通信協(xié)議
對(duì)于總線的學(xué)習(xí),了解其通訊協(xié)議是整個(gè)過(guò)程中最關(guān)鍵的一步,所有介紹總線技術(shù)的資料都會(huì)花很大的篇幅來(lái)描述其協(xié)議,特別是ISO/OSI的那七層定義。其實(shí)要了解一種總線的協(xié)議,最主要的就是去了解總線的幀數(shù)據(jù)每一位所代表的特性和意義,總線各節(jié)點(diǎn)間有效數(shù)據(jù)的收發(fā)都是通過(guò)各節(jié)點(diǎn)對(duì)幀數(shù)據(jù)位或段的判斷和確信來(lái)得以實(shí)現(xiàn)。
如圖1所示是常見(jiàn)的I2C總線上傳輸?shù)囊蛔止?jié)數(shù)據(jù)的數(shù)據(jù)幀,其總線形式是由數(shù)據(jù)線SDA和時(shí)鐘SCL構(gòu)成的雙線制串行總線,并接在總線上的電路模塊即可作為發(fā)送器(主機(jī))又可作為接收器(從機(jī))。幀數(shù)據(jù)中除了控制碼(包括從機(jī)標(biāo)識(shí)碼和訪問(wèn)地址碼)與數(shù)據(jù)碼外還包括起始信號(hào)、結(jié)束信號(hào)和應(yīng)答信號(hào)。
起始信號(hào):SCL為高電平時(shí),SDA由高電平向低電平跳變,開(kāi)始傳送數(shù)據(jù)。
控制碼:用來(lái)選澤操作目標(biāo)與對(duì)象,即接通需要控制的電路,確定控制的種類(lèi)對(duì)象。在讀期間,也即SCL時(shí)鐘線處于時(shí)鐘脈沖高電平時(shí),SDA上的數(shù)據(jù)位不會(huì)跳變。
數(shù)據(jù)碼:是主機(jī)向從機(jī)發(fā)送的具體的有用的數(shù)據(jù)(如對(duì)比度、亮度等)和信息。在讀期間,SDA上的數(shù)據(jù)位不會(huì)跳變。
應(yīng)答信號(hào):接收方收到8bit數(shù)據(jù)后,向發(fā)送方發(fā)出特定的低電平。讀/寫(xiě)的方向與其它數(shù)據(jù)位正好相反,也即是由從機(jī)寫(xiě)出該低電平,主機(jī)來(lái)讀取該低電平。
結(jié)束信號(hào):SCL為高電平時(shí),SDA由低電平向高電平跳變表示數(shù)據(jù)幀傳輸結(jié)束。
當(dāng)然不同的總線其數(shù)據(jù)位或段的定義肯定不同,但依據(jù)同樣的原理可以更快的去了解它的協(xié)議的特性和特點(diǎn)。雖然其信息幀的大小不一,但具體的某一數(shù)據(jù)位或數(shù)據(jù)段都類(lèi)似于本文所提及的I2C總線,會(huì)依據(jù)它的協(xié)議的要求來(lái)定義它所達(dá)標(biāo)的意義和功能。
編輯:admin 最后修改時(shí)間:2018-05-08