chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

同樣的代碼在Nordic官方開(kāi)發(fā)板上運(yùn)行正常,在自己板子上就跑不起來(lái),怎么辦?

汪文 ? 來(lái)源:jf_59156313 ? 作者:jf_59156313 ? 2025-05-09 13:53 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

同樣的代碼在Nordic官方開(kāi)發(fā)板上可以運(yùn)行正常,但在自己板子上就跑不起來(lái),如果你碰到了上述情況,建議按照如下步驟進(jìn)行自檢:

1.首先確認(rèn)用戶板元器件焊接良好,功能正常。如果你的板子有LED的話,你可以下載Blinky程序去點(diǎn)亮它,Blinky程序所在SDK目錄為:SDK安裝目錄examplesperipheralblinky。如果你的板子沒(méi)有LED,但有UART的話,可以下載CLI代碼去進(jìn)行UART交互,CLI代碼所在目錄為:SDK安裝目錄examplesperipheralcli。如果這2個(gè)程序能運(yùn)行正常,說(shuō)明你的焊接問(wèn)題不大。


2.確認(rèn)高頻晶振工作正常。由于射頻一定要用到外部高頻晶振,建議用示波器測(cè)一下高頻晶振是否可以正常起振,以確保高頻晶振工作沒(méi)問(wèn)題。這里需要注意的是,Nordic nRF5芯片高頻時(shí)鐘默認(rèn)使用內(nèi)部RC作為時(shí)鐘源,為了讓外部高頻晶振起振,必須使用代碼顯式地打開(kāi)高頻晶振,可以使用如下2種方式之一來(lái)顯式地打開(kāi)高頻高精度外部晶振:
API方式
ret_code_t err_code = nrf_drv_clock_init();
ASSERT((err_code == NRF_SUCCESS) || (err_code == NRF_ERROR_MODULE_ALREADY_INITIALIZED));

nrf_drv_clock_hfclk_request(NULL);
while (!nrf_drv_clock_hfclk_is_running())
{
// spin lock
}

直接操作寄存器方式
NRF_CLOCK->EVENTS_HFCLKSTARTED = 0;

NRF_CLOCK->TASKS_HFCLKSTART = 1;

while (NRF_CLOCK->EVENTS_HFCLKSTARTED == 0);


3.確認(rèn)有沒(méi)有燒寫(xiě)softdevice以及softdevice版本是否正確。請(qǐng)使用SDK里面自帶的softdevice進(jìn)行測(cè)試


4.確認(rèn)有沒(méi)有外部低頻32K晶振。Softdevice默認(rèn)使用外部32K晶振作為低頻時(shí)鐘,如果你的板子沒(méi)有外部32K晶振,那么需要更改協(xié)議棧默認(rèn)初始化參數(shù),將低頻時(shí)鐘改為內(nèi)部RC 32K。最新版本SDK需要更改sdk_config.h文件中的如下地方:

wKgZPGgdmHWAE781AAF3R5HPIFk503.png

wKgZO2gdmHWAf5BGAAHdSG09Xkc918.png


老版本SDK(SDK13之前)直接在源文件中做如下更改:

nrf_clock_lf_cfg_t clock_lf_cfg = NRF_CLOCK_LFCLKSRC;

clock_lf_cfg.source = NRF_CLOCK_LF_SRC_RC;

clock_lf_cfg.rc_ctiv = 16;

clock_lf_cfg.rc_temp_ctiv = 2;
//nRF52為2;nRF51為1;詳情請(qǐng)看SDK相關(guān)頭文件說(shuō)明


5.確認(rèn)有沒(méi)有打開(kāi)DCDC模式。軟件打開(kāi)了DCDC模式,而用戶板又沒(méi)有DCDC相關(guān)外圍電路,那么板子跑不起來(lái)也就正常了。如果屬于這種情況,把軟件中的調(diào)用語(yǔ)句:sd_power_dcdc_mode_set(NRF_POWER_DCDC_ENABLE),刪掉即可。


6.確認(rèn)用戶板芯片型號(hào)和DK上的芯片型號(hào)是不是一致。nRF51/nRF52系列里面包含多個(gè)子產(chǎn)品,每個(gè)子產(chǎn)品之間Flash或者RAM空間會(huì)有所不同。Nordic DK使用了資源最大最全的那個(gè)型號(hào),如果你選擇的型號(hào)Flash空間或者RAM空間跟DK上的不一樣,那么你需要將工具鏈的鏈接腳本中Flash和RAM的值進(jìn)行相應(yīng)調(diào)整,其中Keil調(diào)整Flash和RAM空間的界面如下所示:

wKgZPGgdmHWAbD8eAAFy1kdqjwc722.png


