0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用国民技术的N32替换STM32的操作流程

STM32嵌入式开发 来源:STM32嵌入式开发 作者:STM32嵌入式开发 2022-04-25 11:21 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

前言

目前大形势影响,芯片价格日益上涨,采购周期变长,导致国产芯片替代进口芯片成为大趋势,该文章记录了使用国民技术的N32替换STM32的操作流程。

话不多说,上步骤。

一、工程配置

1.安装硬件库

硬件库为厂家提供的资料,如下图所示,双击安装,使得keil能够找到该芯片。

82505ce6-c446-11ec-bce3-dac502259ad0.png

2.更改J-Flash配置

由于Keil官方没有对该芯片的支持,所以J-Link下载时也无法找到该芯片,所以需要手动添加芯片。更改步骤官方提供有说明文档。

826062d0-c446-11ec-bce3-dac502259ad0.png

主要步骤是:

修改JLinkDevices配置文档

添加Nationstech的下载算法文件

添加Nationstech的JFlash 工程文件

添加解锁Nationstech芯片读保护L1 等级的应用程序

进行如上步骤后,启动J-Flash就能够扫描并连接到芯片,但是有可能keil链接的J-Flash和安装的J-Flash不是一个路径,所以将配置好的J-Flash文件替换keil下Keil5ARMSegger目录文件,就能够正常下载调试。

3.更改芯片

826d54ea-c446-11ec-bce3-dac502259ad0.png

4.添加驱动文件

将N32的底层驱动库拷贝到工程目录下,并将include路径添加进去。

827ab0ea-c446-11ec-bce3-dac502259ad0.png

828ba616-c446-11ec-bce3-dac502259ad0.png

5.更改全局变量

829a4176-c446-11ec-bce3-dac502259ad0.png

6.将启动文件和驱动文件替换为N32库文件

82a5ee40-c446-11ec-bce3-dac502259ad0.png

7.将所有的stm32l1xx替换为n32g45x

二、底层驱动函数接口对照表

更改代码,将STM32的驱动函数替换为N32的驱动函数,这部分比较繁琐,需要慢慢替换,下面是我整理的替换对照表。

82bde5d6-c446-11ec-bce3-dac502259ad0.png

82d6e93c-c446-11ec-bce3-dac502259ad0.png

82eb5c28-c446-11ec-bce3-dac502259ad0.png

三、踩坑记录

经过上面的替换,应该可以编译过去了,但是这指示开始,后面悲剧的踩坑大战才刚刚开始。

1.仿真卡死

程序仿真卡死,单步调试发现卡死在OSInit()函数里面,这个函数是OS的初始化函数,所以应该是OS配置的问题,排查下来发现是启动文件里面的OS启动项没有更改,更改如下:

82f76d9c-c446-11ec-bce3-dac502259ad0.png

2.DMA配置出错

程序能够进入到任务中后,调试发现无法进入到串口接收中断,但是示波器中有数据,而且中断都没有进入,应该是卡死在优先级高的中断中,排查发现,是DMA发送中断的配置有问题,导致一直卡死在DMA中断中。下面是DMA部分的配置。

8304fcb4-c446-11ec-bce3-dac502259ad0.png

8311bfee-c446-11ec-bce3-dac502259ad0.png

3.Flash配置

由于国民芯片和STM32芯片的FLASH划分有区别,所以FLASH的替换是比较费事的部分,先对比一下两个片子的区别:

STM32L151的flash部分:

832479ea-c446-11ec-bce3-dac502259ad0.png

N32G455芯片的flash部分:

8331e5c6-c446-11ec-bce3-dac502259ad0.png

可以看出STM32单独有EEPROM的划分,而N32是没有的,只有flash部分。所以要注意两点:

Flash空间的问题,STM32可用空间要比N32的空间大;

底层接口函数,STM32有操作EEPROM的函数,而N32没有,只能使用flash操作函数。

下面是flash部分的操作:

834548b4-c446-11ec-bce3-dac502259ad0.png

4.bootloader移植

