国民技术N32G430开发笔记(9)- IAP升级 Bootloader的制作

这篇具有很好参考价值的文章主要介绍了国民技术N32G430开发笔记(9)- IAP升级 Bootloader的制作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

IAP升级 Bootloader的制作

1、上节提到Flash的分区,0x8000000-0x8004000为Boot分区,我们的bootloader就烧录到此分区。

Bootloader很简单,新建一个普通的工程,
也不用初始化外部设备,开机后,直接跳转到
App分区所在的地址即可,
当然App的分区程序也要提前烧录进去,
否则也是跳不过去的。

代码

#include <string.h>
#include "main.h"
#include "bsp_delay.h"
#include "flash.h"

typedef void (*pFunction)(void);
pFunction Jump_To_Application;
uint32_t JumpAddress;

void Jump_To_App(uint32_t address)
{
    if (((*(__IO uint32_t*)address) & 0x2FFE0000) == 0x20000000)
    {
        JumpAddress = *(__IO uint32_t*) (address + 4);
		Jump_To_Application = (pFunction) JumpAddress;
        __set_MSP(*(__IO uint32_t*) address);
        Jump_To_Application();
    }
}

int main(void)
{
	SysTick_Delay_Ms(1000);
	Jump_To_App(APP_START_ADDRESS);
}

开机延时一秒,直接跳转到0x08006000地址处。执行Application的程序。

修改bootloader的ld文件n32g430_flash.ld,将bin文件限制在16K大小

国民技术N32G430开发笔记(9)- IAP升级 Bootloader的制作

之前的教程都是基于Application程序开发,所以跳转到Application后,会看到定时器6每100ms去开关LED1,

代码路径:https://gitee.com/xiaoguo-tec_0/n32iap文章来源地址https://www.toymoban.com/news/detail-431740.html

到了这里,关于国民技术N32G430开发笔记(9)- IAP升级 Bootloader的制作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 国民技术 MCU N32单片机所有系列---JLink添加芯片,方便使用Keil和JFlash

    1.将下图JLink tool adds Nations chip V1.0.12文件中选中的文件复制到自己电脑的JLINK的目录下(JLINK默认的下载路径是C:Program FilesSEGGERJLink   或者  C:Program Files(x86)SEGGERJLink) 2.然后直接把JLink tool adds Nations chip V1.0.12文件中的JLinkDevices.xml复制替换到自己电脑的JLINK的目录下的JLin

    2024年02月03日
    浏览(52)
  • 【国名技术】N32G401单片机驱动配置(STM32系列适用)

    N32G401总体上和STM32F4系列差不多,无论是从芯片资源,还是各种寄存器,都有相通之处,所以N32G401的所有驱动,如果使用smt32的话也可以借鉴使用(修改函数名) 文章代码仅限于参考,如果直接CV是肯定用不了的,源代码链接在最后 PS:所有驱动基于N32G401F7S8-1,一共20个引脚,

    2024年01月19日
    浏览(41)
  • 【N32G457】 基于RT-Thread和N32G457的迷你键盘

    此文为参加RT-Thread与国民技术联手推出N32G457 RT-Thread设计大赛期间作品。 由于疫情影响加上其他各种原因,本应在3月25日结束的比赛在今日终于完成了一个比较完整的作品,无论是否可以参赛,还是希望对大家有所帮助。 先放个图。 机械键盘在最近几年发展迅猛,功能也逐

    2024年02月09日
    浏览(40)
  • 单片机移植freemodbus主机(STM32、GD32、瑞萨、国民技术等)

    从github下载:https://github.com/armink/FreeModbus_Slave-Master-RTT-STM32 无法下载或者下载太慢可以用资源下载,无需积分。freeModbus主机源码下载 示例代码 参考从机代码创建 将FreeModbus主机源代码拷贝到工程中间件-第三方库-freemodbus源码库:即MiddlewaresThird_PartyFreeModbusMaster文件夹中。

    2024年02月11日
    浏览(47)
  • 国民技术N32_MCU ADC如何获取高精度采样数据

    国民技 术 微控制器内置最多四个高级 12 位 ADC    (取决于产品系列) ,具有校准功能,用于提高环境条件   变 化时的 ADC   精度。 在涉及模数转 换的应用中,   ADC   精度会影响整体的系统质量和效率。为了提高此精度,必须了解与 ADC 相 关 的误差以及影响它们的参数。

    2024年02月09日
    浏览(64)
  • 【N32L40X】学习笔记10-外部触发方式计数

    也就是外部时钟源模式2 此模式由 TIMx_SMCTRL .EXCEN 选择等于 1。计数器可以在外部触发输入 ETR 的每个上升沿或下降沿 计数。 极性选择 分频选择 过滤选择 选择外部时钟ETR模式 bsp_time_counter_ETR.h

    2024年02月16日
    浏览(31)
  • STM32G071开发笔记:使用定时器(TRGO功能)触发ADC规则采样以避免低侧电流采样所带来的PWM开关噪声

    目录 背景阐述: 导致问题的原因: 解决方案: 实验方案: 实验验证: 可改进的地方 结尾 RT:笔者在做一个项目的时候遇到了一个因为PWM开关噪声干扰导致ADC采样波动大的问题,经过2天的研究终于想到了一个比较好的办法,这个方法不一定适合所有项目,但和我当前项目

    2024年01月25日
    浏览(59)
  • 【N32L40X】学习笔记08-定时器的基本定时功能-超时功能

    该函数库的目的就是在统一的地方配置,将配置的不同项放置在一个结构体内部 使用一个枚举来定义一个的别名 该库就是基本定时产生超时中断 bsp_time_base.h

    2024年02月16日
    浏览(42)
  • 【N32L40X】学习笔记11-ADC规则通道采集+dma数据传输

    支持 1 个 ADC,支持单端输入和差分输入,最多可测量 16 个外部和 3 个内部源。 支持 12 位、10 位、8 位、6 位分辨率。 ADC 时钟源分为 工作时钟源、采样时钟源和计时时钟源 仅可配置 AHB_CLK 作为 工作时钟源 。 可配置 PLL 作为 采样时钟源 ,最高可到 64MHz,支持分频 1,2,4,6,8,

    2024年02月15日
    浏览(47)
  • 【STC32G12K128开发板】——搭建开发环境

    版权声明:本文为博主原创文章,转载请附上原文出处链接。 今天介绍下STC32G12K128开发板如何搭建开发环境。 表1:需要的工具软件 Keil C251 v5.60安装文件:“…第2部分:开发软件工具 1 - KEIL C251安装软件”目录下的“c251v560”。 ch341ser驱动:“…第2部分:开发软件工具

    2024年01月15日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包