7.確認(rèn)用戶板引腳定義有沒(méi)有與DK相沖突。nRF5芯片在用戶板上有可能與傳感器,顯示屏,GPRS模塊,按鍵等相連,這其中用到的IO引腳有可能被固件初始化為其他用途,比如UART日志打印,也就是說(shuō),同樣的引腳,用戶板定義的功能和DK定義的功能不一致,所以DK可以正常運(yùn)行,而用戶板無(wú)法正常運(yùn)行。此時(shí)一定要把相關(guān)引腳按照用戶板的設(shè)計(jì)目的重新初始化,這樣就可以解決這個(gè)沖突問(wèn)題。常見(jiàn)的資源定義沖突有:
buttons_leds_init()函數(shù)。buttons_leds_init會(huì)將某些IO口定義為按鍵和LED,如果用戶板和DK定義不一樣,有可能會(huì)出問(wèn)題。
uart_init()。當(dāng)采用uart打印log的時(shí)候,固件程序會(huì)對(duì)uart進(jìn)行初始化,此時(shí)有可能會(huì)導(dǎo)致資源定義沖突,比如用戶板將相關(guān)uart引腳用于其他功能,從而導(dǎo)致板子跑不起來(lái)。
SPI,TWI等其他外設(shè)資源定義沖突。必須確保所有外設(shè)引腳定義跟用戶板一致,而不是使用DK默認(rèn)值,否則有可能導(dǎo)致用戶板跑不起來(lái)。


8.請(qǐng)確認(rèn)外部高頻晶振的頻率。這個(gè)只有nRF51有這個(gè)檢查項(xiàng),nRF52不存在這個(gè)問(wèn)題,如果你使用的是nRF52的話,可以跳過(guò)這項(xiàng)不看。nRF51同時(shí)支持16M和32M外部晶振(注:nRF52只支持32M外部晶振),而且系統(tǒng)默認(rèn)外部晶振為16M,如果你選擇的外部晶振是32M,那么需要在軟件中對(duì)其進(jìn)行額外配置,否則系統(tǒng)跑不起來(lái)。此種情況有2種解決方法:
方法1。修改UICR中的寄存器XTALFREQ,由于UICR是Flash,對(duì)UICR的修改可以和代碼下載合并在一塊去做。(推薦使用方法1)
方法2。在main函數(shù)的開(kāi)始處,加入NRF_CLOCK->XTALFREQ=0x00,即可。


9.最后也是最重要的,debug問(wèn)題具體出在哪,你可以通過(guò)打日志方式進(jìn)行debug,也可以通過(guò)IDE的debug功能去調(diào)試,具體請(qǐng)參考:如何調(diào)試nRF5 SDK。記住,定位問(wèn)題的時(shí)候,一定要定位到問(wèn)題具體出在哪一行代碼,而不是某個(gè)函數(shù),否則問(wèn)題就不算定位成功。問(wèn)題沒(méi)有定位成功,當(dāng)然就無(wú)從下手去解決它。反之,定位到出問(wèn)題的代碼行,你自己就可以很快分析問(wèn)題原因所在,從而快速解決它。

