我的一些見解,不一定是完全正確的
1
isp
是指在系統編程,
支持在板上下載程序到片內的FLASH
不再需要燒錄器把編好的代碼文件燒進去了,
跟是否螚單步調試無關。
2。
單片機模擬器就是一個設備,
設備上一個模擬頭的管腳和要模擬的MCU
是一樣的,
把模擬頭接在原來安裝MCU的地方來代替MCU
,
然後再電腦端的模擬程序來模擬MCU各個管腳的變化,
達到測試MCU外圍元件的目的,
到這一步的時候已經是程序完成了,主要是測試個外圍元件的歌者狀況是否正常。
下載器只要是吧編譯好的目標代碼
(bin)
燒錄到單片機的片內flash;
不是一個東西的
3
當然在調試的時候
Keil
需要設置,
其實Keil的調試時調用了一個DLL文件,
把系統IO輸出的資料送到DLL
文件裡面,有DLL
文件處理驅動相應的效果給人視覺上的變化。
而硬體模擬器提供的DLL
能把Keil的輸入輸出,處理後發送到模擬頭的各引腳,來驅動外圍器件。
4
軟體模擬如protus之類的
不能完全替代硬體模擬。
因為在protus裡面所有的器件都是理想狀態的,
跟實際過程中是有一定的區別的。
例如
用動態掃描的方式來驅動數碼管,
在protus模擬裡面可能看不清,因為裡面的數碼管輝光長短跟實際的不同。
所以在軟體裡面可能顯示是正常的在模擬裡面可能會閃爍,
也可能軟體模擬是很閃爍,
實際上效果也很好了。
一般來說,
用軟體模擬來調試程序的邏輯問題,
來保證程序能夠正確執行。硬體模擬來解決和外圍器件的配合問題,
如延時的長短,
和抗干擾問題,
以及老化試驗
5
你是指模擬頭嗎,針腳數目和要模擬的MCU種類有關
ISP
跟模擬器是無關的。。
2. 單片機的 在系統可編程ISP與在應用可編程IAP是什麼_有什麼作用
ISP是In System Programming,在線編程
IAP是In Application Programming在應用編程
ISP一般是通過單片機專用的串列編程介面對單片機內部的Flash存儲器進行編程,
IAP技術是從結構上將Flash存儲器映射為兩個存儲體,當運行一個存儲體上的用戶程序時,可對另一個存儲體重新編程,之後將控制從一個存儲體轉向另一個。
ISP的實現一般需要很少的外部電路輔助實現,
IAP的實現更加靈活,通常可利用單片機的串列口接到計算機的RS232口,通過專門設計的固件程序來編程內部存儲器。
3. 什麼叫:單片機支持 ISP編程
在線編程。基本上是把編程器、模擬器合在一起了
4. 新唐單片機無法ISP編程
這個應該是設置不對,你看看有沒有寫ISP觸發命令
並且開始的時候先要把中斷關閉,等燒寫完畢後在把中斷打開
單片機的ISP功能就是通過IAP技術來實現的,即片子在出廠前就已經有一段小的boot程序在裡面,片子上電後,開始運行這段程序,當檢測到上位機有下載要求時,便和上位機通信,然後下載數據到存儲區。所以開始的時候還是先要運行主程序的~