由于本项目采用bootloader引导主程序的方式,因此要注意烧写空间的配置,配置点在下面位置:

8356fa64-c446-11ec-bce3-dac502259ad0.png

当单独调试其中的程序时,烧写程序需要将整个flash擦除,要不运行不正常。

5.OS初始化卡死

又遇到程序卡死问题,这次是主程序,而且主程序起始地址为0x8000000时单独运行良好,但是改成0x8007000用bootloader跳转过去就卡死,也是卡死在OS的初始化中。因为单独运行良好,所以排查起来困难些。最终定位是堆栈和堆的空间设置太大了,设置小了后就可以运行。更改该空间的位置如下:

8363fdd6-c446-11ec-bce3-dac502259ad0.png

而且问题还不是堆栈的空间不够用,是空间设置太大了。有点无语。

6.程序跳转后运行不正常

这是最后的问题,程序能够从bootloader跳转,但是运行不正常,咨询了厂家技术人员,技术人员反馈可以采用分散加载的方式进行排查,也就是让芯片直接在主程序烧录的位置启动,分散加载的教程网上比较多,主要需要设置烧录域和启动域地址,还有VTOR寄存器

配置如下所示:

8379a4ce-c446-11ec-bce3-dac502259ad0.png

需要编写*.ini文件更改VTOR,ini文件编写如下:

838639d2-c446-11ec-bce3-dac502259ad0.png

在keil中加载,使得软件启动后先配置单片机

8390a552-c446-11ec-bce3-dac502259ad0.png

配置好后可以实现分散加载,能够是程序在烧录位置启动,发现程序分散加载可以运行正常,但是bootloader跳转不正常,因此需要排查跳转部分的问题。最终定位STM32在主程序启动时不会重启向量表,而N32会重启向量表,在主程序启动位置更改如下:

83a6a50a-c446-11ec-bce3-dac502259ad0.png

跳转部分代码如下:

83b78492-c446-11ec-bce3-dac502259ad0.png

CSDN德玛西亚吴彦祖

原文链接:https://blog.csdn.net/zhang421412170/article/details/116779169

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    463

    文章

    54443

    浏览量

    469443
  • STM32
    +关注

    关注

    2313

    文章

    11195

    浏览量

    374675

原文标题:国产芯片N32替换STM32的步骤

