一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用國民技術(shù)的N32替換STM32的操作流程

STM32嵌入式開發(fā) ? 來源:STM32嵌入式開發(fā) ? 作者:STM32嵌入式開發(fā) ? 2022-04-25 11:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

目前大形勢(shì)影響,芯片價(jià)格日益上漲,采購周期變長,導(dǎo)致國產(chǎn)芯片替代進(jìn)口芯片成為大趨勢(shì),該文章記錄了使用國民技術(shù)的N32替換STM32的操作流程。

話不多說,上步驟。

一、工程配置

1.安裝硬件庫

硬件庫為廠家提供的資料,如下圖所示,雙擊安裝,使得keil能夠找到該芯片。

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

2.更改J-Flash配置

由于Keil官方?jīng)]有對(duì)該芯片的支持,所以J-Link下載時(shí)也無法找到該芯片,所以需要手動(dòng)添加芯片。更改步驟官方提供有說明文檔。

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

主要步驟是:

修改JLinkDevices配置文檔

添加Nationstech的下載算法文件

添加Nationstech的JFlash 工程文件

添加解鎖Nationstech芯片讀保護(hù)L1 等級(jí)的應(yīng)用程序

進(jìn)行如上步驟后,啟動(dòng)J-Flash就能夠掃描并連接到芯片,但是有可能keil鏈接的J-Flash和安裝的J-Flash不是一個(gè)路徑,所以將配置好的J-Flash文件替換keil下Keil5ARMSegger目錄文件,就能夠正常下載調(diào)試。

3.更改芯片

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

4.添加驅(qū)動(dòng)文件

將N32的底層驅(qū)動(dòng)庫拷貝到工程目錄下,并將include路徑添加進(jìn)去。

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

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

5.更改全局變量

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

6.將啟動(dòng)文件和驅(qū)動(dòng)文件替換為N32庫文件

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

7.將所有的stm32l1xx替換為n32g45x

二、底層驅(qū)動(dòng)函數(shù)接口對(duì)照表

更改代碼,將STM32的驅(qū)動(dòng)函數(shù)替換為N32的驅(qū)動(dòng)函數(shù),這部分比較繁瑣,需要慢慢替換,下面是我整理的替換對(duì)照表。

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

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

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

三、踩坑記錄

經(jīng)過上面的替換,應(yīng)該可以編譯過去了,但是這指示開始,后面悲劇的踩坑大戰(zhàn)才剛剛開始。

1.仿真卡死

程序仿真卡死,單步調(diào)試發(fā)現(xiàn)卡死在OSInit()函數(shù)里面,這個(gè)函數(shù)是OS的初始化函數(shù),所以應(yīng)該是OS配置的問題,排查下來發(fā)現(xiàn)是啟動(dòng)文件里面的OS啟動(dòng)項(xiàng)沒有更改,更改如下:

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

2.DMA配置出錯(cuò)

程序能夠進(jìn)入到任務(wù)中后,調(diào)試發(fā)現(xiàn)無法進(jìn)入到串口接收中斷,但是示波器中有數(shù)據(jù),而且中斷都沒有進(jìn)入,應(yīng)該是卡死在優(yōu)先級(jí)高的中斷中,排查發(fā)現(xiàn),是DMA發(fā)送中斷的配置有問題,導(dǎo)致一直卡死在DMA中斷中。下面是DMA部分的配置。

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

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

3.Flash配置

由于國民芯片和STM32芯片的FLASH劃分有區(qū)別,所以FLASH的替換是比較費(fèi)事的部分,先對(duì)比一下兩個(gè)片子的區(qū)別:

STM32L151的flash部分:

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

N32G455芯片的flash部分:

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

可以看出STM32單獨(dú)有EEPROM的劃分,而N32是沒有的,只有flash部分。所以要注意兩點(diǎn):

Flash空間的問題,STM32可用空間要比N32的空間大;

底層接口函數(shù),STM32有操作EEPROM的函數(shù),而N32沒有,只能使用flash操作函數(shù)。

下面是flash部分的操作:

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

4.bootloader移植

由于本項(xiàng)目采用bootloader引導(dǎo)主程序的方式,因此要注意燒寫空間的配置,配置點(diǎn)在下面位置:

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

當(dāng)單獨(dú)調(diào)試其中的程序時(shí),燒寫程序需要將整個(gè)flash擦除,要不運(yùn)行不正常。

5.OS初始化卡死

