1. 程式人生 > 其它 >CH573 CH582 CH579 固定LIB OTA

CH573 CH582 CH579 固定LIB OTA

OTA升級,以ble_uart為例(該工程是在ble_uart上修改的)

1、找到例程中的這三個工程,分別將這三個工程中的.hex取出;

1、開啟ble_uart工程,將Ld中link.Ld替換成OnlyUpdateApp_Peripheral工程Ld中link.ld.

1、修改ble_uart工程

新增跳轉函式Jump_OTA( void )

/* OTA 升級標誌 */
#define IMAGE_OTA_FLAG                  0x03
/* 存放在DataFlash地址,不能佔用藍芽的位置 */
#define OTA_DATAFLASH_ADD               0x00077000-FLASH_ROM_MAX_SIZE
/*
flash的資料臨時儲存 */ __attribute__((aligned(8))) uint8 block_buf[16]; /******************************************************************************* * Function Name : Jump_OTA * Description : 跳轉OTA升級 * Input : * Output : none * Return : none ******************************************************************************
*/ void Jump_OTA( void ) { UINT16 i; UINT32 ver_flag; /* 讀取第一塊 */ EEPROM_READ( OTA_DATAFLASH_ADD, (PUINT32) &block_buf[0], 4 ); /* 擦除第一塊 */ EEPROM_ERASE(OTA_DATAFLASH_ADD,EEPROM_PAGE_SIZE); /* 更新Image資訊 */ block_buf[0] = IMAGE_OTA_FLAG; /* 程式設計DataFlash */ EEPROM_WRITE(OTA_DATAFLASH_ADD, (PUINT32)
&block_buf[0], 4); /* 軟復位 */ SYS_ResetExecute(); }

修改配置:刪除LIB路徑,新增全域性巨集定義CH57xBLE_ROM

重新編譯工程ble_uart,並將.hex檔案取出。

5、開啟合併工具

6、將這個.hex檔案放進合併工具的四個file中(可以不按順序),點選合併檔案。

7、開啟wchISPTool工具,將合併生成的.bin檔案下載。

8手機端安裝ch573升級工具;

9、將要升級的ble_uart工程的.hex檔案儲存到手\Android\data\cn.wch.ch573update\files\CH573OTA\imageA

10、開啟BLE除錯助手,連線對應的藍芽;服務2的通道1傳送資料(任意),藍芽顯示斷開;

11、手機開啟ch573升級工具,連線OTAOTAO_OTAOTA_OTA;

12、點選GETINFO,再點選IMAGEA,選擇.hex檔案

13、點選START開始升級,直到升級完成。