当前位置: 首页 > news >正文

大鱼直播哈尔滨百度网站快速优化

大鱼直播,哈尔滨百度网站快速优化,鞍山专业做网站公司,wordpress 主机安装教程资料下载: https://download.csdn.net/download/wouderw/88714985 一、概述 关于IAP的原理和Ymodem协议#xff0c;本文不做任何论述#xff0c;本文只论述bootloader如何使用串口通过Ymodem协议接收升级程序并进行IAP升级#xff0c;以及bootloader和主程序两个工程的配置…    资料下载: https://download.csdn.net/download/wouderw/88714985 一、概述 关于IAP的原理和Ymodem协议本文不做任何论述本文只论述bootloader如何使用串口通过Ymodem协议接收升级程序并进行IAP升级以及bootloader和主程序两个工程的配置注意事项。 实验板子主芯片GD32F103C8T6 二代码 1Bootloader部分 主要流程如下 1上电开机之后会先运行bootloader引导程序bootloader检测串口是否有数据超时没有收到收据会直接跳转进入主程序中超时时间使用定时器设置可根据产品需求和使用场景设置一个合理的超时时间。也可以通过检测按键是否按下再进入这个检测串口是否有数据的步骤这样更加灵活。 2上位机将升级程序bin文件分包发送到设备设备接收到数据之后进行校验校验通过后写入到芯片替换原有的旧程序完成整个升级过程。 部分代码如下 int main(void) { SystemInit(); GPIO_Configuration(); //配置串口IO FLASH_Unlock(); //解锁flashUART_Init(); //配置串口波特率,校验位等BspTim2Init(); //Timer 用于超时判断SerialPutString(\n\rbootloader\r\n);//进入bootloader后菜单选择已取消显示直接进入检测串口数据状态//如果3s之内没有选择,跳出,执行后面代码Main_Menu(); //通过判断栈顶地址值是否正确(是否在0x2000 0000 - 0x2000 2000之间)来判断是否应用程序已经下载了if (((*(__IO uint32_t*)ApplicationAddress) 0x2FFE0000 ) 0x20000000){BspTim2Close();__disable_irq() ; //跳转至用户代码JumpAddress *(__IO uint32_t*) (ApplicationAddress 4);Jump_To_Application (pFunction) JumpAddress;//初始化用户程序的堆栈指针__set_MSP(*(__IO uint32_t*) ApplicationAddress);Jump_To_Application();}else{SerialPutString(no user Program\r\n\n);}while(1); }void Main_Menu(void) {FLASH_Status FLASHstatus;//定义一个flash操作状态变量uint8_t key 0;static uint8_t uStatus 0;BlockNbr (ApplicationAddress - 0x08000000) 12;#if defined (STM32F10X_MD) || defined (STM32F10X_MD_VL)UserMemoryMask ((uint32_t)~((1 BlockNbr) - 1)); #else /* USE_STM3210E_EVAL */if (BlockNbr 62){UserMemoryMask ((uint32_t)~((1 BlockNbr) - 1));}else{UserMemoryMask ((uint32_t)0x80000000);} #endif /* (STM32F10X_MD) || (STM32F10X_MD_VL) *///返回flash写保护选择字节的值if ((FLASH_GetWriteProtectionOptionByte() UserMemoryMask) ! UserMemoryMask){FlashProtection 1;}else{FlashProtection 0;}/* Download user application in the Flash */SerialDownload(); //使用YModem协议接收app bin文件 SerialPutString(Auto jump App \r\n); }2主程序部分 主程序只需要增加两行代码即可如下所示 int main(void) {// 主程序里在main()前面增加下面两行代码即可// 把栈顶设置到0x30000x3000是主程序的烧录位置也是bootloader跳转的位置// 这个位置可以根据实际情况统一调整nvic_vector_table_set(NVIC_VECTTAB_FLASH , 0x3000);__set_PRIMASK(0);systick_config();/* enable the LED clock */rcu_periph_clock_enable(RCU_GPIOB);/* configure LED GPIO port */ gpio_init(GPIOB, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_8);/* reset LED GPIO pin */gpio_bit_reset(GPIOB, GPIO_PIN_8);while (1){// app1 快闪gpio_bit_reset(GPIOB, GPIO_PIN_8);delay_1ms(500);gpio_bit_set(GPIOB, GPIO_PIN_8);delay_1ms(500);// app2 慢闪//gpio_bit_reset(GPIOB, GPIO_PIN_8);//delay_1ms(2000);//gpio_bit_set(GPIOB, GPIO_PIN_8);//delay_1ms(2000);} }三工程配置 1Bootloader部分 0x3000是分配给bootloader的空间可根据实际情况修改。 2主程序部分 Start填写0x08003000是因为主程序烧录在这个位置和分配给bootloader的空间有关。 增加 fromelf --bin -o $LL.bin #L 这句可以在编译时生成bin文件 四测试 使用上位机软件支持Ymodem协议的软件都可以选择编译好的主程序bin文件在板子上电之后通过串口发送过去即可。 资料下载: https://download.csdn.net/download/wouderw/88714985
http://www.hkea.cn/news/14459037/

相关文章:

  • 北京网站设计与制作专业网店推广
  • 北极动力网站建设微信小程序可以做电影网站吗
  • 石家庄城市建设档案馆网站沈阳建设工程信息网举报
  • 官方网站下载手电筒公司体系建设的意义
  • 上海营销平台网站建设全屋定制高端品牌有哪些
  • 苏州高新区建设局网站管网最差网站设计
  • 发布培训的免费网站模板下载山西太原做企业网站建设的公司
  • 网站建设方案后期服务智慧团建平台登录入口官网
  • 成都企业网站建设及公司pptwin7 建设网站服务器
  • 设计网站怎么做产品免费发布平台
  • 想创建一个网站安徽省工程建设信息网站
  • 河源网站搭建费用500m网站
  • 麻涌网站仿做设计网页的步骤是什么
  • 没有网站可以做搜索引擎营销吗做网站不好做
  • 颍州网站建设建筑师网站
  • wordpress站外搜索公众号如何做微网站
  • 台州网站优化方案微商分销
  • 汽车网站正在建设中模板html5网站建设公司
  • 网站推广软件赚钱难吗?长沙小程序开发
  • 给公司做网站要花多钱唐山哪家网站好
  • 网页升级访问中每天正常更新中系统优化的影响因素
  • iis 多网站网站原创文章优化
  • 铜仁网站优化广告设计案例网站
  • 网站 多语言设计制作中国第一架飞机的人
  • phpcms做装修网站阿里云一键建站网站
  • 公司网站建设流程巴南网站建设哪家好
  • 网站建站建设怎么做马鞍山做网站的公司
  • 用python做网站后端最快多久studio网站开发
  • 梁头网站建设中国建筑集团有限公司官网招标网
  • 什么是网站架构网页设计与制作课程代码