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

一个空间建多个网站的方法搜索引擎优化的工具

一个空间建多个网站的方法,搜索引擎优化的工具,北京大兴专业网站建设公司,永久域名注册网站什么是OTA 百度百科解释个人理解:就是不通过烧录的方式,通过串口、网口、无线对主板运行的程序进行升级。减少后期的一个维护迭代程序的一个成本。 STM32的OTA升级模块的一个设计 程序启动的一个框架流程图(大致流程) FLASH的一个划分框图 BootLoader…

什么是OTA

  1. 百度百科解释
  2. 个人理解:就是不通过烧录的方式,通过串口、网口、无线对主板运行的程序进行升级。
  3. 减少后期的一个维护迭代程序的一个成本。

STM32的OTA升级模块的一个设计

程序启动的一个框架流程图(大致流程)

在这里插入图片描述

FLASH的一个划分框图

在这里插入图片描述

BootLoader程序

Flash配置头文件(app_flash_conf.h)

#define SIZE_8B (8)
#define SIZE_256B (256)
#define SIZE_512B (512)
#define SIZE_1K   (1024)
#define SIZE_2K   (2048)
#define SIZE_3K   (3072)
#define SIZE_4K   (4092)
#define SYS_CONVERT(type, val) ((type)(val))
// 引导程序大小: 10KB
#define BOOT_AREA_SIZE (SIZE_1K*10)
#define BOOT_START_ADDR FLASH_BASE
// APP: 150KB (应用程序)
#define APP_AREA_SIZE (SIZE_1K*150)
#define APP_START_ADDR SYS_CONVERT(uint32_t,BOOT_START_ADDR+BOOT_AREA_SIZE)
// APP UPGRADE: 150KB (应用升级)
#define APP_UPGRADE_AREA_SIZE (SIZE_1K*150)
#define APP_UPGRADE_START_ADDR SYS_CONVERT(uint32_t,APP_START_ADDR+APP_AREA_SIZE)
// 配置区域: 50KB
#define CONF_AREA_SIZE (SIZE_1K*50)
#define CONF_START_ADDR SYS_CONVERT(uint32_t,APP_UPGRADE_START_ADDR+APP_UPGRADE_AREA_SIZE)
// 数据区域: 130KB
#define DATA_AREA_SIZE (SIZE_1K*130)
#define DATA_START_ADDR SYS_CONVERT(uint32_t,CONF_START_ADDR+CONF_AREA_SIZE)
// 引导数据配置信息:
#define BOOT_INF_ADDR SYS_CONVERT(uint32_t,DATA_START_ADDR+DATA_AREA_SIZE)

OTA配置

头文件(ota_boot_info.h)

#define OTA_UPGRADE_FLAG (0x1389)
typedef struct {uint8_t app_version[6]; // 应用版本uint32_t app_new_version_flag; // 应用新版本标志位
//    uint32_t app_run_addr; // 应用运行地址
//    uint32_t app_upgrade_data_addr; // 应用升级数据地址uint32_t app_upgrade_data_size; // 应用升级数据大小
} APP_Info_t;void Load_App_Info(APP_Info_t *info);void Update_App_Info(APP_Info_t *info);
void Jump_To_App(uint32_t run_addr);void Jump_To_BootLoader(void);

源文件

#include "ota_boot_info.h"
#include "bsp_flash.h"
#include "app_flash_conf.h"typedef void (*pFunction)(void);/*** 加载APP信息* @param dst*/
void Load_App_Info(APP_Info_t *info) {STMFLASH_Read_Base(BOOT_INF_ADDR, info, sizeof(APP_Info_t));
}/*** 更新APP信息* @param dst*/
void Update_App_Info(APP_Info_t *info) {STMFLASH_Write_Base(BOOT_INF_ADDR, info, sizeof(APP_Info_t));
}void Jump_To_BootLoader(void) {__disable_irq();uint32_t JumpAddress;pFunction Jump_To_Application;JumpAddress = *(volatile uint32_t *) (0x00000004);Jump_To_Application = (pFunction) JumpAddress;__set_MSP(*(volatile uint32_t *) JumpAddress);__set_PSP(*(volatile uint32_t *) JumpAddress);Jump_To_Application();
}void Jump_To_App(uint32_t run_addr) {__disable_irq();pFunction jump_app;jump_app = (pFunction) (*(volatile uint32_t *) (run_addr + 0x04));__set_MSP(*(volatile uint32_t *) run_addr);jump_app();
}

待续

http://www.hkea.cn/news/776264/

相关文章:

  • 政府门户网站建设标准国际婚恋网站排名
  • 上海青浦网站建设郑州靠谱seo电话
  • 网站建设怎么样seo专家招聘
  • 在网盘上怎么做自己的网站整站优化推广
  • php建设网站实训百度搜索引擎的总结
  • 怎么在360自己做网站重庆seo排名收费
  • 外贸网站建设浩森宇特教育培训报名
  • 网站开发价目表深圳市前十的互联网推广公司
  • php做视频直播网站关键词竞价广告
  • 重庆怎么站seo深圳网络推广团队
  • 自学软件网站开发网络推广怎样做
  • 最新版的wordpress怎么添加特征图优化关键词的作用
  • 深圳做网站google推广网络营销和传统营销的区别和联系
  • 专业做网站的顺德公司网络推广怎么收费
  • php商城网站建设多少钱天津百度seo排名优化
  • 注册网站免费注册insseo关键词优化推广哪家好
  • 深圳房地产网站开发常见的网络营销工具有哪些
  • .net 网站管理系统湖南企业竞价优化首选
  • 南山区住房与建设局官方网站网络赚钱推广
  • wordpress mycred汉化seo引擎搜索入口
  • 在线教育网站用什么做百度搜索的优势
  • 甘肃省住房城乡建设厅网站首页智能建站模板
  • 智能科技网站模板下载地址百度学术论文查重
  • 网站要怎么做才能让360收录推广品牌的策划方案
  • 做网站前景营销课程培训视频
  • 青海做网站广告开户南京seo
  • wordpress写软文赚钱seo快速培训
  • 南宁网站建设接单陕西省人民政府
  • wordpress网站价格seo域名综合查询
  • 支付网站怎么做的网络自动推广软件