# STM32_IAP_1 **Repository Path**: luospring/STM32_IAP_1 ## Basic Information - **Project Name**: STM32_IAP_1 - **Description**: STM32实现Bootloader的程序,初级实现:串口接收+flash烧写+程序跳转 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-07-17 - **Last Updated**: 2025-07-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README Bootloader初阶: 1. 使用串口RXNE中断接收数据,用IDLE中断判断接受完; 2. 上电5s内按下按键,则等待接收bin文件,更新app然乎跳转到app,否则直接跳转到app; 3. 采用LL库,由于LL库没有flash的库,把标准库flash部分拿过来用,标准库flash部分编译报错 是因为STM32F411CEU6没有bank1和bank2模式,直接把那三个函数注释掉就可以用了; 4. IAP.c里面主要实现了程序跳转的函数:判断栈地址合法性、设置堆栈指针,利用函数指针跳转到app程序的复位函数; 以及通过flash地址判断其扇区,根据flash地址和size连续擦除扇区,根据flash地址、buffer和size写入app bin