從PCB到軟件處理 談單片機(jī)系統(tǒng)的電磁兼容性設(shè)計(jì)
2、對(duì)重要參數(shù)儲(chǔ)存的措施
一般情況下,我們可以采用錯(cuò)誤檢測(cè)與糾正來(lái)有效地減少或避免這種情況的出現(xiàn)。根據(jù)檢錯(cuò)、糾錯(cuò)的原理,主要思想是在數(shù)據(jù)寫(xiě)進(jìn)時(shí),根據(jù)寫(xiě)進(jìn)的數(shù)據(jù)天生一定位數(shù)的校驗(yàn)碼,與相應(yīng)的數(shù)據(jù)一起保存起來(lái);當(dāng)讀出時(shí),同時(shí)也將校驗(yàn)碼讀出,進(jìn)行判決。假如出現(xiàn)一位錯(cuò)誤則自動(dòng)糾正,將正確的數(shù)據(jù)送出,并同時(shí)將改正以后的數(shù)據(jù)回寫(xiě)覆蓋原來(lái)錯(cuò)誤的數(shù)據(jù);假如出現(xiàn)兩位錯(cuò)誤則產(chǎn)生中斷報(bào)告,通知CPU進(jìn)行異常處理。所有這一切動(dòng)作都是靠軟件設(shè)計(jì)自動(dòng)完成的,具有實(shí)時(shí)性和自動(dòng)完成的特點(diǎn)。通過(guò)這樣的設(shè)計(jì),能大大進(jìn)步系統(tǒng)的抗干擾能力,從而進(jìn)步系統(tǒng)的可靠性。
檢錯(cuò)與糾錯(cuò)原理:
首先來(lái)看看檢錯(cuò)和糾錯(cuò)的基本原理。進(jìn)行差錯(cuò)控制的基本思想是在信息碼組中以一定規(guī)則加進(jìn)不同方式的冗余碼,以便在信息讀出的時(shí)候依靠多余的監(jiān)視碼或校碼碼來(lái)發(fā)現(xiàn)或自動(dòng)糾正錯(cuò)誤。針對(duì)誤碼發(fā)生的特點(diǎn),即錯(cuò)誤發(fā)生的隨機(jī)性和小概任性,它幾乎總是隨機(jī)地影響某個(gè)字節(jié)中的某一位(bit),因此,假如能夠設(shè)計(jì)自動(dòng)糾正一位錯(cuò)誤,而檢查兩位錯(cuò)誤的編碼方式。就可以大大進(jìn)步系統(tǒng)的可靠性。
3、對(duì)RAM和FLASH(ROM)的檢測(cè)
在編制程序時(shí)我們最好是寫(xiě)進(jìn)一些檢測(cè)程序來(lái)測(cè)試RAM和FLASH(ROM)的數(shù)據(jù)代碼,看有無(wú)發(fā)生錯(cuò)誤,一旦發(fā)生要立即糾正,糾正不了的要及時(shí)給出錯(cuò)誤指示,以便用戶(hù)往處理。
最后,我們?cè)诰幹瞥绦驎r(shí)加進(jìn)程序冗余是不可缺少的。在一定的地方加進(jìn)三條或三條以上NOP指令對(duì)程序的重組有著很有效防止作用。同時(shí),在程序的運(yùn)行狀態(tài)中要引進(jìn)標(biāo)志數(shù)據(jù)和檢測(cè)狀態(tài),從而及時(shí)發(fā)現(xiàn)和糾正錯(cuò)誤產(chǎn)生。
評(píng)論