卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

如何利用DSP28335通過I2C外接EEPROM存取數(shù)據(jù)

隨著嵌入式系統(tǒng)的發(fā)展,參數(shù)配置在運行時變得越來越常見。為了防止因掉電導(dǎo)致數(shù)據(jù)丟失,存儲這些參數(shù)非常重要。在DSP28335中,可以通過外接I2C EEPROM來實現(xiàn)這一功能。使用AT24C08作為例子

隨著嵌入式系統(tǒng)的發(fā)展,參數(shù)配置在運行時變得越來越常見。為了防止因掉電導(dǎo)致數(shù)據(jù)丟失,存儲這些參數(shù)非常重要。在DSP28335中,可以通過外接I2C EEPROM來實現(xiàn)這一功能。

使用AT24C08作為例子,本文將介紹如何通過DSP28335和I2C總線讀寫EEPROM數(shù)據(jù)。

第一步:連接控制板和EEPROM

首先,我們需要將AT24C08連接到DSP28335控制板上。根據(jù)datasheet,AT24C08的原理圖及引腳如下:

注意上面原理圖接法的設(shè)備地址,A0、A1、A2均為0(也可以其它設(shè)置),所以其地址為1010000X(其中,根據(jù)R/W的區(qū)別選擇1/0)。

根據(jù)AT24C08原理圖,我們可以將其與DSP28335控制板進行連接,接線圖如下:

第二步:I2C傳輸數(shù)據(jù)

I2C是一種串行通信協(xié)議,能夠同時連接多個設(shè)備。在開始傳輸數(shù)據(jù)之前,需要發(fā)送啟動條件。在數(shù)據(jù)傳輸過程中,時鐘信號為高電平時,數(shù)據(jù)線上的數(shù)據(jù)必須保持穩(wěn)定。只有在時鐘線上的信號為低電平時,數(shù)據(jù)線上的高電平或低電平狀態(tài)才允許變化。

對于寫數(shù)據(jù)操作,我們需要按照以下代碼進行數(shù)據(jù)傳輸:

在SCL低電平時,修改SDA數(shù)據(jù)到EEPROM。

寫單個存儲字節(jié)到EEPROM中。

對于讀數(shù)據(jù)操作,我們需要按照以下代碼進行數(shù)據(jù)傳輸:

寫入設(shè)備地址及需要讀取數(shù)據(jù)的存儲地址。

重新生成起始條件。

讀取單個存儲字節(jié),需要讀兩次。

在最后一次讀取結(jié)束后,生成停止條件。

第三步:程序代碼實現(xiàn)

根據(jù)以上知識,我們可以編寫相應(yīng)的程序代碼。首先,定義一個全局參數(shù)數(shù)組,包含三個變量,第一次運行到如下所示位置,讀出之前保存在EEPROM里的數(shù)據(jù):

然后,我們可以將TranBuf的三個數(shù)據(jù)寫入EEPROM中,并在掉電后重新上電,再次運行程序,讀出更新后的參數(shù)。

最后,程序代碼如下:

結(jié)論

通過以上步驟,我們可以輕松地利用DSP28335通過I2C外接EEPROM存儲數(shù)據(jù)。這對于運行時需要參數(shù)配置的嵌入式系統(tǒng)而言非常重要。

標簽: