女人被狂躁到高潮视频免费无遮挡,内射人妻骚骚骚,免费人成小说在线观看网站,九九影院午夜理论片少妇,免费av永久免费网址

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]單片機開發(fā)需要良好的軟件開發(fā)環(huán)境支持,現(xiàn)國內(nèi)外已經(jīng)有若干軟件仿真器支持51系列單片機,但外圍設(shè)備的仿真仍是軟件仿真的一個薄弱環(huán)節(jié)。

摘要:單片機開發(fā)需要良好的軟件開發(fā)環(huán)境支持,現(xiàn)國內(nèi)外已經(jīng)有若干軟件仿真器支持51系列單片機,但外圍設(shè)備的仿真仍是軟件仿真的一個薄弱環(huán)節(jié)。本文針對目前較為流行的Keil公司的51單片機軟件仿真器,介紹如何利用VC++編寫動態(tài)鏈接庫,仿真單片機外圍設(shè)備,從而為軟件仿真器提出一新思路。

    關(guān)鍵詞:單片機 仿真 動態(tài)鏈接庫

1 問題提出

目前,單片機因其諸多特點,在各行各業(yè)中得到了廣泛的應(yīng)用。單片機本身只有一個電子器件,只有和其它器件、設(shè)備有機地組合在一起,并配置適當(dāng)?shù)墓ぷ鞒绦颍ㄜ浖┖?,才能?gòu)成一個單片機的應(yīng)用系統(tǒng)。因此,單片機的開發(fā)包括硬件和軟件兩個部分。單片機本身沒有自開發(fā)功能,必須借助于開發(fā)工具。近年來,隨著個人計算機系統(tǒng)的不斷普及,國內(nèi)外推出了不少以PC機為基礎(chǔ)的單片機開發(fā)系統(tǒng);而軟件模擬仿真器是一種新型的開發(fā)方法。這種方法是在PC機上,用軟件來實現(xiàn)仿真,并配置一系列相關(guān)的服務(wù)程序,使用時,只要在PC機上運行該軟件包,就可以對目標(biāo)碼程序進(jìn)行調(diào)試。對于那些只是用到單片機內(nèi)部資源的設(shè)計來說,可以在軟件仿真器內(nèi)完成仿真工作。但是,由于目前大多數(shù)廠商提供的產(chǎn)品還不能模擬單片機的外圍設(shè)備(如液晶顯示板),所以對于那些用到外部設(shè)備的設(shè)計來說,軟件仿真器則顯得力從心了。在這種情況下,筆者利用硬件軟化的思想及面向?qū)ο蟆⒋翱诘燃夹g(shù),將外圍設(shè)備的功能在軟件中實現(xiàn)。下面就針對Keil公司的51單片機軟件仿真器,介紹如何利用VC++編寫動態(tài)鏈接庫,仿真單片機外圍設(shè)備,從而彌補純軟件仿真的不足,最大限度地發(fā)揮軟件仿真的威力。

2 方案構(gòu)思

目前,Keil公司出品的51系列單片機軟件仿真器已經(jīng)成為國內(nèi)流行的軟件仿真器之一。Keil uVision2是一個標(biāo)準(zhǔn)的Windows應(yīng)用程序,集成了C51編譯器、A51匯編器、L51連接器、實時操作系統(tǒng)、項目管理器及調(diào)試器等,可以完成編輯、編譯、鏈接、調(diào)試及仿真等整個開發(fā)流程,可以用IDE編譯C或匯編源文件。

而單片機軟件的設(shè)計總要和外部事件打交道,比如響應(yīng)外部中斷,檢測某一引腳上輸入信號電平的高低,完成A/D轉(zhuǎn)換等;同時某些情況下,還要根據(jù)外部信號輸出不同的控制信號。如果使用硬件仿真系統(tǒng)或在線調(diào)試器時,已有一個實實在在硬件環(huán)境,在調(diào)試時,可以利用目標(biāo)系統(tǒng)提供給單片機各種信號的輸入,以便測試單片機的實際運行情況。如果使用軟件仿真器,沒有任何硬件環(huán)境可以給出這些外部信號,所以外部信號的輸入是面臨的一個難題;此外單處常常需要和其它常用器件有機地組合在一起使用,如A/D芯片、液晶顯示板等,如何仿真這些常用器件的功能,也是面臨的一個難題。