又遇到程序卡死問題,這次是主程序,而且主程序起始地址為0x8000000時(shí)單獨(dú)運(yùn)行良好,但是改成0x8007000用bootloader跳轉(zhuǎn)過去就卡死,也是卡死在OS的初始化中。因?yàn)閱为?dú)運(yùn)行良好,所以排查起來困難些。最終定位是堆棧和堆的空間設(shè)置太大了,設(shè)置小了后就可以運(yùn)行。更改該空間的位置如下:

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

而且問題還不是堆棧的空間不夠用,是空間設(shè)置太大了。有點(diǎn)無語。

6.程序跳轉(zhuǎn)后運(yùn)行不正常

這是最后的問題,程序能夠從bootloader跳轉(zhuǎn),但是運(yùn)行不正常,咨詢了廠家技術(shù)人員,技術(shù)人員反饋可以采用分散加載的方式進(jìn)行排查,也就是讓芯片直接在主程序燒錄的位置啟動(dòng),分散加載的教程網(wǎng)上比較多,主要需要設(shè)置燒錄域和啟動(dòng)域地址,還有VTOR寄存器,

配置如下所示:

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

需要編寫*.ini文件更改VTOR,ini文件編寫如下:

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

在keil中加載,使得軟件啟動(dòng)后先配置單片機(jī)

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

配置好后可以實(shí)現(xiàn)分散加載,能夠是程序在燒錄位置啟動(dòng),發(fā)現(xiàn)程序分散加載可以運(yùn)行正常,但是bootloader跳轉(zhuǎn)不正常,因此需要排查跳轉(zhuǎn)部分的問題。最終定位STM32在主程序啟動(dòng)時(shí)不會(huì)重啟向量表,而N32會(huì)重啟向量表,在主程序啟動(dòng)位置更改如下:

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

跳轉(zhuǎn)部分代碼如下:

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

CSDN德瑪西亞吳彥祖

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

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 芯片
    +關(guān)注

    關(guān)注

    459

    文章

    52474

    瀏覽量

    440510
  • STM32
    +關(guān)注

    關(guān)注

    2293

    文章

    11031

    瀏覽量

    364662

原文標(biāo)題:國產(chǎn)芯片N32替換STM32的步驟

