仿真器出現(xiàn)的原因
1、早期的單片機(jī)內(nèi)部沒(méi)有ROM,比如8031、8032,這種單片機(jī)只能外部擴(kuò)展紫外擦除的EPROM存儲(chǔ)器,就是芯片上帶窗口的ROM。紫外擦除的ROM需要用紫外燈照射較長(zhǎng)時(shí)間(10分鐘或者更多)才能擦掉芯片中的內(nèi)容以便寫(xiě)入新的程序。
2、有的單片機(jī)內(nèi)部ROM是一次寫(xiě)入成型的,比如8751,程序?qū)懭雴纹瑱C(jī)的ROM之后就不能被擦除。
仿真器的種類
1、軟件仿真器
這種方法主要是使用計(jì)算機(jī)軟件來(lái)模擬運(yùn)行,實(shí)際的單片機(jī)運(yùn)行因此仿真與硬件無(wú)關(guān)的系統(tǒng)具有一定的優(yōu)點(diǎn)。用戶不需要搭建硬件電路就可以對(duì)程序進(jìn)行驗(yàn)證,特別適合于偏重算法的程序。軟件仿真的缺點(diǎn)是無(wú)法完全仿真與硬件相關(guān)的部分,因此最終還要通過(guò)硬件仿真來(lái)完成最終的設(shè)計(jì)。
2、硬件仿真器
使用附加的硬件來(lái)替代用戶系統(tǒng)的單片機(jī)并完成單片機(jī)全部或大部分的功能。使用了附加硬件后用戶就可以對(duì)程序的運(yùn)行進(jìn)行控制,例如單步,全速。
單片機(jī)仿真器是什么
單片機(jī)仿真器是指以調(diào)試單片機(jī)軟件為目的而專門設(shè)計(jì)制作的一套專用的硬件裝置。
單片機(jī)仿真器的作用
單片 機(jī)仿真器是一種在電子產(chǎn)品開(kāi)發(fā)階段代替單片機(jī)芯片進(jìn)行軟硬件調(diào)試的開(kāi)發(fā)工具。配合集成開(kāi)發(fā)環(huán)境使用仿真器可以對(duì)單片機(jī)程序進(jìn)行單步跟蹤調(diào)試,也可以使用斷點(diǎn)、全速等調(diào)試手段,并可觀察各種變量、RAM及寄存器的實(shí)時(shí)數(shù)據(jù),跟蹤程序的執(zhí)行情況。
同時(shí)還可以對(duì)硬件電路進(jìn)行實(shí)時(shí)的調(diào)試。利用單片機(jī)仿真器可以迅速找到并排除程序中的邏輯錯(cuò)誤,大大縮短單片機(jī)開(kāi)發(fā)的周期。在現(xiàn)場(chǎng)只利用燒錄器反復(fù)燒寫(xiě)單片機(jī),通過(guò)肉眼觀察結(jié)果進(jìn)行開(kāi)發(fā)的方法大大增加了調(diào)試的難度,延長(zhǎng)了整個(gè)開(kāi)發(fā)周期,并且不容易發(fā)現(xiàn)程序中許多隱含的錯(cuò)誤,特別對(duì)于單片機(jī)開(kāi)發(fā)經(jīng)驗(yàn)不豐富的初學(xué)者來(lái)說(shuō)更加困難,由此可見(jiàn),單片機(jī)仿真器單片機(jī)系統(tǒng)開(kāi)發(fā)中發(fā)揮著重要的作用。
單片機(jī)仿真器的工作原理
仿真器內(nèi)部的P口等硬件資源和51系列單片機(jī)基本是完全兼容的。仿真主控程序被存儲(chǔ)在仿真器芯片特殊的指定空間內(nèi),有一段特殊的地址段用來(lái)存儲(chǔ)仿真主控程序,仿真主控程序就象一臺(tái)電腦的操作系統(tǒng)一樣控制仿真器的正確運(yùn)轉(zhuǎn)。
仿真器和電腦的上位機(jī)軟件(即KEIL)是通過(guò)串口相連的,通過(guò)仿真器芯片的RxD和TxD端口和電腦的串行口做聯(lián)機(jī)通訊,RxD負(fù)責(zé)接收電腦主機(jī)發(fā)來(lái)的控制數(shù)據(jù),TxD負(fù)責(zé)給電腦主機(jī)發(fā)送反饋信息??刂浦噶钣蒏EIL發(fā)出,由仿真器內(nèi)部的仿真主控程序負(fù)責(zé)執(zhí)行接收到的數(shù)據(jù),并且進(jìn)行正確的處理。進(jìn)而驅(qū)動(dòng)相應(yīng)的硬件工作,這其中也包括把接收到的BIN或者其他格式的程序存放到仿真器芯片內(nèi)部用來(lái)存儲(chǔ)可執(zhí)行程序的存儲(chǔ)單元(這個(gè)過(guò)程和把程序燒寫(xiě)到51芯片里面是類似的,只是仿真器的擦寫(xiě)是以覆蓋形式來(lái)做的),這樣就實(shí)現(xiàn)了類似編程器反復(fù)燒寫(xiě)來(lái)試驗(yàn)的功能!
不同的是,通過(guò)仿真主控程序可以做到讓這些目標(biāo)程序,做特定的運(yùn)行,比如單步、指定端點(diǎn)、指定地址的等,并且通過(guò)KEIL可是時(shí)時(shí)觀察到單片機(jī)內(nèi)部各個(gè)存儲(chǔ)單元的狀態(tài)。仿真器和電腦主機(jī)聯(lián)機(jī)后就象是兩個(gè)精密的齒輪互相咬合的關(guān)系,一旦強(qiáng)行中斷這種聯(lián)系(比如強(qiáng)行給仿真器手動(dòng)復(fù)位或者拔去聯(lián)機(jī)線等),電腦就會(huì)提示聯(lián)機(jī)出現(xiàn)問(wèn)題,這也體現(xiàn)了硬件仿真的鮮明特性,即“所見(jiàn)即所得”。這些都是編程器無(wú)法做到的。這些給調(diào)試、修改、以及生成最終程序創(chuàng)造了比較有力的保證,從而實(shí)現(xiàn)較高的效率。
單片機(jī)仿真器的發(fā)展
最早的單片機(jī)仿真器是一套獨(dú)立裝置,具有專用的鍵盤和顯示器,用于輸入程序并顯示運(yùn)行結(jié)果;隨著PC機(jī)的普及,新一代的仿真器大多數(shù)都是利用PC機(jī)作為標(biāo)準(zhǔn)的輸入輸出裝置,而仿真器本身成為微機(jī)和目標(biāo)系統(tǒng)之間的接口而已,仿真方式也從最初的機(jī)器碼發(fā)展到匯編語(yǔ)言、C語(yǔ)言仿真,仿真環(huán)境也與PC機(jī)上的高級(jí)語(yǔ)言編程與調(diào)試環(huán)境非常類似了。
仿真機(jī)一般具有一個(gè)仿真頭,用于取代目標(biāo)系統(tǒng)中的單片機(jī),也就是用這個(gè)插頭模仿單片機(jī),這也是單片機(jī)仿真器名稱的由來(lái)。
目前,隨著單片機(jī)的小型化,貼片化和具有ISP,IAP等功能的單片機(jī)的廣泛應(yīng)用,傳統(tǒng)單片機(jī)仿真器的應(yīng)用范圍也有所縮小。而軟件單片機(jī)仿真器(即單片機(jī)仿真程序)的應(yīng)用逐漸廣泛,單片機(jī)仿真程序即在個(gè)人計(jì)算機(jī)上運(yùn)行的特殊程序,可在一定程度上模擬單片機(jī)運(yùn)行的硬件環(huán)境,并在該環(huán)境下運(yùn)行單片機(jī)目標(biāo)程序,并可對(duì)目標(biāo)程序進(jìn)行調(diào)試、斷點(diǎn)、觀察變量等操作,可大大提升單片機(jī)系統(tǒng)的調(diào)試效率。純軟件單片機(jī)仿真器往往與硬件設(shè)計(jì)程序集成在一起發(fā)布,使得開(kāi)發(fā)者可以對(duì)單片機(jī)硬件與軟件進(jìn)行同步開(kāi)發(fā)。
-
單片機(jī)
+關(guān)注
關(guān)注
6060文章
44835瀏覽量
645251 -
仿真器
+關(guān)注
關(guān)注
14文章
1031瀏覽量
84770
發(fā)布評(píng)論請(qǐng)先 登錄
單片機(jī)仿真器是什么?有何作用
單片機(jī)仿真器的相關(guān)資料下載
單片機(jī)仿真器
單片機(jī)的單CPU仿真器的設(shè)計(jì)

單片機(jī)仿真器
單片機(jī)仿真器有什么用?單片機(jī)仿真器作用介紹
什么是單片機(jī)仿真器_單片機(jī)仿真器有什么用_單片機(jī)仿真器怎么用
單片機(jī)仿真器的介紹及應(yīng)用
使用51單片機(jī)制作簡(jiǎn)易仿真器的教程說(shuō)明

單片機(jī)仿真器

STM32硬件剖析(仿真器的工作原理解析)

單片機(jī)仿真器是什么?有什么作用?

評(píng)論