關 閉

        新聞中心

        EEPW首頁 > 安全與國防 > 設計應用 > 用I2C總線擴展I/O

        用I2C總線擴展I/O

        作者: 時間:2004-10-15 來源:電子產品世界 收藏

        2004年6月A版

          在系統應用中,需監控不同的輸入信號或控制幾個輸出信號,有時把這些信號線直接連接到微處理器引腳。這些監控和控制用軟件來做。然而,這種技術需要很多微處理器引腳。

          為了節省微處理器引腳,另一種可采用的方法是通過膠合邏輯接口實現監控和控制線與微處理器的通信。采用這種方法,連接到微處理器引腳的連線較少。而開發這樣的系統比較麻煩和費時,因為需要更多的器件、更多的連線路由或更復雜的碼開發。

          本文給出監控和控制幾個外設信號的良好方案,為接入并行總線提供一簡單經濟的方法,為接口不同的電子器件提供方便的途徑。此方案是基于標準PCF8574和PCF8574A器件基礎上的。這些器件的I2C地址是不同的。在此把這兩種器件當做擴展器。

          這種擴展器具有1個2線I2C通信總線,可與雙向數據傳輸的I2C主機接口。I2C總線由2條信號線和1條地線組成。信號線是雙向串行數據(SDA)線和雙向串行時鐘(SCL)線(見圖1)。SDA和SCL線經上拉電阻連接正電源電壓。在總線閑置時,這兩條信號線上拉為高態。

          連接到I2C總線上的每個器件,根據其功能都具有自己的專門地址,每個器件可做為接收器或發送器。可配置擴展器具有專門的7位地址。PCF8574  7位地址的前4位是0100,而PCF8574A是0111。低3位地址由器件引腳A2、A1、A0設置。因此,器件的完整的專門地址由A2、A1和A0設置。表1示出PCF8574和PCF8574A專門地址的各種可能設置。

          這種為器件設置專門地址的能力使得在同一I2C總線上可具有多達8個PCF8574和8個PCF8574A器件。因為每個器件具有8個I/O引腳,所以采用PCF8574和PCF8574A可使單個I2C總線能控制多達128個I/O。

          I2C與擴展器的通信由主機進行初始化,主機發送與主機通信的從器件的地址位。地址字節的第1部分由4位地址碼組成,對于PCF8574器件設置為0100、PCF8574A器件設置為0111。片選位(A2、A1、A0)跟在地址碼之后。這使得在1個總線上能用多達8個PCF8574和8個PCF8574A并能確定存取那個器件。對于所響應的器件,其地址字節中的片選位必須對應相應A2、A1和A0引腳上的邏輯電平。圖2所示的電路用8個PCF8574和8個PCF8574A器件控制和監視高達128個I/O?!?冰)



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 巨鹿县| 苗栗市| 铁力市| 夏邑县| 松阳县| 历史| 汤阴县| 辽宁省| 泰兴市| 仪陇县| 芮城县| 石家庄市| 霍山县| 竹山县| 桦南县| 卓资县| 肇州县| 龙岩市| 彰武县| 土默特左旗| 普陀区| 凌海市| 会宁县| 堆龙德庆县| 绵阳市| 潜山县| 且末县| 淮阳县| 锦州市| 来宾市| 辽阳市| 嘉鱼县| 武川县| 阳信县| 新和县| 朝阳县| 九龙县| 丰台区| 宁安市| 新密市| 丰都县|