小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

利用Proteus仿真51單片機(jī)IO口模擬IIC總線協(xié)議

 昵稱8101403 2011-11-17

I2C總線是Philips公司提出的一種集成電路IC器件之間相連接的總線協(xié)議,其目的是使電子系統(tǒng)(不只限于單片機(jī)系統(tǒng))各個(gè)IC器件之間的連線變得容易。因?yàn)槭褂脗鹘y(tǒng)的并行總線在IC器件之間連接,往往會(huì)使得IC之間連線較多,顯得非常復(fù)雜。而I2C總線則使IC器件之間只需SDASCL兩條連線就可以傳送數(shù)據(jù),因而十分方便。由于I2C在印刷體中不容易書寫(需要上標(biāo)),所以實(shí)際書寫時(shí),還常見到IICI2C等書寫方法,本文采用IIC的寫法,敬請(qǐng)注意。關(guān)于IIC總線的知識(shí),請(qǐng)參閱相關(guān)書籍,此處不再做進(jìn)一步介紹。

下面我們用一個(gè)使用IIC總線連接器件的例子來簡單說明IIC總線的仿真。

.EEPROM24C02是采用IIC接口的一種常用2Kbit256×8bit)的存儲(chǔ)器。編寫程序使用AT89C51IO口模擬實(shí)現(xiàn)IIC總線協(xié)議進(jìn)行通信,并向24C02存儲(chǔ)器內(nèi)從字節(jié)0到字節(jié)FF寫入數(shù)字0FF。

51系列單片機(jī)本身沒有IIC接口,但一些本身具有IIC接口的單片機(jī)往往是高端產(chǎn)品,一方面價(jià)格不菲,另一方面我們的系統(tǒng)也沒有必要使用之。通常我們就使用軟件通過51系列單片機(jī)的IO口來模擬實(shí)現(xiàn)IIC總線通信。

本例事實(shí)上比較簡單,但需要對(duì)IIC總線時(shí)序有較好的理解。源文件如下圖所示(采用C51語言編寫):

Keil中編輯好源文件以后,接下來就可以建立工程文件并生成相應(yīng)的源代碼了,然后我們來繪制電路圖。

此例的電路圖極其簡單。只需兩個(gè)IC,即AT89C5124C02C,和兩個(gè)上拉電阻,而且上拉電阻還可以省略。至于連接,就更為簡單了。最后得到繪制好的電路圖如下圖所示:

繪制好電路圖,我們就可以將前面剛剛生成的程序源代碼裝入單片機(jī)了,裝入以后,下面我們就可以來進(jìn)行仿真了。

首先點(diǎn)擊仿真按鈕,系統(tǒng)沒有什么反映,只有高低電平變化的顏色。我們要想查看結(jié)果,還要用前文中仿真擴(kuò)展RAM存儲(chǔ)器的方法,先點(diǎn)擊暫停,然后點(diǎn)擊“Debug”菜單下的“I2C Memory Internal Memory – U2”子菜單來打開U2EEPROM存儲(chǔ)器24C02C的內(nèi)容窗口“I2C Memory Internal Memory – U2”,然后我們就看到了其中的內(nèi)容,也就是我們仿真程序的結(jié)果。如下圖所示:

從圖中我們能清楚地看到我們的仿真結(jié)果,程序完全正確地執(zhí)行了我們的命令。

當(dāng)然,如果你過早地點(diǎn)擊了暫停按鈕,那么你得到的結(jié)果可能和上圖略有不同,那可能是因?yàn)槌绦蛏形磮?zhí)行完畢。此時(shí)你可以繼續(xù)點(diǎn)擊運(yùn)行按鈕,或者點(diǎn)擊單步按鈕來仔細(xì)查看程序執(zhí)行過程中24C02C存儲(chǔ)器內(nèi)容的改變情況。

轉(zhuǎn)自:http://hi.baidu.com/deeepsea/blog/item/84ffdb0074b8b713728b655b.html

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多