文章出处:【微信号:c-stm32,微信公众号:STM32嵌入式开发】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    国民技术推出光模块专属主控MCU—N32H493

    在AI算力需求爆发式增长与光模块速率向800G/1.6T加速迭代的双重驱动下,光模块核心控制芯片的国产化进程迎来关键突破。2026年4月22日,国民技术股份有限公司正式发布国内首款适配800G
    的头像 发表于 04-23 10:54 498次阅读

    国民技术与汇川技术深化战略合作

    近日, 国民技术股份有限公司(以下简称“国民技术”)与深圳市汇川技术股份有限公司(以下简称“汇川技术
    的头像 发表于 04-09 14:53 410次阅读

    国民技术在港交所正式挂牌上市

    3月23日,国民技术股份有限公司(股票代码:02701.HK;300077.SZ)在港交所正式挂牌上市,成功登陆国际资本市场,开启“A+H”两地上市的全新发展篇章。这是国民技术发展历程
    的头像 发表于 03-24 14:29 570次阅读

    国民技术发布N32Cube芯片配置与初始化代码生成工具

    1月30日,国民技术(NSING)正式发布N32Cube——芯片配置与初始化代码生成工具,让时钟、引脚与外设的配置一目了然、轻松上手!
    的头像 发表于 02-02 15:26 895次阅读
    <b class='flag-5'>国民</b><b class='flag-5'>技术</b>发布<b class='flag-5'>N</b>32Cube芯片配置与初始化代码生成工具

    国民技术荣获维科杯·OFweek 2025物联网行业优秀解决方案奖

    12月19日,国民技术股份有限公司凭借 “NSTurnkey-SmartToken:基于N32S0xx安全芯片的一站式交钥匙方案” ,在“维科杯·OFweek 2025物联网行业年度评选”中,从近
    的头像 发表于 12-28 11:49 754次阅读
    <b class='flag-5'>国民</b><b class='flag-5'>技术</b>荣获维科杯·OFweek 2025物联网行业优秀解决方案奖

    新国标下,电动自行车如何更安全、更智能、更经济?国民技术N32 系列产品以四重价值给出答案

    随着新国标政策全面落地电动自行车行业正经历从“速度竞争”到“安全智能”的深度转型。国民技术N32系列产品凭借全面覆盖、高度集成和深度安全设计,成为驱动行业智能化升级的核心技术引擎,为整
    的头像 发表于 12-19 18:31 924次阅读
    新国标下,电动自行车如何更安全、更智能、更经济?<b class='flag-5'>国民</b><b class='flag-5'>技术</b><b class='flag-5'>N32</b> 系列产品以四重价值给出答案

    国民技术正式推出新款安全芯片N32S035

    近日,国民技术正式推出新款安全芯片N32S035,该产品是一款即用型的物联网安全元件解决方案,主打硬件级高安全能力与紧凑型设计,在芯片级提供可信根,能够为物联网系统开箱即用地提供先进的端到云安全能力。面向物联网设备、身份认证、数
    的头像 发表于 12-01 15:17 1541次阅读

    国民技术N32H78x系列MCU荣获2025年度全球电子成就奖

    N32H78x系列,成功荣获“2025年度全球电子成就奖”。这一荣誉充分体现了业界对国民技术在高端芯片设计领域技术实力与创新能力的广泛认可。
    的头像 发表于 12-01 15:14 1825次阅读

    国民技术发布N32G033x/N32M0xx系列MCU:高集成度电控平台的技术突破与创新

      在2025电机控制先进技术研讨会上,国民技术 正式发布N32G033x/N32M0xx系列MCU ,以突破性的
    的头像 发表于 11-07 09:34 2361次阅读
    <b class='flag-5'>国民</b><b class='flag-5'>技术</b>发布<b class='flag-5'>N</b>32G033x/<b class='flag-5'>N</b>32M0xx系列MCU:高集成度电控平台的<b class='flag-5'>技术</b>突破与创新

    基于STM32N6570-DK探索套件的边缘AI开发平台技术解析

    STMicroelectronics STM32N6570-DK探索套件是用于基于Arm^®^ Cortex ^®^ -M55的STM32N657X0H3Q微控制器的开发平台
    的头像 发表于 10-16 17:20 1267次阅读
    基于<b class='flag-5'>STM32N</b>6570-DK探索套件的边缘AI开发平台<b class='flag-5'>技术</b>解析

    国民芯片N32G435KB 能否用N32G43XCL-STB的BSP?

    最近想用国民芯片进行rtt的开发,看到BSP里有N32G43XCL-STB的BSP,但是用的芯片是N32G435CBL7,本人用的是N32G435KB 请问是否可以套用
    发表于 10-13 07:08

    替换STM32f429I芯片

    用GD32F芯片直接STM32f429i替换芯片,要求不改电路板,软件稍作修改?
    发表于 07-09 22:09

    昂科烧录器支持Nation国民技术的多用途安全芯片N32S032

    芯片烧录领导者昂科技术传来重要消息,其烧录软件迎来了一次重大的版本升级。在发布新版本烧录软件的同时,昂科技术同步宣布新增了多款兼容的芯片型号,国民技术的多用途安全芯片
    的头像 发表于 06-11 19:09 1138次阅读
    昂科烧录器支持Nation<b class='flag-5'>国民</b><b class='flag-5'>技术</b>的多用途安全芯片<b class='flag-5'>N</b>32S032

    PDL电台设置更改操作流程

    电子发烧友网站提供《PDL电台设置更改操作流程.pdf》资料免费下载
    发表于 06-04 16:46 29次下载

    国民技术能否开展一个M7处理器的试用活动。

    国民技术最近推出了M7处理器,看起来能力很强,电子发烧友能不能联合国民技术开展一个M7使用的活动,让大家了解下M7核的国民
    发表于 05-20 22:04