機電之家資源網(wǎng)
單片機首頁|單片機基礎|單片機應用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓信息
贊助商
51單片機開發(fā)的幾種學習方法
51單片機開發(fā)的幾種學習方法
 更新時間:2008-7-27 16:17:36  點擊數(shù):2
【字體: 字體顏色

隨著電子技術的發(fā)展,涌現(xiàn)出多種高性能的單片機,但51以其簡單實用仍然占有廣大的市場,非常適合初學者入門學習,可是現(xiàn)在的仿真器都成百上千,這對我們學習單片機形成了很大的障礙。這里筆者根據(jù)自己的學習經(jīng)驗把51單片機的幾種開發(fā)方法寫出來與大家共享,希望能對即將要步入單片機大門的師弟師妹們有所幫助。

 

1、ISP下載方式開發(fā)單片機

用寫入器將code燒入,不過,芯片可以在目標板上,不用取出來,在設計目標板的時候就將接口設計在上面,所以叫"在系統(tǒng)編程",即不用脫離系統(tǒng);在這種情況下最簡單有效的方法就是燒片子,也就是寫完程序不經(jīng)過調(diào)試直接將生成的二進制文件寫入到單片機內(nèi)運行。當然這里單片機選型很重要,要選擇那種帶ISPIAP的單片機如89S**、STC系列的單片機。這對于初學者也許有些難度,但是一旦掌握這種方法會使你的開發(fā)進程變得高效。

2、MON51

    MON51是用目標單片機作為仿真器,單片機即仿真器也作目標機的單片機用,其實質(zhì)是一種ROM監(jiān)控器。單片機內(nèi)駐留的是監(jiān)控程序,控制程序的執(zhí)行,而真正的用戶程序存放在外部RAM中,雖然這種方法會占用單片機的部分資源,但運行速度快,但結(jié)構簡單,對于特定的開發(fā)者來說,實用性強,性價比高,且易于自行制作。

    其原理很簡單,單片機是通過RD產(chǎn)生低電平來讀取外部RAM的,而通過PSEN產(chǎn)生低電平來讀取外部ROM。如果在RDPSEN間加與門由其輸出信號去控制外部RAM62256OE端,這樣就可以騙過單片機使62256既可以充當外部RAM又可以當外部ROM。這樣做的巧妙之處在于在下載階段,62256做外部RAM,監(jiān)控程序可以通過串口將用戶程序?qū)懭氲酵獠?SPAN lang=EN-US>RAM中,而在程序的運行階段62256充當ROM,監(jiān)控程序可以通過跳轉(zhuǎn)指令ljmp 8000h,執(zhí)行62256中的用戶程序。

 

3、ISD51

    ISD51 (在線調(diào)試器)8051編程用戶提供了新的監(jiān)控調(diào)試技術。將 ISD51 進行配置后與您的用戶程序連接起來用戶就可以通過8051的一個串口直接在芯片上調(diào)試程序了。ISD51的軟件和硬件可以工作于最小模式。它可以運行于帶有外部或內(nèi)部程序空間的系統(tǒng)并且不要求增加像馮.諾伊曼架構的數(shù)據(jù)存儲器等的特殊硬件部件。

ISD51 在你的8051系統(tǒng)里增加了一個串口中斷函數(shù) (ISD51 中斷)。當 ISD51 連接到 uVision2 調(diào)試器時, 8051 輸入 ISD51的中斷函數(shù)。只要到程序運行一被停止, 8051 就只運行 ISD51 中斷服務程序。當 uVision2 調(diào)試器發(fā)出一個“ Go的指令, 8051就脫離 ISD51 中斷函數(shù)并且運行用戶程序。如果沒有設置任何斷點或者如果所有斷點設置為硬件斷點, 8051 就會全速運行用戶程序。如果設置了軟件斷點, 8051在相應8051 CPU指令后面輸入 ISD51 中斷函數(shù) 。ISD51 中斷服務程序會檢查是否8051程序到了一個斷點地址,如果是,開始和 uVision2 調(diào)試器通訊。所以, 當使用軟件斷點時,8051 的程序運行速度會變得相當慢(相差100倍左右)。一旦“ISD51 系統(tǒng)在線調(diào)試器”被作為中斷函數(shù)實現(xiàn),其它和 ISD51 系統(tǒng)的中斷優(yōu)先級一樣,甚至比ISD51優(yōu)先級更高的中斷函數(shù)中就不能再設置斷點或者單步執(zhí)行了。默認狀態(tài)下,  ISD51 中斷函數(shù)使用的中斷優(yōu)先等級為0級。uVision2 調(diào)試器發(fā)送一個 0xA5 的字符到 ISD51 的中斷函數(shù)中,使用戶程序停止并且開始與調(diào)試器通訊, uVision2 調(diào)試器收到請求信號后,8051 就會開始執(zhí)行程序。

由于STC89C51可以通過串口下載程序,所以STC89C51+ISD51是一種不錯的開發(fā)方法,雖然沒有復雜的硬件電路,卻具有仿真器的斷點、單步調(diào)試等功能可謂是“物美價廉“。

 

4、自制仿真器

SST89C54/58(簡稱89C54/58)是美國SST公司推出的多用途51系列單片機,片內(nèi)集成了20 kB/36kBSuperFlashE'PROM程序存儲器,分為BLOCK0(16kB/32kB)BLOCKl(4kB)兩塊。其中,BLOCKl可以映射(Mapping)64kB存儲空間的最高端或最低端,而且,對于程序計數(shù)器來說可以是不可見的。由于其存儲結(jié)構上獨特的優(yōu)點,使得89C54/58非常適合于用做單片機仿真器。仿真器電路設計如圖2所示。圖中U2為串行通信接口芯片MAX232,U189C54/58。89C54/58的監(jiān)控程序通過PC機串行口與KEILC51進行通信,實現(xiàn)實時仿真功能。
  • 上一篇: 常用芯片介紹
  • 下一篇: 單片機學習總結(jié)
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關文章
    網(wǎng)友評論:(只顯示最新5條。)
    關于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內(nèi)容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學會
    中國行業(yè)電子商務100強網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1