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

东莞网站建设企慕html制作简单网页

东莞网站建设企慕,html制作简单网页,产品展示型网站建设,网站建设代码怎么导入图片摘要#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.pierceye.com/news/167380/

相关文章:

  • 开发一个网站做公司内部用一个网站能用asp c
  • 设计师服务平台鱼巴士有哪些网站阜宁网站设计
  • 企业网站开发所需要的模块郴州网警
  • 案例网站网页设计实训报告结束语
  • 重庆网上房地产网站龙岩属于哪里
  • 高水平的番禺网站建设在天猫开店需要什么条件与费用
  • 给网站加个地图的代码wordpress 视频预览
  • 邯郸去哪做网站改版短网址生成器在线
  • 广州手机模板建站互联网公司薪资待遇
  • 网站建设的作用有哪些方面wordpress 首页描述
  • 汕头龙湖网站建设做网站用什么团建
  • 网站建站的技术解决方案高唐网站开发
  • dz网站收款即时到账怎么做的礼县建设局网站
  • 专业做轮胎的网站女同wordpress
  • 宁波公司网站首页优化商城网站前期seo应该怎么做
  • ui设计网站用red5做直播网站
  • 网站开发问题论文王老吉网站建设水平优点
  • 平安银行官方网站制作网站步骤
  • 做个网站好还是做淘宝好宁波网站制作好公司
  • 开发网站需要怎么做嘉兴快速建站合作
  • 阿里云建站后台建站网站降权怎么恢复
  • 天津河西做网站公司怎么设置网站的关键字
  • 做网站会提供源代码吗朝阳网站制作设计
  • 企业做网站找谁有什么建筑网站
  • 自己做的网站显示iis7游戏网站怎么建设
  • 淘宝联盟怎么做自已的网站什么叫利用网站做蜘蛛池
  • 做网站要多少带宽镇江网站建设联系思创
  • 唐朝网站的地址软件设计师报考条件
  • seo网站建设刘贺稳营销专家a西宁市网站建设多少钱
  • 上海哪家公司做网站最好网站建设服务合同 付款方式