基于CAN總線連接的MEGA8遠距離在線升級方案
1、系統(tǒng)總體設計方案
1.1 系統(tǒng)的拓撲結構
CAN(Controller Area Network)即控制器局域網,是目前廣泛應該的總路線之一。CAN總線通信距離限制小,它的直接通信距離最大可達10km,最高通信速率可以達1Mb/s(此時距離最長為40m),節(jié)點數可多達110個。因此它特別適合于工業(yè)遠程過程監(jiān)控設備的互聯和電網絡設備的調試和維護?;?a class="contentlabel" href="http://www.bjwjmy.cn/news/listbylabel/label/CAN總線">CAN總線的分布式控制系統(tǒng)的一般組成模式如圖1所示。上位機PC機通過RS-232連接到總線上某一智能節(jié)點。可以對安裝在現場某些節(jié)點的程序進行遠距離在線升級和改變某些功能,因此利用CAN總線進行單片機的在線編程就顯得非常必要。
根據圖1所示的CAN總線分布式系統(tǒng)的結構,在線編程采用主從結構。智能節(jié)點1為主節(jié)點,其它節(jié)點為從節(jié)點。節(jié)點采用ATMEL公司推出的AVR系列單片機MEGA8,內含8K FLASH程序存儲器,1K的內部SRAM,512字節(jié)的內部EEPROM。為了便于升級,除了提供ISP即在線編程功能(In System Programming)以外,還提供了BOOT引導功能,為實現IAP即在應用中編程(In Application Programming)為系統(tǒng)升級提供了可能。
1、2 節(jié)點升級過程
主節(jié)點在編程監(jiān)控模式下,接收PC機發(fā)送的“編程”命令,若編程節(jié)點為主節(jié)點,則程序可以通過RS-232下載到主節(jié)點,主節(jié)點接收編程數據,完成 FLASH的在線編程,此時,從節(jié)點分別執(zhí)行各自缺省的應用程序。若編程節(jié)點為從節(jié)點,則主節(jié)點就通過CAN總線進行廣播,全部從節(jié)點監(jiān)控包括被選擇節(jié)點 ID號在內的“編程初始信息”,并與各自的節(jié)點ID進行比較,被選擇的從節(jié)點與主節(jié)點和PC機建立編程通信連接,其它從節(jié)點繼續(xù)運行其缺省應用程序,從而實現了在線升級功能??梢?,在從節(jié)點編程模式下,主節(jié)點在PC機的RS-232總線與從節(jié)點的CAN總線之起著路由器的作用。
評論