主控MCU暫定STC12C5A60S2(手上有不好不用)。
這個協議參考了STC的下載協議。流程如下:
上位機不停以最低波特率發送7F.讓單片機接收到后,校正自己的波特率發生器。
然后單片機回應給上位機單片機的波特率發生器值,讓上位機計算出頻率。
然后上位機計算出單片機最高可用波特率。發送給下位機,并讓下位機切換波特率。下位機切換后發送ACK幀,如果上位機沒有收到或者幀錯誤(單片機超時)。重新校準時鐘,并用最低波特率發送切換幀,但是降低一格波特率。若降到最低則上位機提示誤碼率太高。等到這個握手幀成功后,進入通訊模式。
上位機如果需要編程器保持活躍的方法,就是周期性(20S)的發送NOP幀(寫操作,讀操作除外,如果這兩個操作上位機超時則退回校準哪里),若上位機停止響應,則編程器將退回校準。