一種解決的方法是,利用Keil提供的調(diào)試函數(shù)實現(xiàn)。調(diào)試函數(shù)可以模擬外部設(shè)備產(chǎn)生的給CPU的模擬和脈沖輸入信號,還可以產(chǎn)生外部中斷,周期性更新模擬輸入,將串行數(shù)據(jù)送入片內(nèi)串行口,解決了外部信號的輸入問題。但dScope只支持特殊命令語句及一些特定的表達(dá)式,需要花費時間掌握調(diào)試命令;而且利用調(diào)試函數(shù)不能仿真外圍設(shè)備的界面,不直觀。

另一種解決的方法是,利用Keil提供的接口AGSI(Advanced Generic Simulator Interface),用VC++編寫動態(tài)鏈接庫,仿真單片機外圍設(shè)備,從而解決外部信號的輸入問題及界面問題。Keil提供的SDK是相當(dāng)于Keil UV2仿真環(huán)境的一個插件,以DLL的形式提供在純軟件仿真模式下,仿真A/D芯片、仿真液晶顯示板及鍵盤輸入等功能,在PC上就可以開發(fā),調(diào)試大部分與界面、功能相關(guān)的程序,而不須燒片子來調(diào)試、開發(fā),效率將大在提高,成本將大大降低。

另一方面,與單片機配合使用的接口芯片比較固定,接法相對也比較固定,由用戶自主開發(fā)DLL,模塊可以共享,使仿真外圍芯片和器件的DLL不斷豐富。利用VC++的強大功能以及面向?qū)ο螅翱诘燃夹g(shù),可以擴展外圍設(shè)備的仿真功能,實現(xiàn)靈活、通用的面板功能,解決界面不直觀的問題。

圖3 仿真實現(xiàn)

3 實例分析

下面以傳送帶控制系統(tǒng)為例,介紹如何編寫DLL實時仿真單片機的外圍設(shè)備,其方法具有普遍意義。

3.1 傳送帶控制系統(tǒng)的組成原理

圖1表示了傳送帶控制系統(tǒng)的示意圖。(漏頭中是小球。)

①料箱隨傳送帶按運動方向向前移動。

②當(dāng)料箱移動到漏斗下方進(jìn),傳感器B反應(yīng),傳送帶停止運行,漏頭落料門打開,單片機對落下的小球計數(shù)(通過傳感器A計數(shù))。

③當(dāng)落下的小球數(shù)等于裝箱數(shù)目時,關(guān)閉漏斗門,傳送帶移動。

圖4 Debug頁

    3.2 仿真的具體實現(xiàn)

圖2是單片機的硬件電路圖。此例中需要仿真的外圍設(shè)備有:鍵盤(外供用戶輸入裝箱的小球數(shù)目)、傳感器(判斷料箱是否移動到漏斗下方以及計數(shù))和其它(如傳送帶)。

具體實現(xiàn)如下:

首先是在調(diào)試函數(shù)中設(shè)置斷點,以便查看存儲器內(nèi)容以及控制目標(biāo)文件與DLL庫的執(zhí)行順序。其次是DLL的編寫:

①加入AGSI.h(其中定義了外部仿真的接口及函數(shù)的原型)。

②寫初始代碼。包括創(chuàng)建AGSI,定義菜單及對話框,定義SFR、VTR,定義中斷復(fù)位。

③建立用戶界面。加入按鈕(代表鍵盤)、指示燈圖片(代表傳感器)等。

④編寫仿真代碼,如圖3所示。

⑤接口。

*VC中打開菜單Project->Setting,選取Custom Builder頁,將編制好的DLL文件拷貝到Keil公司指定的安裝路徑..下,然后配置環(huán)境。

*keil中打開菜單project->Options for Target,選取Debug頁,按圖4輸入。

    ⑥仿真結(jié)果。啟動dScope,將自動載入8051仿真動態(tài)鏈接庫S8051.DLL及自行設(shè)計的外部設(shè)備的仿真動態(tài)鏈接庫KEY.DLL。用戶輸入程序,編譯成功后進(jìn)入調(diào)試狀態(tài),打開菜單Peripheral,會多出一個Interface。通過這個界面可以完成該軟件的設(shè)計,而不需要外圍設(shè)備。最終界面如圖5所示。

4 小結(jié)

