仿真器內部的P口等硬件資源和51系列單片機基本是完全兼容的。
仿真主控程序被存儲在仿真器芯片特殊的指定空間內,有一段特殊的地址段用來存儲仿真主控程序,仿真主控程序就象一臺電腦的操作系統一樣控制仿真器的正確運轉。
仿真器和電腦上的上位機軟件(即KEIL)是通過串口相連的,通過仿真器芯片的RXD和TXD負責接收電腦主機發來的控制數據,TXD負責給電腦主機發送反饋信息。控制指令由KEIL發出,由仿真器內部的仿真主控程序負責執行接收到的數據,并且進行正確的處理。進而驅動相應的硬件工作,這其中也包括把接收到的BIN或者其它格式的程序存放到仿真器芯片內部用來存儲可執行程序的存儲單元(這個過程的把程序燒寫到51芯片里面是類似的,只是仿真器的擦寫是以覆蓋形式來做的),這樣就實現了類似編程器反復燒寫來試驗的功能!不同的是通過仿真主控程序可以做到讓這些目標程序做特定的運行,比如單步、指定斷點、指定地址等,并且通過KEIL可時時觀察到單片機內部各個存儲單元的狀態。仿真器和電腦主機聯機后就象是兩個精密的齒輪相互咬合的關系,一量強行中斷這種聯系(比如強行給仿真器手動復位或都撥支聯機線等),電腦就會提示聯機出現問題,這也體現了硬件仿真的特性,即"所見即所得"。這些都是編程器無法做到的。這些給調試、修改、以及生成最終程序創造了比較有力的保證,從而實現較高的效率。來源:
電能質量分析儀 http://m.for815.cn/