《電子技術應用》
您所在的位置:首頁 > 嵌入式技术 > 设计应用 > 嵌入式基于Proteus的ARM虚拟开发
嵌入式基于Proteus的ARM虚拟开发
摘要: 文章标题:嵌入式基于Proteus的ARM虚拟开发。中国IT实验室嵌入式开发频道提供最全面的嵌入式开发培训及行业的信息、技术以及相关资料的下载.
關鍵詞: ARM 嵌入式 Proteus RISC
Abstract:
Key words :

  現(xiàn)在,人們生活中的每個角落都有嵌入式設備的存在,比如數碼相機、移動電話、TV機頂盒及掌上電腦等等。這些嵌入式設備多采用32位RISC嵌入式處理器作為核心部件。

  其中基于ARM核的嵌入式處理器獨占鰲頭,在32位RISC處理器中占據超過75%的市場份額。ARM核嵌入式處理器通常采用C語言編程,目前ARM公司的開發(fā)工具ADS、RealView以及Keil與arm核處理器結合較好,得到了廣大嵌入式學習者的一致認可。

  在傳統(tǒng)的嵌入式系統(tǒng)學習中,嵌入式開發(fā)平臺是必不可少的。其中資源少的開發(fā)平臺便宜但功能較少,資源多的開發(fā)平臺又價格不菲,這對廣大的嵌入式愛好者無疑是個障礙。然而,有沒有在不增加甚至降低開發(fā)成本的同時還能進行同樣或更好的開發(fā)呢?本文介紹的Proteus軟件就是一個可以完全脫離硬件平臺來學習嵌入式系統(tǒng)進行虛擬開發(fā)的利器,可以說是嵌入式系統(tǒng)學習的一次革命。

  1 Proteus簡介

  Proteus軟件是英國Labcenter electronics公司的EDA工具軟件,是一個電子設計的教學平臺、實驗平臺和創(chuàng)新平臺,涵蓋了電工電子實驗室、電子技術實驗室、單片機應用實驗室等的全部功能。

  其革命性的功能是將電路仿真和微處理器仿真進行協(xié)調,直接在基于原理圖的虛擬原型上進行處理器編程調試,并進行功能驗證,通過動態(tài)器件(如電機、LED、LCD、開關等),配合系統(tǒng)配置的虛擬儀器(如示波器、邏輯分析儀等),可實時看到運行后的輸入輸出的效果,其主要特點如下:

  (1)可以仿真、分析各種模擬器件和集成電路,其支持Pillips公司系列的arm(LPC系列),Proteus的仿真是基于SPICE3F5的,因此它也能像其它的EDA軟件那樣進行電路分析,如模擬分析、數字分析、混合信號分析、頻率分析等等;

  (2)提供了虛擬示波器、邏輯分析儀、信號發(fā)生器、計數器、電表、Virtual Terminal等虛擬儀器儀表供選擇;

  (3)能夠進行SCH(原理圖)和PCB(印刷板)電路的設計;

  (4)其自身只帶匯編編譯器,不支持C語言。但可以將它與Keil、ADS集成開發(fā)環(huán)境連接,將用匯編和C語言編寫的程序編譯好之后,可以立即進行軟、硬件結合的系統(tǒng)仿真,達到很好的仿真效果。

  2  Proteus環(huán)境下的系統(tǒng)設計與仿真

  Proteus和PROTEL、EWB等軟件相似,繪制原理圖都要先從器件庫里取出所需的元器件符號并在繪圖區(qū)布局好,同時編輯好元件的參數,接著進行連線,添加必要的網絡標號等步驟。下面通過一個簡單的實例說明如何使用Proteus軟件實現(xiàn)arm(以LPC2124為例)系統(tǒng)設計與仿真。實例以 LPC2124控制器為核心,與L297、L298組成步進電機控制器,添加必要的外圍電路,實現(xiàn)對步進電機的正、反轉控制。

  2.1 電路原理圖的設計

  運行Proteus VSM的ISIS后出現(xiàn)如圖1所示的主窗口界面,點擊“File”—“New Design”新建一個設計項目。接下來就是在其中所需的添加元器件了,點擊元器件添加按鈕會彈出“Pick Devices”對話框,在其中選擇需要添加的元器件,添加到器件列表區(qū)中。然后再依次點擊列表區(qū)里的元器件,把它們放到繪圖區(qū)并編輯其屬性,接著進行合理的布局之后,就可以進行連線了。與PROTEL類似,Proteus也具有自動捕捉節(jié)點和自動布線功能,連線時當鼠標的指針靠近一個對象的引腳時,跟著鼠標的指針就會出現(xiàn)一個“×”提示符號,點擊鼠標左鍵即可畫線,在終點再點擊確認一下就完成一段導線,所有導線畫完后,點擊電源按鈕,添加必要的電源和接地符號,并編輯其屬性后,原理圖的繪制就完成了,如圖2所示。

  2.2 程序代碼的編寫

  程序代碼的編寫主要分四個部分進行:

  (1) LPC2124的初始化代碼;

  (2) LPC2124異常向量入口及異常向量與C語言代碼的接口,包括初始化堆棧的代碼;

  (3) LPC2124目標板特殊的代碼,包括異常處理程序和目標板初始化程序;

  (4) 根據我們實例要求,結合原理圖,編寫實現(xiàn)預期功能的代碼,即通常的執(zhí)行代碼,代碼文件保存為“main.c”。

  通常,為了節(jié)省開發(fā)者的時間,通常把這些文件保存在一個文件夾里,暫且把文件夾命名為“lpc2124模塊”,這樣在以后的程序代碼編寫時就可以直接調用這個模塊,再根據不同的要求改寫“main.c”就行了,而不必要又重新編寫這些程序,節(jié)省了大量時間,大大提高了工作效率。

  這里主要說明“main.c”的編寫,要實現(xiàn)的功能是用LPC2124控制器、LP297、L298組成的步進電機控制 器,控制步進電機的運轉,原理圖中可以看到各元器件引腳的連接,圖中還設置了七個電壓探針,用數字圖表顯示各電壓節(jié)點的電平隨時間變化的曲線。KEY鍵控制電機的正反轉(KEY鍵按下則電機反轉)。程序流程圖如圖3所示。根據程序流程圖編寫好執(zhí)行代碼文件“main.c”。

  圖3 程序流程圖

  圖4  ADS編譯環(huán)境窗口

  2.3 仿真

  文中采用ADS集成開發(fā)環(huán)境進行程序的編譯連接設置,ADS集成開發(fā)環(huán)境是ARM公司推出的ARM核微控制器集成開發(fā)工具,英文全稱為ARM Developer Suite,成熟版本為ADS1.2。ADS1.2支持ARM10以前的所有arm系列微控制器,支持軟件調試,支持匯編、C和C++源程序,具有編譯效率高、系統(tǒng)庫功能強等特點。

  打開ADS1.2集成開發(fā)環(huán)境CodeWarrior IDE,點擊Project→New Project建立一個新的工程lcd.mcp,把以上編好的代碼文件全部添加進工程,如圖4所示。進行相關設置后,選擇Project→Make命令,編譯并連接工程,生成stepper.hex文件。

  在原理圖中右擊微控制器LPC2124,再單擊,出現(xiàn)一屬性設置窗口Edit Component,如圖5。在其中的Program File中添加上面生成的stepper.hex文件的路徑,單擊OK完成設置。

  點擊原理圖左下角中的運行按鈕,即開始仿真運行。

  仿真結果如圖6所示。數字圖表顯示各電壓節(jié)點的電平值隨時間變化的曲線,步進電機按要求運行,按下KEY鍵電機反轉。仿真結果完全符合設計要求。

  圖5 器件編輯窗口

  圖6  仿真結果圖

  3  結語

  通過以上簡單的步進電機控制系統(tǒng)設計過程可以看出,用Proteus軟件進行ARM虛擬開發(fā)的優(yōu)勢所在。使用Proteus進行arm的虛擬開發(fā),不僅可以減少實驗硬件資本的投入,還突破了實際開發(fā)板中實驗內容的局限性,使開發(fā)者能夠充分發(fā)揮自身的主動性。使用Proteus仿真,大大降低了開發(fā)成本,提高了開發(fā)效率。筆者相信隨著電子技術的不斷發(fā)展、完善,基于軟件的硬件虛擬開發(fā)的應用將會發(fā)揮越來越重要的作用。

