解讀PIC和AVR單片機的自身抗干擾性能
在我一次產(chǎn)品中有AVR和PIC兩種芯片同時存在,當用AVR推動繼電器--再推動接觸器。用PIC來顯示。發(fā)現(xiàn)PIC居然有點小小的干擾,不得不在外圍電路上加措施才解決問題。都說PIC的抗干擾一流的,我懷疑之下對兩種單片機做一個小小的測試。
首先說明,我只是比較單個芯片的最小系統(tǒng),比較單片機的自身抗干擾能力。
1。電源用變壓器變壓12V,7805穩(wěn)壓,輸入輸出均接電解電容和104電容。
2。單片機最小系統(tǒng),用3個I/O,按鈕,指示燈,驅動三極管(繼電器--再推動接觸器)不用的管腳不管。
3。干擾源,由于沒有儀器,只好用接觸器的線圈來做干擾源,為了加強干擾,接觸器線圈兩端沒有加104電容。
4。軟件,最小最簡單,不加任何處理只推動作用。
5。元件選擇,PIC的用PIC16C54,PIC16F54,PIC16F877A,PIC16F716。AVR的選用M8。AT28,AT13。
接下來做測試了:
PIC16C54:
先是接觸器放在芯片旁邊。無論怎么按動按鈕,接觸器的干擾對它一點反映也沒有,真是穩(wěn)如泰山。再用接觸器線圈引線纏繞芯片。在6圈以下還是穩(wěn)如泰山。上了7圈就有干擾了??磥鞵IC16C54真是強悍啊。佩服。接下去就試PIC16F54了。
PIC16F54:
先是接觸器放在芯片旁邊。不得了!程序簡直沒有辦法運行,和PIC16C54簡直一個在天上,一個在地下。萬思不得其解。查閱PIC資料都說PIC的F系列比C系列差,就是F系列的不同產(chǎn)品抗干擾也不一樣。于是又測試PIC16F716。
PIC16F716:
先是接觸器放在芯片旁邊。果然好多了,10次也就1次復位。
PIC16F877A:
先是接觸器放在芯片旁邊。無論怎么按動按鈕,接觸器的干擾對它一點反映也沒有,再用接觸器線圈引線纏繞芯片。在1圈就有干擾復位了。
以上就是對我有的幾種PIC片子的測試結果。接下來對AVR的M8做測試。
M8:
先是接觸器放在芯片旁邊。先是接觸器放在芯片旁邊。無論怎么按動按鈕,接觸器的干擾對它一點反映也沒有,再用接觸器線圈引線纏繞芯片。在1圈就有干擾復位了。
AT28:結果和PIC16F54一樣。
AT13:
先是接觸器放在芯片旁邊。先是接觸器放在芯片旁邊。無論怎么按動按鈕,接觸器的干擾對它一點反映也沒有,再用接觸器線圈引線纏繞芯片。在1-2圈就有干擾復位了。
從我自己測試的效果看,PIC的C系列很好。F系列的早期產(chǎn)品如PIC16F54很差,還不如51。后期的F系列如PIC16F877還可以。個人估計:原來PIC是生產(chǎn)OTP單片機的,他的OTP技術真是一流,F(xiàn)是后來才生產(chǎn)的(可能是C系列的學習版),技術還在學習和摸索中,所以F系列是早期產(chǎn)品不如后期產(chǎn)品。沒有測試18F系列的不知道好不好。
AVR的M8就和PIC16F877A差不多。AT13比M8好一點。M28差。
同一個廠家的產(chǎn)品怎么有如此大的差別呢?干擾又是怎么造成CPU復位的呢?帶著疑問我又對M8和PIC16F716再繼續(xù)做試驗。
1:用示波器測試芯片任意地方,發(fā)現(xiàn)都有干擾脈沖。不能確定干擾具體位置。
2:用接觸器線圈引線對準芯片一個一個腳來測試。結果出來了。
PIC16F716:只要引線對準復位腳,100%的復位,有狀態(tài)指示出是MCLR復位。引線對準電源腳沒有影響。
M8:只要引線對準復位腳,100%的復位,有狀態(tài)指示出是RESET復位。引線對準電源腳(20-30)%復位。
從以上看來干擾主要是影響了復位腳。電源對PIC的影響比AVR的小。查閱PIC和AVR的復位系統(tǒng),終于有了答案: AVR的復位腳通過一個電阻連接到電源,而PIC的則沒有,故電源對PIC的影響比AVR的小。將PIC的復位腳外接一個電阻,電源對PIC的影和AVR一樣。
將電源和復位連接103或者104電容到地,奇跡發(fā)生了。
M8的穩(wěn)定性能居然和PIC16C54一樣了。先是接觸器放在芯片旁邊。無論怎么按動按鈕,接觸器的干擾對它一點反映也沒有,真是穩(wěn)如泰山。再用接觸器線圈引線纏繞芯片。在4圈以下還是穩(wěn)如泰山。上了5圈就有干擾了。
PIC16F716:先是接觸器放在芯片旁邊。無論怎么按動按鈕,接觸器的干擾對它一點反映也沒有,真是穩(wěn)如泰山。再用接觸器線圈引線纏繞芯片。在1-2有干擾了。
查閱PIC的MCLR時間沒有結果,看了PIC16F系列的復位電路沒有什么改變估計是PIC16F系列的內(nèi)部質(zhì)量不高。再說“奇跡發(fā)生了”抗干擾能力提高不顯著。
查閱各種AVR的復位電路,發(fā)現(xiàn)AT11是最差的,連“尖峰濾波電路也沒有”所以淘汰停產(chǎn)了。AT24/26/28/15的復位時間只有50-900ns。AT25/13/2313的復位時間要2.5us,難怪要穩(wěn)定些。M48/88/168為2us,M8為1.5us。(沒有比較過M48是不是比M8穩(wěn)定一些)。復位時間短的肯定比時間長的容易受干擾一些,可是AVR為什么還如此明了的標出復位時間呢?只有一個原因:讓用戶根據(jù)不同的環(huán)境選擇不同抗干擾的芯片。
終上所述:芯片自身抗干擾能力。個人認為:
PIC的C系列片子可以得10分。
AVR的M8可以得8-9分。
PIC的16F系列片子可以得4分。
AVR的AT13可以得8-9分。
可以看出AVR的足可以用于工業(yè)控制了,注意使用AVR的片子的時候要根據(jù)不同的環(huán)境選擇不同的片子,還有AVR的復位腳處理,由于AVR的復位腳通過一個電阻連接到電源,所以電源也要處理。
評論