審核編輯 黃宇

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

    關(guān)注

    243

    文章

    24427

    瀏覽量

    687082
  • 芯片
    +關(guān)注

    關(guān)注

    462

    文章

    53499

    瀏覽量

    458584
  • 開(kāi)發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    6112

    瀏覽量

    112942
  • Nordic
    +關(guān)注

    關(guān)注

    9

    文章

    238

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    nordic NRF54藍(lán)牙設(shè)備Google Pixel 10“聽(tīng)診”藍(lán)牙信道示例

    整合到正式公開(kāi)版本中,此步驟將不再需要。 開(kāi)發(fā)板構(gòu)建并燒錄反射器示例程序 第一步是將信道探測(cè)反射器與測(cè)距應(yīng)答器示例程序構(gòu)建并刷寫(xiě)至nRF54L15開(kāi)發(fā)套件。為確保nRF Conne
    發(fā)表于 11-26 17:44

    如何自己設(shè)計(jì)一個(gè)基于RISC-V的SoC架構(gòu),最后可以FPGA起來(lái)

    如何自己設(shè)計(jì)一個(gè)基于RISC-V的SoC架構(gòu),最后可以FPGA起來(lái)
    發(fā)表于 11-11 08:03

    RV-STAR開(kāi)發(fā)板使用JLink連接,什么原因?

    用Type C連接RV-STAR開(kāi)發(fā)板下載和調(diào)試都OK,但是使用JLink連接,按照Nuclei Studio IDE 使用說(shuō)明Release 2020.09 的操作,同時(shí)也按論壇
    發(fā)表于 11-07 07:27

    Windows10運(yùn)行vivado使用tcl文件創(chuàng)建E203項(xiàng)目路徑錯(cuò)誤的問(wèn)題

    prologue_setup.tcl文件后,都會(huì)出現(xiàn)文件路徑匹配,總是路徑前多出一個(gè)盤符加冒號(hào),類似“e:e:....”,所以查閱了相關(guān)資料后,手動(dòng)將prologue_setup.tcl文件中的
    發(fā)表于 10-28 07:19

    Cherry USB可以cortex-A7 開(kāi)發(fā)板使用嗎?

    請(qǐng)教下 Cherry USB 可以cortex-A7 開(kāi)發(fā)板使用嗎
    發(fā)表于 09-25 06:24

    Adafruit 4343 開(kāi)發(fā)板紅色 LED 閃爍, 且屏幕工作, 怎么解決?

    Adafruit 4343 開(kāi)發(fā)板紅色 LED 閃爍, 且屏幕工作, 該怎么辦
    發(fā)表于 09-08 07:19

    【匯思博SEEK100開(kāi)發(fā)板試用體驗(yàn)】開(kāi)發(fā)板鴻蒙OS搭建QT開(kāi)發(fā)環(huán)境

    安裝和運(yùn)行。 (四)部署到 SEEK100 開(kāi)發(fā)板 1. 使用 USB 數(shù)據(jù)線將 SEEK100 開(kāi)發(fā)板與電腦連接,確保開(kāi)發(fā)板處于正常工作狀
    發(fā)表于 08-24 18:34

    起來(lái)玩轉(zhuǎn)CW32L011無(wú)刷直流電機(jī)驅(qū)動(dòng)開(kāi)發(fā)板

    、體驗(yàn)總結(jié) CW32生態(tài)社區(qū)推出的這個(gè)CW32L011無(wú)刷直流電機(jī)驅(qū)動(dòng)開(kāi)發(fā)板板子上接口功能還是比較全面的,硬件基本相當(dāng)于產(chǎn)品級(jí)的了,另外板子
    發(fā)表于 08-21 23:04

    【飛凌T527N開(kāi)發(fā)板試用】QT應(yīng)用開(kāi)發(fā)

    點(diǎn)擊左下角 錘子?圖標(biāo) 就可以交叉編譯項(xiàng)目。 編譯出的arm架構(gòu)可執(zhí)行文件如下: 將目標(biāo)文件發(fā)送到開(kāi)發(fā)板開(kāi)發(fā)板運(yùn)行,自定義的
    發(fā)表于 08-19 15:04

    【干貨分享】M-K1HSE開(kāi)發(fā)板使用SecureCRT工具進(jìn)行調(diào)試

    SecureCRT是一款支持SSH協(xié)議的終端仿真軟件,可通過(guò)串口或網(wǎng)口對(duì)開(kāi)發(fā)板系統(tǒng)信息進(jìn)行查看、對(duì)開(kāi)發(fā)板系統(tǒng)進(jìn)行調(diào)試等。
    的頭像 發(fā)表于 08-12 08:07 ?1115次閱讀
    【干貨分享】<b class='flag-5'>在</b>M-K1HSE<b class='flag-5'>開(kāi)發(fā)板</b><b class='flag-5'>上</b>使用SecureCRT工具進(jìn)行調(diào)試

    V2板子上部署豆包模型調(diào)試指南

    我們將修改好的代碼,上傳到板子,之后終端上運(yùn)行我們的程序。板子一定要先連接Wi-Fi,再去
    發(fā)表于 05-25 10:17

    同樣代碼官方開(kāi)發(fā)板運(yùn)行正常,自己板子就跑起來(lái),怎么辦?

    同樣代碼Nordic官方開(kāi)發(fā)板可以
    的頭像 發(fā)表于 05-12 15:26 ?562次閱讀
    <b class='flag-5'>同樣</b>的<b class='flag-5'>代碼</b><b class='flag-5'>在</b><b class='flag-5'>官方</b><b class='flag-5'>開(kāi)發(fā)板</b><b class='flag-5'>上</b><b class='flag-5'>運(yùn)行</b><b class='flag-5'>正常</b>,<b class='flag-5'>在</b><b class='flag-5'>自己</b><b class='flag-5'>板子</b><b class='flag-5'>上</b><b class='flag-5'>就跑</b><b class='flag-5'>不</b><b class='flag-5'>起來(lái)</b>,<b class='flag-5'>怎么辦</b>?

    i.MX RT 1176正常運(yùn)行代碼時(shí)與使用IAR調(diào)試代碼時(shí)存在一些奇怪的差異,為什么?

    i.MX RT 1176 正常運(yùn)行代碼時(shí)的行為與使用 IAR 調(diào)試代碼時(shí)的行為之間存在一
    發(fā)表于 03-17 07:26

    STM32F103RBT6開(kāi)發(fā)板每次程序都得重新燒錄才能正常運(yùn)行,如何解決?

    每次板子都得重新燒錄程序才能運(yùn)行起來(lái)。第一次燒錄完程序后,能正常運(yùn)行,等我把開(kāi)關(guān)斷開(kāi)再打開(kāi),程序就基本運(yùn)
    發(fā)表于 03-11 07:40

    #DeepSeek Banana Pi #RK3576 #RK3588 開(kāi)發(fā)板運(yùn)行良好,運(yùn)行效率高

    開(kāi)發(fā)板
    Banana Pi開(kāi)源硬件
    發(fā)布于 :2025年02月08日 15:39:38