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

网络购物商城网站建设家装e站

网络购物商城网站建设,家装e站,东营有什么网站建设公司,手机wap网站多少钱摘要#xff1a;为了实现嵌入式系统程序的在线升级#xff0c;提出一种基于IAP在线编程的程序更新方法。 以STM32L431控制器为例#xff0c;该方法对控制器的片内FLASH进行区域划分#xff0c;分别存放引导程序、执行程序及待更新程序。 系统通过运行引导程序将待更新程序…摘要为了实现嵌入式系统程序的在线升级提出一种基于IAP在线编程的程序更新方法。 以STM32L431控制器为例该方法对控制器的片内FLASH进行区域划分分别存放引导程序、执行程序及待更新程序。 系统通过运行引导程序将待更新程序更新到执行程序的FLASH区域程序更新成功后跳转至新的执行程序运行。 该设计成功实现了FLASH程序的在线更新并进行了实验验证其操作简单、速度快、正确率高。 引言 当今社会嵌入式系统已经广泛应用于各行各业人们对嵌入式产品的要求也越来越高。 由于嵌入式系统软件需要经常更新才能更加适应环境变化满足日常功能所需所以在线更新升级程序的技术就显得很重要。 传统的程序升级方法需要将调试工具通过线缆连接到电路板上的JTAG接口对微处理器进行程序下载更新这种方法需要重新拆卸组装设备影响系统的可操作性。 IAP技术简介 传统的单片机在线编程方式有ICP、ISP和IAP三种。 ICP编程需要将单片机芯片外接在线仿真器才可进行编程。 ISP与IAP技术都只需要单片机内置Bootloader进行程序引导实现编程。 ISP编程通信方式较为简单其系统内部自带Bootloader程序只需在系统运行前由Bootloader通过通信端口进行程序更新和原有数据擦除。 IAP的Bootloader由用户设计且是在系统运行过程中操作主要通过对FLASH写入Bootloader程序之后运行系统使用户程序在 Bootloader的引导下对 FLASH 烧写和擦除数据。 本设计将FLASH趋于分为两个主要部分Boot-loader和FLASH_APP。 为了避免程序失败使当前运行程序停止将FLASH_APP细化为FLASH_APP_A和FLASH_APP_B用来存放执行程序和待更新程序。 当系统通电后先执行Bootloader代码该程序主要具备两个功能 引导用户程序FLASH_APP的远程更新。向用户程序FLASH_APP跳转。 若有程序更新指令下达则将FLASH_APP_B区中的代码转移到FLASH_APP_A区进行更新然后跳转至更新成功的FLASH_APP_A中执行用户程序若没有更新指令或更新失败则继续执行FLASH_APP_A区中的程序。 硬件设计 主要包括主控芯片、时钟电路、复位电路、电源电路、JTAG接口电路。 系统上电后上位机借助JTAG调试器将Bootloader程序烧写至嵌入式系统烧写成功后上位机软件通过USB串口将生成的BIN文件写入并下发程序更新等各种指令。 Bootloader只需烧写一次,后续程序更新将相关 BIN 文件通过串口引导至指定 FLASH 区域即可。 FLASH区域划分 FLASH 程序空间被分为3段空间用来实现程序更新,分 别 为 Bootloader 空 间、FLASH_ APP_ A 空 间 和FLASH_APP_B 空间。 Bootloader软件设计 嵌入式在线升级系统包含上位机控制系统和嵌入式设备终端两部分。 上位机主要是将编译完成的烧写文件打包处理发送至嵌入式设备。 嵌入式设备接收时先寄存代码帧的帧个数和帧计数然后判断数据帧的帧头和校验和。 若校验和正确将该帧的源码写入FLASH_APP_B对应空间将帧计数反馈给上位机计算更新进度。 例如程序源码为20KB每1KB为1帧若当前反馈第12帧则计算后的更新进度为60%源码下发的帧间隔为300ms当更新进度100%后显示更新完成。 更新成功后将FLASH_APP_B程序完整地拷贝到FLASH_APP_A空间同时将程序版本写入FLASH对应的空间加锁FLASH跳转至对应FLASH_APP空间的函数入口。 程序更新完成后嵌入式设备给上位机发送反馈帧命令并将写入FLASH的数据校验码返回给上位机上位机收到校验码并校验无误后结束与嵌入式设备的通信。 嵌入式系统在线升级的关键部分在于Bootloader引导程序的设计。 在本次提出的IAP在线编程中将引导程序功能分为3个状态进行分析分别为空闲态、跳转态以及升级态。 “空闲态”为系统上电时Bootloader软件处于等待状态当接收到上位机指令后进入下一状态。 “升级态”时主要完成FLASH执行程序区域的擦除和烧写操作重新读取执行程序区的数据并进行检验将结果反馈给上位机。 状态转换只有空闲态转升级态、空闲态转跳转态、升级态转跳转态3种。 程序软件配置 打开Bootloader工程文件在Keil中设置IROM1Start:0x08000000;Size:0x8800。 打开FLASH_APP工程文件设 置 “IROM1Start:0x08009800;Size:0x1C000”。 同时修改void SystemInit(void)函数设置对应区域的中断向量表程序如下
http://www.yutouwan.com/news/468473/

相关文章:

  • 临沂h5建站怎么注册域名网站
  • php网站伪静态wordpress无插件自动实现tag关键字内链
  • 电脑记事本做网站wordpress不同分类文章不同模板
  • 医疗器械网站素材如何做直播类网站
  • 打赏网站怎么建设绍兴建设局网站
  • 专业提供网站建设服务包括哪些评论 wordpress
  • 顾问式 网站网站开发代理
  • 单位网站建设情况我为群众办实事活动总结
  • 阿里云建网站流程河北省网站备案系统
  • 网站设计三把火信息流推广的竞价机制是
  • 简单的公司网站做百度网站排名软件
  • 北京电力交易中心优化软件排行榜
  • 相亲网站怎么做宿州房产信息网二手房
  • 深圳北站设计者规范贷款网络营销活动
  • 深圳建设集团有限公司好吗南阳seo网站排名
  • 赣州网站设计较好的公司我国网站建设的不足
  • 关于网站建设项目的投诉函三水营销网站开发
  • 桂林 网站 制作wordpress能大网站主题
  • wordpress 淘宝客网站wap网站psd
  • 爬虫怎么看网站开发者模式专业app网站建设
  • 企业网站模板下载软件平台与网站有什么区别
  • 站酷网站建设贵港网站建设
  • 网站怎么建设在哪里接单银川做网站哪家公司好
  • 安康网站建设公司价格百度 wordpress
  • 网站建设找超速云网站app下载平台怎么做
  • 烟台网站建设哪家专业本地上海集团网站建设
  • 网站开发维护入哪个科目网站开发到发布
  • 网站建设需要多少厦门seo代理商
  • 现在网站建设怎么收费怀宁县住房和建设局网站
  • 网站你懂我意思正能量晚上不用下载直接进入产品设计论文