本文介紹了利用DLL仿真單片機外圍設(shè)備的方法,其設(shè)計思想具一定的普遍性。軟件仿真在硬件診斷、實時仿真等方面存在不足;但在教學(xué)研究中或沒有硬件情況下,應(yīng)用前景廣泛,對于單片機教學(xué)以及程序開發(fā)具有一定的指導(dǎo)意義。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

8位單片機在嵌入式設(shè)計領(lǐng)域已經(jīng)成為半個多世紀(jì)以來的主流選擇。盡管嵌入式系統(tǒng)市場日益復(fù)雜,8位單片機依然不斷發(fā)展,積極應(yīng)對新的挑戰(zhàn)和系統(tǒng)需求。如今,Microchip推出的8位PIC?和AVR?單片機系列,配備了先進(jìn)的獨立...

關(guān)鍵字: 單片機 嵌入式 CPU

前不久,新思科技已經(jīng)正式對Ansys完成了整個收購。一家是IP和IC設(shè)計方面?zhèn)鹘y(tǒng)三強之一,一家是仿真與分析領(lǐng)域的老牌技術(shù)專家。雙方的結(jié)合也是呼應(yīng)整個技術(shù)潮流,為客戶提供從硅片到系統(tǒng)的完整解決方案。而且,借助Ansys的強...

關(guān)鍵字: Synopsis 新思科技 Ansys 仿真 汽車 AI

在嵌入式系統(tǒng)開發(fā)中,程序燒錄是連接軟件設(shè)計與硬件實現(xiàn)的關(guān)鍵環(huán)節(jié)。當(dāng)前主流的單片機燒錄技術(shù)已形成ICP(在電路編程)、ISP(在系統(tǒng)編程)、IAP(在應(yīng)用編程)三大技術(shù)體系,分別對應(yīng)開發(fā)調(diào)試、量產(chǎn)燒錄、遠(yuǎn)程升級等不同場景。...

關(guān)鍵字: 單片機 ISP ICP IAP 嵌入式系統(tǒng)開發(fā)

在嵌入式系統(tǒng)開發(fā)中,看門狗(Watchdog Timer, WDT)是保障系統(tǒng)可靠性的核心組件,其初始化時機的選擇直接影響系統(tǒng)抗干擾能力和穩(wěn)定性。本文從硬件架構(gòu)、軟件流程、安全規(guī)范三個維度,系統(tǒng)分析看門狗初始化的最佳實踐...

關(guān)鍵字: 單片機 看門狗 嵌入式系統(tǒng)

本文中,小編將對單片機予以介紹,如果你想對它的詳細(xì)情況有所認(rèn)識,或者想要增進(jìn)對它的了解程度,不妨請看以下內(nèi)容哦。

關(guān)鍵字: 單片機 開發(fā)板 Keil

隨著單片機系統(tǒng)越來越廣泛地應(yīng)用于消費類電子、醫(yī)療、工業(yè)自動化、智能化儀器儀表、航空航天等各領(lǐng)域,單片機系統(tǒng)面臨著電磁干擾(EMI)日益嚴(yán)重的威脅。電磁兼容性(EMC)包含系統(tǒng)的發(fā)射和敏感度兩方面的問題。

關(guān)鍵字: 單片機 電磁兼容

以下內(nèi)容中,小編將對單片機的相關(guān)內(nèi)容進(jìn)行著重介紹和闡述,希望本文能幫您增進(jìn)對單片機的了解,和小編一起來看看吧。

關(guān)鍵字: 單片機 復(fù)位電路

在這篇文章中,小編將為大家?guī)韱纹瑱C的相關(guān)報道。如果你對本文即將要講解的內(nèi)容存在一定興趣,不妨繼續(xù)往下閱讀哦。

關(guān)鍵字: 單片機 異常復(fù)位

今天,小編將在這篇文章中為大家?guī)韱纹瑱C的有關(guān)報道,通過閱讀這篇文章,大家可以對它具備清晰的認(rèn)識,主要內(nèi)容如下。

關(guān)鍵字: 單片機 仿真器

單片機將是下述內(nèi)容的主要介紹對象,通過這篇文章,小編希望大家可以對它的相關(guān)情況以及信息有所認(rèn)識和了解,詳細(xì)內(nèi)容如下。

關(guān)鍵字: 單片機 中斷 boot
關(guān)閉