• 大小: 1.43MB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2021-03-29
  • 语言: 其他
  • 标签: bootloader  ymodem  

资源简介

用ymodem协议,IAP烧写,上位机与stm32通信

资源截图

代码片段和文件信息

/*-------------------------------------------------------------------------

                            接口部分
                            
                            
-------------------------------------------------------------------------*/

#include 

#include “stm32f10x_flash.h“
#include “YModem.h“
#include “common.h“
#include “Download.h“
#include “bsp.h“






/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
/* Private macro -------------------------------------------------------------*/
/* Private variables ---------------------------------------------------------*/
static FunVoidType JumpToApplication;
static FunVoidType FunReceEnter = NULL;
static FunVoidType FunReceExit = NULL;
static FunWriteType FunWrite = NULL;
static FunProcessType FunCurrentProcess = NULL;

static u32 m_JumpAddress;
static u32 m_ProgramAddr = ApplicationAddress;
static volatile SerialBuffType m_ReceData = SerialBuffDefault();

static volatile eCOM_STATUS m_Mode = eCOMChoose;
static vu32 m_FlashAddress = 0;
static vu32 m_ExtFlashCounter = 0;       //外部FLASH擦除的扇区号

/* Private function prototypes -----------------------------------------------*/
/* Private functions ---------------------------------------------------------*/



/*******************************************************************************
* Function Name :static void Print(u8 *str)
* Description   :打印消息  串口发送
* Input         :
* Output        :
* Other         :
* Date          :2013.03.01
*******************************************************************************/
static void Print(u8 *str)
{
    u16 len = 0;

    len = strlen((const char *)str);

    while (BspUsart1Send(str len) != TRUE);
}


/*******************************************************************************
* Function Name :void ReceOneChar(u8 ReceCharacter)
* Description   :接收到一个字符
* Input         :
* Output        :
* Other         :
* Date          :2013.02.19
*******************************************************************************/
static void ReceOneChar(u8 ReceCharacter)
{
    if (m_ReceData.ind >= USART1_BUFF_LANGTH)
        return;
        
    if (m_ReceData.len > 0)
        return;
        
    m_ReceData.buf[m_ReceData.ind++] = ReceCharacter;
    BspTim3Open();      //定时器重新计数
}

/*******************************************************************************
* Function Name :static void TimEndHandle(void)
* Description   :接收字符超时回调函数
* Input         :
* Output        :
* Other         :
* Date          :2013.02.19
*******************************************************************************/
static void TimEndHandle(void)
{
    BspTim3Close();

    m_ReceData.len = m_ReceData.ind;
    m_ReceData.ind = 0;
}



/*******************************************************************************

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-02-10 20:55  bootloader ymodem\
     目录           0  2015-02-10 20:11  bootloader ymodem\Doc\
     文件        1393  2013-03-14 21:43  bootloader ymodem\Doc\note.txt
     文件       69755  2013-03-17 17:18  bootloader ymodem\JlinkLog.txt
     文件         573  2013-01-27 15:50  bootloader ymodem\JlinkSettings.ini
     目录           0  2015-02-10 20:11  bootloader ymodem\List\
     文件       26825  2013-03-17 17:17  bootloader ymodem\List\cortexm3_macro.lst
     文件      145769  2015-02-10 20:24  bootloader ymodem\List\Project.map
     文件       40258  2013-03-17 17:17  bootloader ymodem\List\stm32f10x_vector.lst
     目录           0  2015-02-10 20:24  bootloader ymodem\Obj\
     文件        6959  2013-01-27 14:12  bootloader ymodem\Obj\api.crf
     文件          72  2013-01-27 14:12  bootloader ymodem\Obj\api.d
     文件       20916  2013-01-27 14:12  bootloader ymodem\Obj\api.o
     文件         314  2013-01-27 14:12  bootloader ymodem\Obj\api.__i
     文件       57603  2015-02-10 20:24  bootloader ymodem\Obj\bsp.crf
     文件         703  2015-02-10 20:24  bootloader ymodem\Obj\bsp.d
     文件       81144  2015-02-10 20:24  bootloader ymodem\Obj\bsp.o
     文件       46620  2013-03-14 21:25  bootloader ymodem\Obj\bspspi1.crf
     文件         471  2013-03-14 21:25  bootloader ymodem\Obj\bspspi1.d
     文件       53764  2013-03-14 21:25  bootloader ymodem\Obj\bspspi1.o
     文件       67397  2015-02-10 20:24  bootloader ymodem\Obj\bsptime2.crf
     文件         539  2015-02-10 20:24  bootloader ymodem\Obj\bsptime2.d
     文件       79164  2015-02-10 20:24  bootloader ymodem\Obj\bsptime2.o
     文件       67635  2015-02-10 20:24  bootloader ymodem\Obj\bsptime3.crf
     文件         539  2015-02-10 20:24  bootloader ymodem\Obj\bsptime3.d
     文件       82744  2015-02-10 20:24  bootloader ymodem\Obj\bsptime3.o
     文件       57788  2015-02-10 20:24  bootloader ymodem\Obj\bspusart1.crf
     文件         731  2015-02-10 20:24  bootloader ymodem\Obj\bspusart1.d
     文件       71428  2015-02-10 20:24  bootloader ymodem\Obj\bspusart1.o
     文件       39834  2015-02-10 20:24  bootloader ymodem\Obj\common.crf
     文件         649  2015-02-10 20:24  bootloader ymodem\Obj\common.d
............此处省略219个文件信息

评论

共有 条评论