關(guān)于儀表模塊這個(gè)功能包含了一個(gè)重要的策略,因?yàn)镈FLASH在每次編寫存儲(chǔ)單元之前都必須先擦除它,DFLASH只能保證擦除100,000次,儀表需要儲(chǔ)存累計(jì)里程1,000公里,下面小編告訴大家儀表模塊的具體用途!
以減少擦除次數(shù)為策略,將長整型的累計(jì)里程基數(shù)按每公里1個(gè)字節(jié)保存起來,即每公里100個(gè)字節(jié),每公里累計(jì)里程基數(shù)按每公里1個(gè)字節(jié)保存起來,
偏移地址加2,然后寫到0x0000,直到滿扇區(qū)域?yàn)橹埂R罁?jù)偏移地址判斷扇區(qū)是否寫滿,扇區(qū)1個(gè)包含256個(gè)字節(jié),扇區(qū)寫滿后,下一次累計(jì)里程增加1公里要寫,

首先擦除扇區(qū),使所有比特都為1,然后向扇區(qū)的頭4字節(jié)寫入最新的累計(jì)里程數(shù),作為累計(jì)里程的基數(shù),重新開始上述循環(huán),讀取時(shí)根據(jù)累計(jì)里程基數(shù)和偏移地址進(jìn)行計(jì)算。
輸出累積里程。按照這個(gè)策略,累計(jì)里程每多123公里擦除扇區(qū)一次,DFLASH可以保證擦除10萬次,也就是說,累計(jì)里程至少可以達(dá)到1230萬公里,遠(yuǎn)超100萬公里的要求。
}
EEPROM{//相關(guān)問題。
為什么要在EEPROM寫入中讀取校驗(yàn)失敗后判斷是否寫入了3次------是這樣的話設(shè)置了寫入錯(cuò)誤標(biāo)志。
|-----因?yàn)橐4?個(gè)里程的累積里程數(shù)據(jù)。
EEPROM第一次被使用,其中的數(shù)據(jù)應(yīng)該是0XFF。EEPROM應(yīng)該擦寫超過1000000次。
}
馬達(dá)模組
電動(dòng)機(jī)的起動(dòng)與停止都需要進(jìn)行加速與減速,以避免電動(dòng)機(jī)的失步。這個(gè)過程可以通過分段判斷或查表來控制每一步的運(yùn)行時(shí)間,從而控制電機(jī)的運(yùn)行速度。
以上就是小編幫大家整理的內(nèi)容,希望能幫助到您,更多的請(qǐng)關(guān)注我們網(wǎng)站。