<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設計應用 > 帶RTC的I2C總線(xiàn)鐵電存儲器FM31256的設計

帶RTC的I2C總線(xiàn)鐵電存儲器FM31256的設計

作者: 時(shí)間:2018-08-28 來(lái)源:網(wǎng)絡(luò ) 收藏

本文引用地址:http://dyxdggzs.com/article/201808/387851.htm

圖2 I2C總線(xiàn)通信基本格式

嚴格按I2C總線(xiàn)的時(shí)序和數據格式操作,其訪(fǎng)問(wèn)操作過(guò)程可描述為如下步驟: 啟動(dòng)—從機地址—應答—目標地址—應答—(啟動(dòng)—從機地址—應答)—數據(單或多字節)—應答—停止(注: 從機地址中包含了讀寫(xiě)命令;括號中的步驟為當前地址讀和連續地址讀命令所特有的)。這里對應答信號作些說(shuō)明。應答脈沖發(fā)生在第8個(gè)數據位傳送之后。在這個(gè)狀態(tài)下,發(fā)送方須釋放SDA讓接收方驅動(dòng);當接收方發(fā)出低電平時(shí),表示正常應答,當發(fā)出高電平時(shí),表示無(wú)應答。不應答有兩種情況: 一是數據傳送出錯,無(wú)應答使發(fā)送方終止當前操作,以便重新尋址;二是接收方有意不作應答,以結束當前操作。

在對SFR操作時(shí),首先發(fā)送的命令字節為“1 1 0 1 X A1 A0 R/W”,目標地址為單字節范圍(00H~18H)。的32 KB存儲單元地址為0000H~7FFFH,對其進(jìn)行操作時(shí),首先發(fā)送的命令字節為“1 0 1 0 X A1 A0 R/W”,目標地址長(cháng)度為雙字節,即RAM區的尋址能力為0~65 535。FM31系列存儲器具有內部地址鎖存和自動(dòng)累加功能,當對連續地址區進(jìn)行讀/寫(xiě)操作時(shí),只須發(fā)送存儲區首地址。

3 在電磁鑄軋電源控制中的應用

將FM31256應用在電磁鑄軋電源控制裝置當中,實(shí)現主控系統的看門(mén)狗復位、給定參數、實(shí)時(shí)時(shí)鐘及故障記錄保存的功能。

作為一種解決微處理器因干擾而死機問(wèn)題的有效方法,看門(mén)狗的作用是必不可少的。針對控制對象,需要對A、B、C三相控制裝置進(jìn)行調節,包括設定正弦波的頻率和幅值、反饋系數、PID參數、過(guò)流延時(shí)、開(kāi)放延時(shí)和關(guān)斷延時(shí)等;將這些給定的參數及時(shí)寫(xiě)入鐵電存儲器FM31256的存儲單元中,使之掉電后仍能保存。當系統發(fā)生故障時(shí),例如控制裝置中晶閘管周?chē)鷾囟瘸^(guò)額定溫度,裝置就會(huì )發(fā)出報警信號,并將發(fā)生故障的準確時(shí)間、實(shí)際溫度值記錄在FM31256的存儲單元中,以便系統查詢(xún);同時(shí),FM31256的事件計數器加1計數。同樣,利用串行標識區可鎖定的功能,可將電磁鑄軋電源控制裝置的序列號寫(xiě)入其中,非常安全可靠。

3.1 硬件原理

電磁鑄軋電源控制裝置應用FM31256的硬件接口電路如圖3所示。從圖3中可以看出,系統以超低功耗MSP430系列芯片MSP430F149作為控制器;FM31256作為參數存儲單元,與處理器之間采用I2C總線(xiàn)進(jìn)行通信。由于MSP430F149沒(méi)有I2C總線(xiàn)接口,所以任取2個(gè)I/O口模擬。實(shí)時(shí)時(shí)鐘在VDD掉電以后自動(dòng)切換到后備電源VBAK。

圖3 FM31256與MSP430F149的硬件接口電路

32.768 kHz晶振等效于6 pF電容。若將SFR的01H單元對應的OSCEN位設為0,同時(shí)置00H單元的CAL位為1,使CAL引腳輸出512 Hz的脈沖信號,則可檢測晶振工作是否正常,因為512 Hz是晶振頻率的64分頻。制PCB板時(shí)須注意: X1和X2晶振引腳均為高阻引腳,兩引腳之間的距離須小于5 mm;即使信號位于板內層,也不允許信號線(xiàn)靠近X1和X2引腳。在晶振引腳周?chē)褂媒拥乇Wo環(huán),內部或板反面使用接地保護敷銅。

3.2 存儲區訪(fǎng)問(wèn)程序設計

對FM31256存儲器訪(fǎng)問(wèn)操作過(guò)程中,微處理器處于主機地位,器件始終處于從機地位。根據上述對FM31256的分析,可以把所有的通信過(guò)程歸納為3種類(lèi)型: ① 單脈沖,如Start、Stop、Ack、Nack;② 字節發(fā)送,如從機地址、目標地址和數據傳送;③ 字節接收,如讀操作中的數據傳送。因此只要把這些操作以子程序的形式編寫(xiě)好,所有的通信操作就可通過(guò)調用這些子程序來(lái)完成。這里以MSP430F149微處理器的嵌入式C語(yǔ)言編寫(xiě)。設微處理器端口P6.6為數據線(xiàn)(SDA);P5.4為時(shí)鐘線(xiàn)(SCL)。

限于篇幅,本文不作詳細介紹,只給出模擬I2C總線(xiàn)及字節寫(xiě)入、讀出的部分C語(yǔ)言程序:

#defineRTC_SDABIT6

#defineRTC_SCLBIT4

void FM31256_Start(void) {/*FM31256啟動(dòng)程序*/

P6OUT |=RTC_SDA;// SDA=1

P5OUT |=RTC_SCL;// SCL=1

delay(IIC_DELAY);

P6OUT =~ RTC_SDA;// SDA=0

delay(IIC_DELAY);

P5OUT =~ RTC_SCL;// SCL=0}

void FM31256_Stop( void ) {/*FM31256停止程序*/

P6OUT =~ RTC_SDA;// SDA=0

delay(IIC_DELAY);

P5OUT |=RTC_SCL;// SCL=1

delay(IIC_DELAY);

P6OUT |=RTC_SDA;// SDA=1

delay(IIC_DELAY);}

void FM31256_Send_Ack( void ) {/*FM31256應答程序*/

P5OUT =~ RTC_SCL;// SCL=0

P6OUT =~ RTC_SDA;// SDA=0



關(guān)鍵詞: FM31256 MSP430單片機

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>