<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 如何防止單片機(jī)程序丟失

          如何防止單片機(jī)程序丟失

          作者: 時(shí)間:2016-11-18 來(lái)源:網(wǎng)絡(luò) 收藏
          一、改善電源
          盡量改善電源。這是老話了。并不是說(shuō)單片機(jī)能工作就行,電源要設(shè)計(jì)好,加上104去耦電容改進(jìn)電路布局等措施。二、使用電壓監(jiān)測(cè)芯片
          二、使用帶電壓監(jiān)測(cè)的復(fù)位芯片。
          防止上電/下電時(shí),單片機(jī)電壓處于工作和不工作的臨界時(shí),單片機(jī)自己胡來(lái)。上電后,電容從0V逐漸升到VCC;下電時(shí),從VCC逐漸降到0V。不管轉(zhuǎn)電壓轉(zhuǎn)換的多快,總會(huì)有一段時(shí)間處于電壓不足的不穩(wěn)定狀態(tài),什么情況都可能發(fā)生。
          三、足電壓編程、慢速編程
          讓Flash/EEP存儲(chǔ)器在編程時(shí)充入足夠電荷。
          需要可靠性的場(chǎng)合盡量低速寫(xiě)入,把工作加到芯片上限 (一搬5V芯片用5.5V,3V芯片到3.6V),能明顯提高數(shù)據(jù)可靠性.
          四、保護(hù)編程口
          保護(hù)編程的IO口,加些上拉或下拉電阻。如IAP、ISP、JTAG等。防止單片機(jī)復(fù)位之前的時(shí)間被處界雜波干擾,誤入編程狀態(tài)。
          例1:ATMEL的ISP口的SCK、MISO腳盡量做輸出使用。防止外圍器件對(duì)這些腳產(chǎn)生跳動(dòng)電平。防止誤入ISP狀態(tài)。對(duì)JTAG口也要做同樣的保護(hù)。
          例2:STC單片機(jī),盡量設(shè)置成P1.1P1.0為低電平時(shí)才可以編程。
          五、產(chǎn)品盡量禁止編程功能
          比如AVR單片機(jī),設(shè)置JTAGEN=1 OCDEN=1 因?yàn)镴TAG有改寫(xiě)FALSH的能力。在產(chǎn)品階段用不著它,把它禁止。如果可能,還可以設(shè)置熔絲位,禁止ISP功能。但是你要考慮清楚,禁止ISP功能以后就只能通過(guò)并行方式改寫(xiě)程序了。
          還有一些單片機(jī)有專門(mén)的引腳,控制編程允許。那么咱們可以讓它處于禁止編程的狀態(tài)。


          下面是我對(duì)使用MEGA16L的防丟程序措施。5V電壓8M晶振。
          1.使用帶電壓監(jiān)測(cè)的706硬件看門(mén)狗。即保證可靠復(fù)位,又防止CPU低電壓工作。
          2.不使用IAP自編程。熔絲位BOOTRST=1。以前我是用過(guò)自編程,但是為了安全起見(jiàn),還是把它禁止了吧。
          3.晶振選擇高幅度振蕩輸出. CHOPT=0 工作電流會(huì)增加1個(gè)多毫安,但是穩(wěn)定多了。
          4.打開(kāi)BOD BODEN=0 BODLEVEL=0 一旦VCC下降到觸發(fā)電平4.0v以下,MUC不工作;當(dāng)VCC電平大于觸發(fā)電平后,重新開(kāi)始工作。
          5.設(shè)置復(fù)位啟動(dòng)時(shí)間稍長(zhǎng)。SUT 1=1 SUT0=0 上電復(fù)位時(shí)讓CPU等待65個(gè)毫秒,使電源緩慢上升。
          6.禁止JTAG。JTAGEN=1 OCDEN=1 因?yàn)镴TAG有改寫(xiě)FALSH的能力。我在產(chǎn)品階段用不著它,還是把它禁止了吧。還節(jié)省1毫安的工作電流。
          最后的熔絲位變成了 C9 2F


          關(guān)鍵詞: 單片機(jī)程序丟

          評(píng)論


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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();