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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > AVR單片機上電復位不可靠問題的解決

          AVR單片機上電復位不可靠問題的解決

          作者: 時間:2013-04-13 來源:網(wǎng)絡 收藏

          程序里開始首先是對IO做初始化,TXD配置為輸出,還有其他相關(guān)IO配置。然后是對定時器的一些初始化,再就是對串口的一些初始化了??戳讼鲁绦颍诔跏蓟臅r候就把串口中斷發(fā)送、接收允許都使能了,難道是這里的問題?串口電壓表在實際工作的時候串口其實不是在一直工作的,是通過一個開關(guān)選擇接地才發(fā)送數(shù)據(jù),平時是不發(fā)送的,而在不接串口電平轉(zhuǎn)換電路的時候RXD、TXD都是是懸空的,只有TXD為輸出有上拉,RXD沒有使能上拉,這時候RXD是最容易被外部干擾的,這就是問題的所在了。當然如果串口電平轉(zhuǎn)換電路都連接著,那就沒這個問題,因為串口電平轉(zhuǎn)換電路已經(jīng)把RXD的電平給鉗住了。解決的方法很簡單:在初始化串口的時候關(guān)閉串口中斷使能,在主程序里需要發(fā)送數(shù)據(jù)的時候再使能串口,發(fā)送完馬上關(guān)閉就可以。至此問題解決,這時候看你再怎么去“摸”ATMEGA48的引腳或封裝都沒有再出現(xiàn)任何的死機情況,每次都是非常的穩(wěn)定。(把AVR的BOD熔絲打開可增加復位的可靠性,BOD LEVEL根據(jù)實際的電源電壓進行選擇,這里的電源是5V,所以BOD LEVEL選4.3V)

          總結(jié)教訓:

          這是自己的粗心大意、芯片內(nèi)部功能的沒有合理性利用的表現(xiàn)。在此引以為戒!告訴自己:不要以為自己做過一些小項目就飄飄然起來,不要動不動就去懷疑人家半導體廠家芯片的穩(wěn)定性,要多懷疑自己才是。往往可能最基本的問題沒注意而花費了很多的時間,自己做著玩的東西那都無所謂了,如果你是給別人打工呢?那性質(zhì)就完全不一樣了!

          下圖為 典型外部復位電路:

          已經(jīng)內(nèi)置了設(shè)計。并且在熔絲位里,可以控制復位時的額外時間,故AVR外部的復位線路在上電時,可以設(shè)計得很簡單:直接拉一只10K的電阻到VCC即可。

          為了可靠,再加上一只0.1uF的電容以消除干擾、雜波。

          二極管1N4148的作用有兩個:作用一是將復位輸入的最高電壓鉗在Vcc+0.5V 左右,另一作用是系統(tǒng)斷電時,將10K電阻短路,讓0.1uF的電容快速放電,讓下一次來電時,能產(chǎn)生有效的復位。

          當AVR在工作時,按下開關(guān)S 時,復位腳變成低電平,觸發(fā)AVR芯片復位。

          AVR單片機上電復位不可靠問題的解決

          單片機相關(guān)文章:單片機教程


          單片機相關(guān)文章:單片機視頻教程


          單片機相關(guān)文章:單片機工作原理



          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(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); })();