KMPROG v2 串口通訊方式
這個協(xié)議參考了STC的下載協(xié)議。流程如下:
本文引用地址:http://www.2s4d.com/article/201611/323417.htm上位機(jī)不停以最低波特率發(fā)送7F.讓單片機(jī)接收到后,校正自己的波特率發(fā)生器。
然后單片機(jī)回應(yīng)給上位機(jī)單片機(jī)的波特率發(fā)生器值,讓上位機(jī)計算出頻率。
然后上位機(jī)計算出單片機(jī)最高可用波特率。發(fā)送給下位機(jī),并讓下位機(jī)切換波特率。下位機(jī)切換后發(fā)送ACK幀,如果上位機(jī)沒有收到或者幀錯誤(單片機(jī)超時)。重新校準(zhǔn)時鐘,并用最低波特率發(fā)送切換幀,但是降低一格波特率。若降到最低則上位機(jī)提示誤碼率太高。等到這個握手幀成功后,進(jìn)入通訊模式。
上位機(jī)如果需要編程器保持活躍的方法,就是周期性(20S)的發(fā)送NOP幀(寫操作,讀操作除外,如果這兩個操作上位機(jī)超時則退回校準(zhǔn)哪里),若上位機(jī)停止響應(yīng),則編程器將退回校準(zhǔn)。
評論