当前位置: 首页 > news >正文 被称为网页制作三剑客的是seo内部优化具体做什么 news 2025/10/31 23:30:44 被称为网页制作三剑客的是,seo内部优化具体做什么,精湛的企业网站建设,城乡建设招投标网站[STM32]标准库-自定义BootLoader BootloaderBootloader的实现BOOTloader工程APP工程 Bootloader bootloader其实就是一段启动程序#xff0c;它在芯片启动的时候最先被执行#xff0c;可以用来做一些硬件的初始化或者用作固件热更新#xff0c;当初始化完成之后跳转到对应的… [STM32]标准库-自定义BootLoader BootloaderBootloader的实现BOOTloader工程APP工程 Bootloader bootloader其实就是一段启动程序它在芯片启动的时候最先被执行可以用来做一些硬件的初始化或者用作固件热更新当初始化完成之后跳转到对应的应用程序中去。 bootloader程序需要通过下载器烧写到芯片中而APP则可以通过有线方式的UART、IIC、USB、SPI等总线来通过bootloader来更新视所设计的bootloader程序而定。另外对于无线方式热更新APP一般是用WiFi、bluetooth通过UART透传的方式烧写芯片APP程序。 Bootloader的实现 本次采用STM32F429IGT6单片机Flash共有1MB大小SRAM共有256KB。 本次设计一个Bootloader和一个APP程序空间分别如下 BOOTloader程序起始地址0x0800 0000分配大小为0xA00040KB 注意按照扇区对齐比如4KB一个扇区 APP程序起始地址0x0800 A000分配的大小为0xF6000984KB。 STM32的中断向量表和栈顶地址 STM32Fx有一个中断向量表这个中断向量表存放代码开始部分的后4个字节处即0x08000004,代码开始的4个字节存放的是栈顶地址。 栈是从高到低分配高地址到低地址 堆是从低到高分配低地址到高地址 排列格式如下 我们知道一般情况下我们下载的代码放在0x08000_000这个位置为了实现bootloader我们可以将下载代码的位置整体往后挪一段空间比如我们挪到0x0800_3000那么这之前挪动空出来的一段空间我们就可以用来存放我们的bootloader程序。系统上电后先运行bootloaderbootloader决定是否要更新app最后跳转到0x0800 3000这个位置执行。 上图为SystemInit中修改用户app存放位置0x0800 3000的地方SystemInit在启动文件中用到它会在复位后在main函数运行之前运行 BOOTloader工程 bootloader和App都是完整的STM32工程区别在于工程所实现的功能和占用Flash的大小。由于Bootloader的功能比较单一并且为了节约Flash留给用户AppBootloader一般不带操作系统所占用的Flash较小。APP是完整的用户程序按照正常的设计流程进行设计只需要在工程配置和部分初始化代码处进行修改。 设置工程起始地址及其大小 中断向量表的地址偏移 调用函数NVIC_SetVectorTable()进行配置。BOOT工程一般不需要配置 执行BOOT后跳转到APP程序中 注意点 检查堆栈地址是否有效单片机的RAM大小为0x300000x3000 0000 - 0x3000 0x2FFD 0000也可以用其他方法来计算RAM是否超过单片机的范围 关闭全局中断__set_PRIMASK(1)仅只剩下NMI 和硬 fault 可以响应记得在APP工程设置__set_PRIMASK(0); 复位BOOT工程中用到的外设 函数指针赋值为Reset_Handler向量的地址 设置堆栈地址 跳转到APP中 typedef void (*Run_APP_t)(void); /** brief 跳转并执行到APP程序 param APPProgramAddr : APP程序的地址 retval None / static void Jump_to_APP(uint32_t APPProgramAddr) { Run_APP_t run_app (Run_APP_t)((uint32_t*)(APPProgramAddr 4)); /* 检查堆栈地址(RAM地址)是否有效然后跳转到用户应用程序 / if(((uint32_t*)APPProgramAddr 0x2FFD0000) 0x20000000) { /* 关闭所有中断 在它被置 1 后就关掉所有可屏蔽的异常只剩下NMI 和硬 fault 可以响应。 它的缺省值是 0表示没有关中断。 */ __set_PRIMASK(1); /* 复位所有已经开启的外设 */ GPIO_DeInit(GPIOH); GPIO_DeInit(GPIOA); GPIO_DeInit(GPIOC); EXTI_DeInit(); CRC_ResetDR(); USART_DeInit(USART1);/* 设置堆栈指针 */// __set_PSP((uint32_t)APPProgramAddr); // __set_CONTROL(0); __set_MSP((uint32_t)APPProgramAddr); /* 跳转到APP程序中执行 */run_app(); } else {USART1Printf(BOOT_ERROR1!\r\n); }} APP工程 Flash的起始地址大小 中断向量表偏移地址和开启全局中断 /* 设置中断向量表 / NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0xA000);//中断向量表偏移 / 关闭所有中断 在它被置 1 后就关掉所有可屏蔽的异常只剩下NMI 和硬 fault 可以响应。 它的缺省值是 0表示没有关中断。 */ __set_PRIMASK(0); Keil5生成BIN文件 fromelf --bin -o “$LL.bin” “#L” 注意点上电应检查标志位不能初始化任何外设根据该标志位来决定是否进入APP 通过软件复位给 APP 一个干净的系统 这里的标志位存在RTC备份寄存器0中占用4个字节 文章转载自: http://www.morning.crtgd.cn.gov.cn.crtgd.cn http://www.morning.xysxj.com.gov.cn.xysxj.com http://www.morning.rxydr.cn.gov.cn.rxydr.cn http://www.morning.txzqf.cn.gov.cn.txzqf.cn http://www.morning.jbztm.cn.gov.cn.jbztm.cn http://www.morning.yuanshenglan.com.gov.cn.yuanshenglan.com http://www.morning.gmrxh.cn.gov.cn.gmrxh.cn http://www.morning.cltrx.cn.gov.cn.cltrx.cn http://www.morning.wqwbj.cn.gov.cn.wqwbj.cn http://www.morning.qxlyf.cn.gov.cn.qxlyf.cn http://www.morning.knlbg.cn.gov.cn.knlbg.cn http://www.morning.rkkpr.cn.gov.cn.rkkpr.cn http://www.morning.gkjnz.cn.gov.cn.gkjnz.cn http://www.morning.zjqwr.cn.gov.cn.zjqwr.cn http://www.morning.beeice.com.gov.cn.beeice.com http://www.morning.bhpjc.cn.gov.cn.bhpjc.cn http://www.morning.ghslr.cn.gov.cn.ghslr.cn http://www.morning.hcqd.cn.gov.cn.hcqd.cn http://www.morning.spftz.cn.gov.cn.spftz.cn http://www.morning.gydth.cn.gov.cn.gydth.cn http://www.morning.gcqs.cn.gov.cn.gcqs.cn http://www.morning.nrbcx.cn.gov.cn.nrbcx.cn http://www.morning.ymsdr.cn.gov.cn.ymsdr.cn http://www.morning.nclps.cn.gov.cn.nclps.cn http://www.morning.kjcll.cn.gov.cn.kjcll.cn http://www.morning.cfocyfa.cn.gov.cn.cfocyfa.cn http://www.morning.pdxqk.cn.gov.cn.pdxqk.cn http://www.morning.kxbry.cn.gov.cn.kxbry.cn http://www.morning.dmsxd.cn.gov.cn.dmsxd.cn http://www.morning.fnlnp.cn.gov.cn.fnlnp.cn http://www.morning.qqfcf.cn.gov.cn.qqfcf.cn http://www.morning.ywqw.cn.gov.cn.ywqw.cn http://www.morning.mplb.cn.gov.cn.mplb.cn http://www.morning.qscsy.cn.gov.cn.qscsy.cn http://www.morning.rbyz.cn.gov.cn.rbyz.cn http://www.morning.pgrsf.cn.gov.cn.pgrsf.cn http://www.morning.trrrm.cn.gov.cn.trrrm.cn http://www.morning.bpmnz.cn.gov.cn.bpmnz.cn http://www.morning.shawls.com.cn.gov.cn.shawls.com.cn http://www.morning.pxbrg.cn.gov.cn.pxbrg.cn http://www.morning.rccpl.cn.gov.cn.rccpl.cn http://www.morning.c7496.cn.gov.cn.c7496.cn http://www.morning.fwzjs.cn.gov.cn.fwzjs.cn http://www.morning.xsqbx.cn.gov.cn.xsqbx.cn http://www.morning.qztdz.cn.gov.cn.qztdz.cn http://www.morning.gbtty.cn.gov.cn.gbtty.cn http://www.morning.dmrjx.cn.gov.cn.dmrjx.cn http://www.morning.cdygl.com.gov.cn.cdygl.com http://www.morning.pcjw.cn.gov.cn.pcjw.cn http://www.morning.zcwtl.cn.gov.cn.zcwtl.cn http://www.morning.tqpr.cn.gov.cn.tqpr.cn http://www.morning.tjsxx.cn.gov.cn.tjsxx.cn http://www.morning.fengnue.com.gov.cn.fengnue.com http://www.morning.ndfwh.cn.gov.cn.ndfwh.cn http://www.morning.nwzcf.cn.gov.cn.nwzcf.cn http://www.morning.tpfny.cn.gov.cn.tpfny.cn http://www.morning.kmqjx.cn.gov.cn.kmqjx.cn http://www.morning.xrlwr.cn.gov.cn.xrlwr.cn http://www.morning.kzrbn.cn.gov.cn.kzrbn.cn http://www.morning.nkcfh.cn.gov.cn.nkcfh.cn http://www.morning.ywpwg.cn.gov.cn.ywpwg.cn http://www.morning.wqfrd.cn.gov.cn.wqfrd.cn http://www.morning.zkjqj.cn.gov.cn.zkjqj.cn http://www.morning.rkypb.cn.gov.cn.rkypb.cn http://www.morning.fzwf.cn.gov.cn.fzwf.cn http://www.morning.yrxcn.cn.gov.cn.yrxcn.cn http://www.morning.qnjcx.cn.gov.cn.qnjcx.cn http://www.morning.mzhjx.cn.gov.cn.mzhjx.cn http://www.morning.yrlfy.cn.gov.cn.yrlfy.cn http://www.morning.zcrjq.cn.gov.cn.zcrjq.cn http://www.morning.wknbc.cn.gov.cn.wknbc.cn http://www.morning.kxqwg.cn.gov.cn.kxqwg.cn http://www.morning.lcjw.cn.gov.cn.lcjw.cn http://www.morning.zpkfb.cn.gov.cn.zpkfb.cn http://www.morning.xkjqg.cn.gov.cn.xkjqg.cn http://www.morning.msmtf.cn.gov.cn.msmtf.cn http://www.morning.jwbnm.cn.gov.cn.jwbnm.cn http://www.morning.lqjlg.cn.gov.cn.lqjlg.cn http://www.morning.wbyqy.cn.gov.cn.wbyqy.cn http://www.morning.fzwf.cn.gov.cn.fzwf.cn 查看全文 http://www.tj-hxxt.cn/news/266483.html 相关文章: seo网站优化系统制作七星网站 网站域名解析时间最好的网站开发公司 北京网站开发培训天马网络 网站建设 一站式做网站哪家专业网络推广主要是做什么工作 安徽干部学校建设网站百度seo收费 手机网站建设目标长沙网上商城 北京网站备案注销中心张艺兴粉丝做的网站 福州百度网站排名优化福田补贴每人9000元 离线推广网站规划书山东经济建设网站 深圳定制开发网站wordpress页脚插件 自己做网站制作流程wordpress opml 民政局网站建设方案wordpress媒体库下载 手机网站怎么做seo手机上怎么做网站创业 成品网站开发中国2020最新军事新闻 网站建设具体工作内容sem优化技巧 网站建设要做哪些工作电商设计详情页 天津建设工程合同备案网站wordpress弹出提示框 网站源码安装步骤设计说明的英文 建设网站上申请劳务资质吗张店网站制作 淘客网站+wordpress烟台网站设计单位 福田官网网站优化成功案例 课程网站建设目标任务网站建设教学廊坊 凡科建站好用吗网站建设售后服务承诺函 一般做推广网站的客户需求仕什么企业网盘软件 家装效果图网站内容展示型网站 设计特点 建设网站有哪些方法如何做书签网站 怎么做淘宝客网站赚钱吗头条权重查询 用vs2010做的网站的源码wordpress 自定义头像 基本网站建设语言电脑公司网站源码php 网站开发和软件开发工作wordpress通过图片id获取路径