熟女俱乐部五十路二区av,又爽又黄禁片视频1000免费,国产卡一卡二卡三无线乱码新区,中文无码一区二区不卡αv,中文在线中文a

新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 帶RTC的I2C總線鐵電存儲(chǔ)器FM31256的設(shè)計(jì)

帶RTC的I2C總線鐵電存儲(chǔ)器FM31256的設(shè)計(jì)

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

本文引用地址:http://www.bjwjmy.cn/article/201808/387851.htm

P5OUT |=RTC_SCL;// SCL=1

delay(IIC_DELAY);

P5OUT =~ RTC_SCL;// SCL=0}

void _Send_noAck( void ) {/*不應(yīng)答程序*/

P5OUT |=RTC_SCL;// SCL=1

delay(IIC_DELAY);

P5OUT =~ RTC_SCL;// SCL=0}

說(shuō)明:SCL線是高電平時(shí),SDA線從高電平向低電平切換,表示起始條件;當(dāng)SCL是高電平時(shí),SDA線由低電平向高電平切換,表示停止條件。相關(guān)的確認(rèn)時(shí)鐘脈沖由主機(jī)產(chǎn)生,在確認(rèn)的時(shí)鐘脈沖器件發(fā)送方釋放SDA(高電平),在此期間接收方須將SDA拉低。

void _transfByte_to_IIC( unsigned char tran_byte ) {/* CPU字節(jié)發(fā)送程序*/

unsigned char i , current_bit =0x80;

P5OUT =~ RTC_SCL;

delay(IIC_DELAY);

for( i=0; i =7; i++ ) {

if ( tran_byte current_bit )

P6OUT |= RTC_SDA;

else

P6OUT =~ RTC_SDA;

current_bit >>=1;

delay(IIC_DELAY);

P5OUT |=RTC_SCL;//SCL=1

delay(IIC_DELAY);

P5OUT =~ RTC_SCL;//SCL=0

delay(IIC_DELAY);

}

}

unsigned char FM31256_receByte_from_IIC( void ){/*CPU字節(jié)接收程序*/

unsigned char mvalue, i, rece_data =0;

P6DIR =~ RTC_SDA;//設(shè)置為輸入方向

P5OUT =~ RTC_SCL; //SCL=0

delay(IIC_DELAY);

for(i=0;i8;i++) {

rece_data = rece_data1;

P5OUT |=RTC_SCL;//SCL=1

delay(IIC_DELAY);

mvalue = P6IN RTC_SDA;//當(dāng)前位的值

if( mvalue )//接收位為高

rece_data = rece_data | 0x01;

else//接收位為低

rece_data = rece_data 0xFE;

P5OUT =~ RTC_SCL;//SCL=0

delay(IIC_DELAY);

}

P6DIR |=RTC_SDA;//P6.6輸出

return(rece_data);//返回收到的字節(jié)

}

說(shuō)明:發(fā)送到SDA線上的每個(gè)字節(jié)須為8位。tran_byte為CPU要發(fā)送的字節(jié),CPU讀入的數(shù)據(jù)存儲(chǔ)在rece_data中。對(duì)FM31256存儲(chǔ)器可以直接對(duì)當(dāng)前地址進(jìn)行“讀”操作,也可以連續(xù)“讀/寫”多個(gè)字節(jié)而無(wú)須逐一指定地址。依據(jù)上述一般步驟,對(duì)存儲(chǔ)器的訪問(wèn)操作可歸納為3種基本操作: ① 設(shè)置當(dāng)前操作目標(biāo)地址; ② 寫入數(shù)據(jù); ③ 讀出數(shù)據(jù)。

訪問(wèn)存儲(chǔ)器操作有多種,如內(nèi)存“寫”、當(dāng)前地址或順序連續(xù)“讀”和隨機(jī)地址“讀”操作。在控制程序中,需要向FM31256內(nèi)存中寫入并讀出給定參數(shù)、故障信息等數(shù)據(jù)。內(nèi)存讀/寫的方法如下:

內(nèi)存寫操作,首先由CPU發(fā)送從機(jī)地址,然后是內(nèi)存16位地址,主機(jī)通過(guò)設(shè)置從機(jī)地址字節(jié)的最低位為0聲明一個(gè)寫操作;接收應(yīng)答信號(hào)后,CPU向FM31256發(fā)送數(shù)據(jù)的每個(gè)字節(jié),之后器件又產(chǎn)生應(yīng)答信號(hào),任何數(shù)量的連續(xù)字節(jié)可以被寫入,以停止信號(hào)結(jié)束傳輸。有兩種類型的讀操作:當(dāng)前地址讀操作和隨機(jī)地址讀操作。讀操作同樣先由CPU發(fā)送從機(jī)地址,主機(jī)通過(guò)設(shè)置從機(jī)地址字節(jié)的最低位為1聲明一個(gè)讀操作。當(dāng)要進(jìn)行隨機(jī)讀操作時(shí),還要在讀取數(shù)據(jù)之前,發(fā)送16位內(nèi)存地址之后讀取任意個(gè)字節(jié),每個(gè)字節(jié)后應(yīng)跟隨應(yīng)答信號(hào),以停止信號(hào)結(jié)束傳輸。

在電磁鑄軋電源控制裝置的主控程序中,還將調(diào)用時(shí)鐘刷新函數(shù)Flash_time()、時(shí)鐘寫入函數(shù)Write_time()、寄存器寫入函數(shù)Register_write()和寄存器讀出函數(shù)Register_read()。

啟動(dòng)RTC和WatchDog的流程圖如圖4所示。

圖4 啟動(dòng)RTC和WatchDog的流程圖

結(jié)語(yǔ)

將鐵電存儲(chǔ)器用于電磁鑄軋電源控制裝置中,與MSP430系列單片機(jī)相結(jié)合,充分發(fā)揮了其強(qiáng)大的功能;同時(shí)取代了傳統(tǒng)的EEPROM和實(shí)時(shí)時(shí)鐘芯片,既降低了硬件成本,又簡(jiǎn)化了軟件設(shè)計(jì)。


上一頁(yè) 1 2 3 下一頁(yè)

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

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