編寫STC單片機的ISP協(xié)議的方法介紹
4與計算機的通信協(xié)議
升級用戶代碼時,需要與計算機進(jìn)行通信,一般采用RS232串行通信,數(shù)據(jù)協(xié)議采用簡單協(xié)議.此協(xié)議參考了ADuC812單片機的ISP數(shù)據(jù)協(xié)議.(ADuC812單片機硬件內(nèi)置ISP程序).
(1)復(fù)位命令(計算機→單片機)
計算機發(fā)送4字節(jié)復(fù)位命令:21H,5AH,00H,A6H,單片機返回復(fù)位信息.
(2)復(fù)位信息(單片機→計算機)
復(fù)位信息為25字節(jié),前3字節(jié)為單片機公司特征字符(如:“ADI”“SST”“STC”),最后1字節(jié)為校驗和.
(3)數(shù)據(jù)包格式(計算機→單片機)
計算機發(fā)送數(shù)據(jù)包格式:07H、0EH、長度、數(shù)據(jù)、校驗和(長度與數(shù)據(jù)的校驗和).
(4)擦除命令
計算機發(fā)送數(shù)據(jù)包,其中數(shù)據(jù)只有1字節(jié),內(nèi)容為:字符“A”或“C”.單片機擦除用戶程序區(qū)后返回1字節(jié)06H表示成功;05H表示失敗.
(5)編程命令
計算機發(fā)送數(shù)據(jù)包,其中數(shù)據(jù)內(nèi)容:“W”,00H,地址高字節(jié),地址低字節(jié),程序數(shù)據(jù).單片機返回1字節(jié)06H表示成功;05H表示失敗.
(6)運行用戶程序
計算機發(fā)送數(shù)據(jù)包,其中數(shù)據(jù)只有1字節(jié),內(nèi)容為:字符“U”.單片機返回1字節(jié)06H表示成功,然后跳轉(zhuǎn)到用戶程序運行.
本刊網(wǎng)站提供了計算機下載軟件的C程序源代碼Download.C.
結(jié)語
根據(jù)以上ISP程序設(shè)計思路和實例,大家可以修改ISP初始代碼,或者豐富它的ISP功能(讀功能、口令控制等),嘗試設(shè)計自己的ISP程序,定能為自己的系統(tǒng)增色不少.本文引用地址:http://www.ex-cimer.com/article/171695.htm
評論