MSP430單片機串口的程序升級方法
摘要:介紹了一種MSP430單片機通過串口升級程序的方法,并在MSP430F5438上得以實現(xiàn)。通過實驗,證明此方法穩(wěn)定、可靠,避免了利用仿真器更新程序的繁瑣,提高了效率。
關(guān)鍵詞:MSP430F5438;串口;程序更新
隨著性能的不斷提高以及成本的降低,單片機在各個領(lǐng)域都得到了廣泛的應(yīng)用。尤其在信號的控制和處理方面,單片機以其超低的功耗、簡單的操作成為設(shè)計者的首選。TI公司推出的MSP430x5xx系列單片機具有低電壓、低功耗、高速處理能力以及配置靈活的接口等特點,是當(dāng)今主流單片機之一。
同其他處理器一樣,單片機正常工作除了需要硬件電路以外,還需要相應(yīng)的用戶應(yīng)用程序。但應(yīng)用程序在調(diào)試階段以及實際使用時往往都需要更新,常規(guī)的方法需要打開機箱,將仿真器與單片機連接好,再更新程序。這種步驟比較繁瑣,如果操作不當(dāng)還會損壞設(shè)備。因此,如果能通過單片機已有的簡單接口(如串口)更新應(yīng)用程序,那么將給單片機的使用帶來更大的方便。
1 總體思想
首先通過仿真器向單片機中寫入一段小程序,稱之為Bootloader程序。這個程序不是用戶的應(yīng)用程序,它的作用有兩個:第一是在上電的一小段時間里實時檢測串口,如果有上位機發(fā)出的更新程序命令,就發(fā)送握手信號,通知上位機發(fā)送更新代碼,并將收到的更新代碼寫入單片機相應(yīng)的Flash中;第二個作用是當(dāng)檢測到有應(yīng)用程序存在時,跳轉(zhuǎn)到應(yīng)用程序的入口地址,執(zhí)行應(yīng)用程序。其流程如圖1所示。
上位機程序(VC++語言編寫)的功能是,當(dāng)用戶發(fā)出更新程序的指令后,在一段時間內(nèi)連續(xù)發(fā)送更新程序命令。如果收到單片機的應(yīng)答信號,表示單片機準(zhǔn)備開始接收更新代碼。此時上位機讀取已選擇的代碼文件,分段發(fā)給單片機。其流程如圖2所示。
評論