单片机解密LPC1768 IAP升级方法 实例 单片机解密测试说明: 本实验通过串口0对开发板进行IAP升级,本工程为引导程序,将开发板上的USB转串口连接到电脑 插上3.2寸彩屏模块,下载程序到开发板,彩屏显示按键功能: INTO键:擦除应用程序 方向键 ok:进行IAP升级,等待串口接收应用程序 方向键 down:运行应用程序 方向键 up:显示菜单 当按下ok键等待串口接收应用程序时,电脑通过超级终端发送预先编译好的应用程序(BIN)格式 以1K Xmodem模式进行发送给开发板,开发板接收完成后显示 Updata Complete,按方向键down 开始执行应用程序
单片机解密单片机源程序如下:
- /*******************************************************************************
- * Company: Wang Electronic Technology Co., Ltd.
- ******************************************************************************
- * 文件名称:main.c
- * 功能说明:IAP引导程序
- * 版 本:V1.1
- * 作 者:jeansonm
- ********************************************************************************
- * 文件名称:
- * 功能说明:
- * 版 本:
- * 更新作者:
- * 日 期:
- * 更新原因:
- ********************************************************************************/
- #include "LPC17xx.h"
- #include "lcd_bsp.h"
- #include "xmodem1k.h"
- #include "iap.h"
- #include <stdio.h>
- #define IMG_START_SECTOR 0x00010000 /* Sector 16 应用程序地址 */
- #define IMG_END_SECTOR 0x00037FFF /* Sector 20 */
- /* Function Prototype */
- static uint32_t load_image(uint8_t *data, uint16_t length);
- /* Character array workspace for GLCD print functions */
- #define MAX_STRING_SIZE 50
- static uint8_t string[3][MAX_STRING_SIZE];
- static uint32_t received_data = 0;
- /* State-machine variable to control application functionality */
- enum state_machine {
- READY = 0,
- MENU,
- ERASE_FLASH,
- FLASH_IMG,
- SHOW
- };
|