新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機的單CPU仿真器的設計

        單片機的單CPU仿真器的設計

        作者: 時間:2016-09-12 來源:網絡 收藏

        主程序如下:

        MOV SCON,#50H ;串口方式 1

        MOV TMOD,#20H ;T1 方式 1

        MOV TL1,#0FDH ;波特率 9600 的常數

        MOV TH1,#0FDH

        SETB TR1 ;開中斷

        SETB ET1

        SETB ES

        SETB EA

        系統“寫”時用如下指令:

        MOVX @DPTR,A

        MOVX @Ri, A

        在中斷服務子程序中,為區別所接收的信號是聯絡信號還是字節數、是數據還是校驗和,需要設立不同的標志位如下:

        FLAG0 BIT 00H ;接收聯絡信號標志位

        FLAG1 BIT 01H ;接收字節數標志位

        FLAG2 BIT 02H ;接收數據標志位

        FLAG3 BIT 03H ;接收文件結束標志位

        程序流程如圖3所示,其中R7為接收到的字節數,接收的數據一定要存入片外RAM從0000H開始的單元中。當復位后,把RAM當作程序存儲器時,PC是從0000H開始的。

        圖3 接收中斷服務子程序流程圖

        幾點討論

        (1) 系統中不需要單獨的仿真器電源,也不需要晶振電路。

        (2) 下位機的片外存儲器在重復寫數時不用擦除,每次重新下載程序時,總是用覆蓋的方式。新下載的程序都有END為結束,就算新下載的程序比原來的短,也不會執行多余的代碼。

        (3) 在實際中,可以進一步改進電路,當文件下載完之后,通過串口備用的信號線產生控制信號來控制和復位,從而使得全過程均由上位機控制。

        (4) 由于內部結構的限制,被仿真的產品不能擴展片外的程序存儲器,但由于片外可以擴展64KB的數據存儲器,文中只用了32KB,因此還可以擴展一定的外設。

        (5) 被仿真產品的E(--)A(--)的接法有一定的限制,不能直接接地或接電源正極,實際中只要加上一個合適的限流電阻(如10K?)就可以了。實際上這種方案可以適用于任何可以外擴存儲器的單片機。

        結束語

        對以上的進行分析不難發現,整個系統各個功能模塊技術非常成熟:在硬件方面,各子電路均有現存的電路套用,而且各個元器件的參數容易確定;在軟件方面,僅涉及到COM口的串行通信程序及上位機的界面程序。在實際的制作過程中,系統的元器件數目少且價格低廉,容易調試,成功率高,性能穩定。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 淮滨县| 西平县| 黄浦区| 稻城县| 马龙县| 长丰县| 阳高县| 青海省| 蓬溪县| 沾益县| 鸡泽县| 静安区| 漠河县| 文成县| 新巴尔虎右旗| 宜黄县| 自贡市| 高要市| 淮阳县| 长汀县| 苏尼特左旗| 班戈县| 罗定市| 绥棱县| 称多县| 利津县| 磴口县| 富宁县| 淮北市| 秦安县| 怀宁县| 府谷县| 林甸县| 景洪市| 临安市| 遂平县| 黄平县| 云龙县| 镇坪县| 久治县| 甘德县|