新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于DSP與CPLD的I2C總線接口的設計與實現

        基于DSP與CPLD的I2C總線接口的設計與實現

        作者: 時間:2012-04-14 來源:網絡 收藏

        PCF8583是一款帶有256字節靜態CMOS RAM的時鐘/日歷芯片。地址和數據嚴格按照雙向雙線制I2C總線協議傳輸。內置地址寄存器在每次讀/寫后自動遞增。關于PCF8583的詳細說明請參看參考文獻。

        2.1 系統結構設計

        系統的基本功能是通過CPLD的I2C總線接口完成ADSP21992(主控芯片)與PCF8583的數據交換。系統框圖如圖3所示。

        系統主要由兩個部分組成:一是DSP與CPLD的接口;另一是I2C核。為了能在DSP指定的時刻讀/寫PCF8583的數據,使用DSP的讀寫信號、同步時鐘和最高位地址控制數據的傳輸。最高位地址作為控制信號是因為DSP的I/O口比較少,必須優先供應給其它外設,因此用它來產生DSP提供給I2C核的片選信號。而DSP的地址總線位數較多,最高位一般使用不到,這樣正好可以充分利用資源。

        2.2 I2C核

        I2C核原理示意圖如圖4所示。

        整個I2C核由控制模塊和I/O模塊構成。其中,控制模塊包括控制信號發生部分和時鐘開關,I/O模塊包括數據緩存和同步時鐘緩存。

        當DSP的最高地址位出現一個有效信號時,便會使I2C核內的觸發器產生一個全局使能信號EN它將會啟動時鐘、計數器和其它控制信號,但數據不會出現交換。如果此時DSP的讀/寫同步產生,則會啟動相應的讀/寫進程,進行數據傳輸。

        I2C核的關鍵技術是:

        ①用計數器和全局使能信號EN配合觸發進程。

        由于I2C核的片選信號EN是由觸發產生的,不能象電平信號一樣由DSP的I/O控制,因此只能通過精確的計數器定時和讀/寫使能信號共同判別控制。

        讀/寫使能信號WR_EN/RD_EN也象EN那樣由觸發產生,因此也要用同樣的方法判別。

        ②同步時鐘的產生。

        從圖2中可以看到,數據在同步時鐘的高電平脈沖時必須保持穩定,如果此時發生變化將會被視為一個控制信號,而通信也會被中斷。因此,同步時鐘的高電平脈沖一定要在有效數據的中間出現。而所需的控制信號必須在同步時鐘正脈沖的時候出現。

        ③對數據總線進行三態設置。 因為SDA和DSP_DATA都是雙向數據線,在寫SDA和DSP_DATA的進程中必須設置高阻態,否則會出現數據線狀態"不確定"。



        關鍵詞: DSP CPLD I2C總線

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 武汉市| 峨眉山市| 侯马市| 佛学| 古蔺县| 安塞县| 蛟河市| 桑植县| 南城县| 原阳县| 项城市| 永吉县| 都安| 治县。| 莱州市| 漳州市| 满洲里市| 和平区| 湘阴县| 昌乐县| 湟中县| 徐州市| 留坝县| 武安市| 茌平县| 巫山县| 财经| 抚远县| 崇州市| 绥德县| 青龙| 满城县| 高尔夫| 扎兰屯市| 溆浦县| 鹤峰县| 从化市| 沛县| 定州市| 华阴市| 镇巴县|