你問題還真多,下面一個一個給你回答:
1.編程器就是將你電腦上寫好並生成可執行文件的程序代碼寫入到你的單片機程序儲存器里邊。這本身是一個實物大類。
2.編程器就會有與電腦的介面,而與電腦的介面常用的是串口,現在用的STC單片機編程器有一種是USB介面的,其實質是USB介面模擬的串口,所以USB轉串口就是指用USB介面模擬串口。
3.ISP是一種通信協議,說簡單點就是時序問題,只有時序正確,雙方才能進行通信。
4.ISP3.8這個軟體應該可以燒寫支持ISP程序下載的單片機。但你用的是USB轉串口的硬體,所以你所選單片機應該是STC51系列單片機,而不是AT51系列單片機,兩者程序下載方式是不一樣的。如果要燒寫AT51系列單片機必須用專用的編程器。
5.51單片機的指令周期長,AVR的指令周期短,在同樣的外部時鍾下,AVR的運行速度比51的快很多。不過現在的STC51系列的單片機在指令周期方面也縮短了很多。在這兒一兩句說不清楚。51單片機是一個系列,按各自的配置(比如程序存儲器大小,A/D路數等)分有很多種型號,所以在51選型上,你要清楚自己會用到一些什麼功能。
⑵ 怎樣讀51單片機內程序
ISP_CMD指令設定為0000 001,意味著啟動了從51單片機的flash區讀取用戶應用程序的過程。這一指令在編程中至關重要,因為它決定了如何安全、准確地讀取存儲在51單片機內部flash區和數據flash區的代碼與數據。在進行這一操作時,需要確保單片機與編程器之間有正確的連接,以便順利傳輸數據。
首先,需要確保單片機處於ISP(In-System Programming,即在線編程)模式。ISP模式允許用戶在不拆除晶元的情況下進行編程和調試。完成硬體連接後,通過發送ISP_CMD指令0000 001,啟動讀取程序。這一指令告訴單片機准備開始從flash區讀取數據。在讀取過程中,單片機會將數據從flash區傳輸到編程器,編程器再將數據傳輸到計算機,從而實現程序的讀取。
值得注意的是,在讀取過程中,程序代碼和數據會被逐一讀取。程序代碼通常存儲在應用程序flash區,而數據則存儲在數據flash區。確保從這兩個區域分別讀取數據,可以確保獲取完整的應用程序和數據。在讀取完成後,編程器將生成一個二進制文件,包含了從51單片機中讀取的所有程序代碼和數據。
此外,為了保證讀取過程的順利進行,還需要注意一些細節。例如,確保單片機的電源穩定,避免讀取過程中的數據丟失或損壞。同時,還需要確保編程器與單片機之間的連接穩定,以減少數據傳輸中的錯誤。
總之,通過設置ISP_CMD指令為0000 001,可以有效地讀取51單片機中的用戶應用程序和數據。這一過程需要仔細操作,確保連接正確,電源穩定,以及數據傳輸的准確性。