ISP器件W78E516及其在系統編程的實(shí)現
實(shí)現ISP操作的軟件由兩部分組成:一是微控制器部分(包括APROM和LDROM中的程序),用MCS-51匯編語(yǔ)言編寫(xiě);二是PC機部分,由Microsoft Visual Basic開(kāi)發(fā)而來(lái),主要應用MSCOMM控件與W78E516通信,完成數據下載。
微控制器上電后一般從64KB APROM中啟動(dòng)。64KB APROM中,包括了在系統編程子程序,還有其他檢測記錄系統的子程序。微控制器必須讀取撥碼盤(pán)的輸入,決定進(jìn)入哪一種工作狀態(tài),是否進(jìn)行在系統編程。值得注意的是,在寫(xiě)CHPCON寄存器時(shí),應將其第4位置1,使AUX-RAM有效;64KB APROM中的程序應該始終包含圖3流程所示的程序段,以使系統具有進(jìn)入下一次在系統編程的能力。4KB LDROM中的程序主要作用是接收來(lái)自PC機的下載數據,并控制各項ISP操作。執行在系統編程時(shí),利用SFRAL、SFRAH、SFRFD、SFRCN這幾個(gè)特殊功能寄存器,選擇在系統編程的地址單元,準備待寫(xiě)入的數據,選擇待執行的操作類(lèi)型。當從F04BOOT模式啟動(dòng)時(shí),軟件復位失效,必須硬件復位。在系統編程的數據由在此期間仍能正常工作的串行通信口進(jìn)入。這部分流程如圖6所示。
PC機通過(guò) RS-232串口發(fā)送數據。每一幀的前3個(gè)字節都為7EH,作為幀同步信號。隨后2個(gè)字節內容均為幀指針,表明本幀數據的幀號。PC機在發(fā)送1幀數據后,等待單片機發(fā)回確認數據幀,該幀數據應包括數據接收正確與否的標志及接收到的數據的幀號。數據幀格式及PC機通信軟件流程分別如圖7、圖8所示。
評論