文章出處:【微信號(hào):c-stm32,微信公眾號(hào):STM32嵌入式開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    ES_國民技術(shù)N32G435系列勘誤手冊(cè)V1

    NATION/國民技術(shù)N32G435系列SDK開發(fā)資料
    發(fā)表于 03-17 16:35 ?0次下載

    AN_國民技術(shù)通用MCU RT_Thread設(shè)備注冊(cè)應(yīng)用筆記V1

    NATION/國民技術(shù)N32G435系列SDK開發(fā)資料
    發(fā)表于 03-17 16:35 ?0次下載

    AN國民技術(shù)_N32G43x_N32L43x_N32L40x系列低功耗應(yīng)用筆記V1

    NATION/國民技術(shù)N32G435系列SDK開發(fā)資料
    發(fā)表于 03-17 16:34 ?0次下載

    國民技術(shù)--N32G43XRL-STB_硬件評(píng)估板

    NATION/國民技術(shù)N32G435系列SDK開發(fā)資料
    發(fā)表于 03-17 16:33 ?1次下載

    UM_國民技術(shù)N32G43x系列用戶手冊(cè)V1

    NATION/國民技術(shù)N32G435系列SDK開發(fā)資料
    發(fā)表于 03-17 16:32 ?0次下載

    國民技術(shù)_N32G435系列數(shù)據(jù)手冊(cè)

    NATION/國民技術(shù)N32G435系列SDK開發(fā)資料
    發(fā)表于 03-17 16:31 ?1次下載

    國民技術(shù)_N32G435系列產(chǎn)品簡介

    NATION/國民技術(shù)N32G435系列SDK開發(fā)資料
    發(fā)表于 03-17 16:31 ?0次下載

    活動(dòng)回顧丨國民技術(shù)N32 MCU新成員N32G430 亮相電機(jī)驅(qū)動(dòng)與控制技術(shù)研討會(huì)

    6月10日,由大比特主辦的電機(jī)驅(qū)動(dòng)與控制技術(shù)研討會(huì)在深圳成功舉辦。國民技術(shù)受邀出席了此次研討會(huì)。此次研討會(huì)上,國民技術(shù)重點(diǎn)展示了業(yè)內(nèi)32位性
    的頭像 發(fā)表于 11-27 15:00 ?661次閱讀
    活動(dòng)回顧丨<b class='flag-5'>國民</b><b class='flag-5'>技術(shù)</b>攜<b class='flag-5'>N32</b> MCU新成員<b class='flag-5'>N</b>32G430 亮相電機(jī)驅(qū)動(dòng)與控制<b class='flag-5'>技術(shù)</b>研討會(huì)

    N32 MCU新成員N32G430,創(chuàng)Arm Cortex-M4F業(yè)內(nèi)性價(jià)比新標(biāo)桿

    內(nèi)核產(chǎn)品價(jià)格,創(chuàng)立32位MCU業(yè)內(nèi)性價(jià)比新標(biāo)桿!國民技術(shù)N32系列MCU自推出以來已量產(chǎn)12個(gè)系列共100余款產(chǎn)品,市場(chǎng)取得全面突破,呈現(xiàn)規(guī)模效應(yīng),已得到各行業(yè)標(biāo)
    的頭像 發(fā)表于 11-27 15:00 ?738次閱讀
    <b class='flag-5'>N32</b> MCU新成員<b class='flag-5'>N</b>32G430,創(chuàng)Arm Cortex-M4F業(yè)內(nèi)性價(jià)比新標(biāo)桿

    國民技術(shù)N32 MCU產(chǎn)品榮獲IEC/EN/UL 60730功能安全認(rèn)證

    近日,國民技術(shù)宣布,其多個(gè)系列的N32 MCU產(chǎn)品成功通過全球領(lǐng)先的檢驗(yàn)、鑒定、測(cè)試和認(rèn)證機(jī)構(gòu)SGS的嚴(yán)格審核,榮獲IEC/EN/UL 60730功能安全測(cè)試認(rèn)證,并獲得了SGS頒發(fā)的相關(guān)認(rèn)證證書。這一殊榮標(biāo)志著
    的頭像 發(fā)表于 11-12 16:40 ?1167次閱讀

    國民技術(shù)N32H47/8系列MCU連續(xù)獲得三項(xiàng)行業(yè)獎(jiǎng)

    近日,深具行業(yè)影響力的Aspencore 2024全球電子成就獎(jiǎng)(WEAA)頒獎(jiǎng)典禮在深圳隆重舉行,國民技術(shù)面向工業(yè)及數(shù)字能源領(lǐng)域的高能微控制器N32H47/8系列MCU榮獲“2024全球電子成就獎(jiǎng)?年度微控制器/接口產(chǎn)品”。
    的頭像 發(fā)表于 11-09 13:56 ?1720次閱讀
    <b class='flag-5'>國民</b><b class='flag-5'>技術(shù)</b><b class='flag-5'>N</b>32H47/8系列MCU連續(xù)獲得三項(xiàng)行業(yè)獎(jiǎng)

    SGS授予國民技術(shù)IEC/EN/UL 60730功能安全認(rèn)證證書

    近日,國際公認(rèn)的測(cè)試、檢驗(yàn)和認(rèn)證機(jī)構(gòu)SGS為國民技術(shù)股份有限公司(以下簡稱“國民技術(shù)”)頒發(fā)IEC/EN/UL 60730功能安全認(rèn)證證書。獲此證書,標(biāo)志著
    的頭像 發(fā)表于 10-29 14:47 ?1442次閱讀

    國民技術(shù)N32 MCU通過IEC/EN/UL 60730功能安全認(rèn)證

    近期,國民技術(shù)多個(gè)系列的N32MCU產(chǎn)品先后通過了全球領(lǐng)先的檢驗(yàn)、鑒定、測(cè)試和認(rèn)證機(jī)構(gòu)SGS的IEC/EN/UL60730功能安全測(cè)試認(rèn)證,獲得SGS頒發(fā)的IEC/EN/UL60730認(rèn)證證書,助力
    的頭像 發(fā)表于 10-25 08:07 ?994次閱讀
    <b class='flag-5'>國民</b><b class='flag-5'>技術(shù)</b><b class='flag-5'>N32</b> MCU通過IEC/EN/UL 60730功能安全認(rèn)證

    GD32如何替換STM32

    GD32替換Stm32注意事項(xiàng)
    發(fā)表于 08-23 11:31 ?5次下載

    國民技術(shù)N32H4系列MCU賦能工業(yè)與數(shù)字能源新紀(jì)元

    近日,在深圳舉辦的2024全球MCU及嵌入式生態(tài)發(fā)展大會(huì)上,電子工程領(lǐng)域的權(quán)威媒體AspenCore匯聚了眾多行業(yè)精英。國民技術(shù)副總經(jīng)理鐘新利受邀出席大會(huì)主峰會(huì),并發(fā)表了題為“N32H4系列MCU高能助力工業(yè)與數(shù)字能源”的精彩演
    的頭像 發(fā)表于 07-29 11:23 ?1718次閱讀