基于Proteus軟件的單片機仿真與PCB設(shè)計
隨著科學技術(shù)的發(fā)展,單片機技術(shù)在產(chǎn)品的人機交互設(shè)計中扮演著越來越重要的角色,而單片機仿真和PCB設(shè)計成為其重要分支。Proteus軟件在單片機和外圍器件方面卓越的仿真能力使其成為目前最好的仿真工具之一,而該軟件還可在仿真原理圖的基礎(chǔ)上設(shè)計PCB。此論文以AT80C51為芯片的流水燈為實例,基于Proteus軟件和Keil uVision2軟件論述了整個電路原理圖的繪制與仿真和PCB設(shè)計流程,旨在為單片機初學者提供一種有效地學習方法。
1.引言
單片機是將CPU芯片,存儲器芯片,I/O接口芯片和簡單的I/O設(shè)備裝配在一塊印刷電路板上,再配上存儲在ROM中的監(jiān)控程序,這便構(gòu)成了一臺單板微型計算機。傳統(tǒng)的單片機開發(fā)都是采用硬件實驗箱或?qū)嶒灠宸绞?,硬件投資成本相對較高;這種定式的環(huán)境很容易將開發(fā)者的思維禁錮在小小的實驗箱里,不利于創(chuàng)新思維實現(xiàn),對于初學者還會造成認知上的誤區(qū),即所謂的單片機就是在一個箱子里穿針引線,這極不利于后續(xù)的開發(fā)。
目前,具有電路仿真功能的軟件比較多,性能比較好的有Multisim、Protel、O r C A D等,但這些對單片機的仿真無能為力。到目前為止,只有Proteus軟件能夠提供完善的單片機芯片及嵌入式系統(tǒng)的仿真。
2.單片機仿真所需實驗配置
2.1選用Proteus軟件作為單片機仿真軟件
Proteus軟件是英國Lab Center Electronics公司開發(fā)的EDA工具軟件。它不僅是模擬電路、數(shù)字電路、模/數(shù)混合電路的設(shè)計平臺,更是目前世界上最先進,最完整的多種型號微處理器系統(tǒng)的設(shè)計與仿真平臺,真正實現(xiàn)了在計算機上完成原理圖設(shè)計,電路分析與仿真,微處理器程序設(shè)計與仿真,系統(tǒng)測試與功能驗證,到形成PCB的完整電子設(shè)計、研發(fā)過程。
Proteus軟件由ISIS和ARES兩個軟件構(gòu)成,其中ISIS是一款智能原理圖輸入系統(tǒng)軟件,可作為電子系統(tǒng)仿真平臺,ARES是一款高級布線編輯軟件,用于設(shè)計PCB.
2.2選用Keil uVision2軟件對程序進行編譯和調(diào)試
Proteus仿真中的單片機芯片,與單片機硬件的試驗臺中單片機芯片一樣,需要下載編譯好的機器語言文件,這樣就需要匯編語言和C語言的編譯器。KeiluVision2是51系列兼容單片機C語言軟件開發(fā)系統(tǒng),使用接近于傳統(tǒng)C語言的語法來開發(fā),它還能嵌入?yún)R編,您可以在關(guān)鍵的位置嵌入,同時可移植性強,使程序達到接近于匯編的工作效率。此外,Keil uVision2軟件還支持眾多不同公司的單片機芯片,集編輯、編譯和程序調(diào)試于一體,之后將生成的。HEX文件,下載到單片機芯片里,這就完成了程序的固化。
3.基于Proteus軟件含有AT80C51芯片的流水燈仿真與PCB制作
3.1 Proteus單片機仿與PCB制作的實驗流程(如圖1所示)
3.2用ISIS軟件繪制含有AT80C51單片機芯片的原理圖
1)打開ISIS Professional軟件,執(zhí)行“File”→“New Design”,在彈出窗口中選擇默認模板“DEFAULT”,點擊“OK”,然后保存,命名為“liushuideng.DSN”。
2)“System”→“Set Sheet Sizes…”,彈出“Sheet Size Configuration”對話框,設(shè)定圖紙為A4,單擊“OK”。
3)添加元器件。
具體數(shù)值見圖3.在工具欄中執(zhí)行菜單命令“Library”→“Pick Device/Symbol…”,彈出對話框在“Keywords”欄里輸入所需元器件,右側(cè)欄將顯示,此時只需選擇自己需要的元器件,點擊“OK”,然后在列表中選中元器件(所用元件如下表1所示),在原理圖編輯窗口合適位置單擊鼠標完成放置,按此方法將列表中的所有元器件添加進去。
4)放置電源和地:單擊左側(cè)工具箱中圖標,在對象選擇器中單擊“POWER”,使其出現(xiàn)藍色條,再在原理圖編輯窗口合適位置單擊鼠標,就將“電源”放置在原理圖中;單擊“GROUND”,用同樣方法,將“地”放置在原理圖中。
5)布線:在ISIS原理圖編輯窗口中沒有專門的布線按鈕,但系統(tǒng)默認自動布線有效,因此,可直接畫線,布線如圖2所示。
4.C語言編程
4.1建立工程文件
1)打開K e i l u V i s i o n 2軟件,點擊“Project”→“New Project”,命名為“liushuideng”,然后保存,在彈出的對話框“Data base”欄中選擇“Atmel”→“89C51”→“確定”;然后點擊“File”
→“New File”。
2)點擊“Save”→文件命名為“liushuideng.
c“→”保存“,本程序利用C語言編程后綴必須是”。c“。
3)點擊“Target 1”→“Sour Group1”
→“Add Files to Group”Sour Group 1“”,在彈出的對話框中選擇剛建的文件,然后點擊“Add”,添加完成后點擊“Close”;到此工程建立完畢。
4.2利用C語言編寫流水燈的程序源代碼
#include #include
#define uint unsigned int
#define uchar unsigned char
uchar temp;void delay(uint);
void main()
{temp=0xfe;P0=temp;while(1)
{temp=_crol_(temp,1);delay(600);
P0=temp;} }
void delay(uint z)
{ u i n t x , y ; f o r(x = 1 0 0 ; x > 0 ; x - -)
for(y=z;y>0;y-);}
4.3調(diào)試程序
經(jīng)調(diào)試本程序,下邊狀態(tài)欄顯示“0Errors,0 Warning”,表示“0”錯誤,“0”警告。
4.4生成。HEX目標文件
選中“Target 1”單擊右鍵→“Optionfor Target Target 1‘”,在彈出的對話框中,單擊“Output”→“Create HEX File”打鉤,再次運行程序即可生成。HEX目標文件。
5.原理圖仿真
(1)在Proteus ISIS中,雙擊AT89C51單片機芯片,在彈出的“Edit Component”
對話框的“P r o g r a m F i l e”欄中選擇“liushuideng.hex”,然后點擊“OK”。
(2)在Proteus ISIS編輯窗口左下方點擊播放按鈕,或者在“Debug”菜單下選擇“Execute”,可以看到,首先P0.0點亮LED燈,等待一秒后熄滅,同時P0.1點亮另一只LED燈,同樣等待一秒后熄滅,P0.2點亮LED燈┄┄當P0.7點亮LED燈等待一秒后熄滅后,P0.0點亮LED燈┄┄如此循環(huán),間隔時間可在delay函數(shù)中自行設(shè)定,在運行結(jié)果如圖2所示。
LED燈左側(cè)的點呈現(xiàn)藍色時,表示點亮狀態(tài),紅色時,表示熄滅狀態(tài)。
6.PCB的制作
6.1統(tǒng)計電路原理圖中使用的元器件
在ISIS中執(zhí)行菜單命令“Tools”→“Billof Materials”→“2 ASCII Output”,生成元器件清單,如圖3所示:
6.2導入網(wǎng)絡(luò)表
在I S I S中,雙擊開關(guān)“K”,會彈出“Edit Component”對話框,將“Excludefrom PCB Layout”前的“√”去掉,點擊“OK”;執(zhí)行菜單命令“Tools”→“Netlistto ARES”,系統(tǒng)自動打開ARES軟件。在ISIS中有些元器件沒有指定封裝形式,因此系統(tǒng)會自動彈出“Package Selector”對話框,在“Package”欄中輸入相應(yīng)的封裝形式,對于發(fā)光二極管的封裝形式為“LED”,按鈕“K”的封裝形式為“SW-PUSH1”。
6.3放置元器件
完成元器件封裝后,進入A R E S操作界面,先要點擊主工具箱中圖標,此為2DGroaphics框體模式,在左下角下拉框中選擇當前板層為“Board Edge”(黃色),在工作區(qū)內(nèi)單擊不放,拉出來個黃框,按需要設(shè)定大小,那就是PCB編輯板層。在元器件不多的情況下,為了達到自己想要的設(shè)計效果,采用手動布置元器件的方法,在主工具箱中單擊元件模式圖標,在元器件列表中選擇某個元器件,然后在編輯區(qū)中合適位置單擊鼠標左鍵,即可放置好該元器件;如果元器件比較多,采用自動布置元器件和手動布置元器件相結(jié)合的方法,可以大大提高制板效率。元器件放置完畢后,且右下角顯示“No DRC errors”,無設(shè)計規(guī)則錯誤。
6.4布線
ARES提供了交互手工布線和自動布線兩種方式,通常結(jié)合使用以提高效率,并使PCB具有更好的電氣特性,也更加美觀。執(zhí)行菜單命令“Tools”→“Auto Router”,彈出“Shape Based Auto Router”對話框,按需要自行設(shè)定各參數(shù),然后點擊“OK”,開始自動布線,然后進行手工調(diào)整,結(jié)果如圖4所示:
6.5規(guī)則檢查
CRC檢查:點擊“Tools”→“ConnectivityChecker”,系統(tǒng)進行連接性檢查,下邊狀態(tài)框提示“0 CRC violationsfound”,表示無CRC錯誤且無DRC錯誤。
6.6敷銅
1)頂層敷銅:點擊“Tools”→“PowerPlane Generator”,彈出“Power PlaneG e n e r a t o r”對話框,在此對話框中的“Net”欄中選擇“GND=POWRE”,“Layer”
欄中選擇“Top Copper”,“Boundary”欄中選擇“T10”,設(shè)置好后,點擊“OK”,進行頂層敷銅。
2)底層敷銅:只需在“Layer”欄中選擇“Bottom Copper”,其它操作同頂層敷銅。
6.7 3D效果顯示
點擊“Output”→“3D Visualizati o n”,顯示3 D效果如圖5所示,通過“View”的下拉菜單可以顯示不同的3D效果。
6.8輸出光繪文件
點擊“Output”→“IDF ManufacturingOutput”,按PCB生產(chǎn)要求設(shè)置參數(shù),點擊“Generate”,生成相應(yīng)的光繪文件。將導出的光繪文件和相應(yīng)鉆孔文件,發(fā)送到PCB廠家就可以進行制板了。也可以自己購買原材料,動手制作一塊流水燈的PCB板,這樣更能加深對單片機開發(fā)過程和工作原理的理解。
7.結(jié)束語
本論文以Proteus軟件為仿真工具,Keil uVision2軟件為程序編輯器,相對完整的論述了單片機的仿真和制作PCB的流程,同時流水燈的制作也是單片機入門典型實例;這將讓廣大單片機初學者對其開發(fā)流程有大致了解。利用Proteus軟件進行單片機仿真實驗,不僅減少了原材料的損耗,還彌補了實驗儀器和元器件缺乏帶來的不足。初學者通過仿真實驗,可以了解單片機系統(tǒng)的開發(fā)方法,這非常有助于培養(yǎng)其綜合分析能力、排除故障能力和開發(fā)、創(chuàng)新能力。
評論