此內容為AET網站原創(chuàng),未經授權禁止轉載。
主站蜘蛛池模板: 91国产中文字幕| 91精品国产91久久久久久久久 | 欧美日韩一区二区三| 日韩中文字幕网址| 日韩视频在线观看国产| 日本一区二区在线播放| 韩日欧美一区二区| zzjj国产精品一区二区| 日产国产精品精品a∨| 精品人妻人人做人人爽| 日韩成人av电影在线| 国产精品视频导航| 国产福利久久| 久久久久久亚洲精品不卡| 欧美精品一区在线| 国产福利视频在线播放| 国产精品日韩三级| 久久精品在线播放| 国产精品亚洲激情| 日本一区二区三区视频免费看| 久久亚洲私人国产精品va| 国产成人av在线| 久久久精品日本| 91精品国产综合久久久久久蜜臀 | 国产aⅴ精品一区二区三区黄| 欧美一区二区视频97| 国产av不卡一区二区| 国产精品美女诱惑| 国产精品视频999| 国产一区二区视频在线观看 | 久久精品国产欧美激情| 国产成人精品自拍| 欧洲亚洲免费视频| 日本一区高清不卡| 无码日韩人妻精品久久蜜桃V| 亚洲中文字幕无码中文字| 国产精品美女www| 国产日韩精品一区观看| 国产精品美女在线播放| 日本视频一区二区在线观看| 欧美大片va欧美在线播放|