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

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

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

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

板子功耗高的原因有哪些

jf_14701710 ? 來(lái)源:jf_14701710 ? 作者:jf_14701710 ? 2025-05-12 09:19 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

低功耗藍(lán)牙應(yīng)用對(duì)功耗要求越低越好,功耗越低電池續(xù)航時(shí)間就越長(zhǎng),用戶體驗(yàn)就越好。當(dāng)你發(fā)現(xiàn)你板子功耗偏高時(shí),建議按照如下步驟進(jìn)行自檢:

確認(rèn)理論功耗值。Bluetooth LE功耗跟廣播間隔或者連接間隔是成正比關(guān)系的,所以20ms連接間隔下的功耗幾乎是1s狀態(tài)下的50倍!,單純地問(wèn)“1mA功耗高不高?”是沒(méi)有意義的,必須結(jié)合特定的應(yīng)用場(chǎng)景才有意義。不管是廣播還是連接,特定的使用場(chǎng)景會(huì)有一個(gè)理論功耗值,大家可以訪問(wèn)網(wǎng)址: https://devzone.nordicsemi.com/power/,以獲得你的使用場(chǎng)景下理論功耗多少,比如連接模式下,每1秒鐘發(fā)20個(gè)字節(jié)的數(shù)據(jù)包,這種模式下理論功耗為:7.5uA

wKgZPGghTLuAYoUxAABJOiwN7HU27.jpeg

確定板子漏電流。如果板子包含的元器件比較多,那么也有可能是其他非nRF5元器件導(dǎo)致的高功耗,比如傳感器,codec,或者電路設(shè)計(jì)本身的問(wèn)題等。為了確定高功耗是來(lái)自nRF5器件還是其他器件,根據(jù)自己的情況,有如下三個(gè)方法供你參考:一如果你的固件可以直接在Nordic官方DK上運(yùn)行,那么你可以把你的固件直接下載到DK上,然后通過(guò)DK測(cè)量nRF5芯片的功耗,如果這個(gè)功耗正常,那么大電流應(yīng)該是由其他非nRF5元器件引起的;如果這個(gè)功耗偏高,那么大電流的確是由nRF5芯片固件引起的,此時(shí)請(qǐng)參考后續(xù)操作步驟說(shuō)明。二如果你的固件不能在DK上直接運(yùn)行,那么可以讓nRF5芯片進(jìn)入深度睡眠模式(System OFF模式),此時(shí)nRF5芯片功耗只有零點(diǎn)幾微安,nRF5芯片所有IO口將處于floating狀態(tài),此時(shí)再測(cè)量板子電流。如果板子電流恢復(fù)正常,那么大電流應(yīng)該是由nRF5芯片固件引起的;如果板子電流還是不正常,那么大電流應(yīng)該由其他非nRF5元器件引起的。關(guān)于如何進(jìn)入深度睡眠模式,你可以參考工程:SDK安裝目錄examplesperipheralram_retentionpca10040blankarm5_no_packs,或者參考ble_app_hrs工程中函數(shù):sleep_mode_enter。三如果你的板子太復(fù)雜,無(wú)法按照上面兩種方法來(lái)確定漏電流,那么只能將板子其他非必需元器件焊下來(lái),只留下一個(gè)nRF5最小工作系統(tǒng),然后再測(cè)量此時(shí)的板子電流是否正常。

確定板子已經(jīng)退出J-Link模式。如果板子一直是電池供電,那么在某些情況下,即使程序下載完成而且運(yùn)行正常,此時(shí)板子有可能還處在J-Link模式。J-Link模式下板子會(huì)有2mA左右的額外電流。要退出J-Link模式,有2種方式,一是給板子進(jìn)行上電復(fù)位,二是通過(guò)nrfjprog發(fā)出—reset指令(nRF52系列)或者—pinreset指令(nRF51系列),兩種方式都能讓板子退出J-Link模式,從而進(jìn)入應(yīng)用模式。

如果最終確認(rèn)大電流的確是由nRF5芯片引起的,那么幾乎可以肯定系統(tǒng)在進(jìn)入idle模式(System ON模式)之前,沒(méi)有關(guān)掉不需要的模塊。模塊沒(méi)有關(guān)掉,它就一直在耗電,從而導(dǎo)致功耗過(guò)大。Idle模式下,如下模塊會(huì)耗費(fèi)比較多的電流,若允許建議全部關(guān)掉。

Idle模式。先說(shuō)明一下什么是idle模式,所謂Idle模式,Nordic芯片手冊(cè)也稱為System ON模式,就是CPU可以不工作而外設(shè)可以繼續(xù)工作的一種低功耗模式。idle模式下,當(dāng)CPU和所有外設(shè)都不工作時(shí),系統(tǒng)電流只有1.2uA左右。(注:除了idle模式,nRF5芯片還支持一種更低功耗的低功耗模式:sleep模式(Nordic芯片手冊(cè)稱為System OFF模式),sleep模式下,CPU和所有外設(shè)都強(qiáng)制關(guān)閉,所以功耗非常低:只有零點(diǎn)幾微安。由于sleep模式下,芯片無(wú)法發(fā)出廣播包或者與手機(jī)保持藍(lán)牙連接,所以sleep模式在Bluetooth LE應(yīng)用中運(yùn)用得并不是很多)。Idle模式可以被任何中斷喚醒(sleep模式只能被IO口喚醒),所以idle模式在實(shí)際應(yīng)用中使用得比較多。在idle模式下,芯片仍然可以正常發(fā)出廣播或者與手機(jī)保持藍(lán)牙連接,所以大部分Bluetooth LE應(yīng)用都是工作在idle模式下,這樣既保持了Bluetooth LE功能又可以實(shí)現(xiàn)低功耗。有softdevice時(shí)進(jìn)入idle模式的函數(shù)是:

sd_app_evt_wait

無(wú)softdevice時(shí)進(jìn)入idle模式的代碼是:

__WFE(); // Clear the internal event register. __SEV(); __WFE();

這里我們順便把進(jìn)入sleep模式的函數(shù)也貼出來(lái),供大家對(duì)比參考。有softdevice時(shí)進(jìn)入sleep模式的函數(shù)是:

sd_power_system_off

無(wú)softdevice時(shí)進(jìn)入sleep模式的代碼是:

// Enter System OFF and wait for wake up from GPIO detect signal. NRF_POWER->SYSTEMOFF = 0x1;

不管softdevice有沒(méi)有使能,idle模式下的電流都很低,只有1.2uA左右

UART/UARTE。由于UART需要實(shí)時(shí)檢測(cè)RX線上有沒(méi)有下降沿,所以一旦UART初始化成功,高頻時(shí)鐘將一直處于打開狀態(tài),從而導(dǎo)致UART模塊消耗的電流比較大,雖然UART模塊本身只需要55uA的工作電流,但是為了配合UART工作其他外設(shè)(比如時(shí)鐘電路)需要消耗250uA左右電流,因此普通UART需要消耗300多微安電流。Nordic還有一個(gè)增強(qiáng)型UART:UARTE,它是帶DMA功能的,而DMA還需要消耗額外的1~2mA電流,這樣UARTE工作的時(shí)候需要消耗1mA多電流。因此在進(jìn)入idle模式之前,強(qiáng)烈建議將UART關(guān)掉,以節(jié)省系統(tǒng)功耗。注:為了達(dá)到低功耗和實(shí)時(shí)性雙重目的,在設(shè)計(jì)UART通信的時(shí)候,我們經(jīng)常會(huì)額外再加2個(gè)GPIO口用來(lái)通知對(duì)方UART要傳送數(shù)據(jù)了。關(guān)閉uart的API為:nrf_drv_uart_uninit或者app_uart_close。

CLI/UART。如果你使用了CLI/UART模塊,請(qǐng)使用cli模塊自帶的uninit函數(shù)去關(guān)閉本模塊。當(dāng)cli模塊和RTOS結(jié)合一起使用的時(shí)候,經(jīng)常發(fā)現(xiàn)cli模塊關(guān)閉不徹底,從而導(dǎo)致idle模式下功耗還是很高(比如450uA左右),此時(shí)有可能需要多次調(diào)用nrf_cli_uninit這個(gè)函數(shù),從而確保cli/uart模塊真正被關(guān)閉了。

GPIOTE。GPIOTE中斷有兩種工作模式:高精度模式(hi_accuracy為true)和低精度模式(hi_accuracy為false)。hi_accuracy為true將使能IN event中斷;hi_accuracy為false將使能Port event中斷。IN event中斷功耗比Port event中斷高10~20uA(nRF51將高出幾百微安),因此如果應(yīng)用邏輯允許的話,那么建議使用低精度模式,即使用如下初始化語(yǔ)句:

GPIOTE_CONFIG_IN_SENSE_TOGGLE(false) //低功耗低精度IO口中斷模式

DMA。Nordic大部分外設(shè)都自帶DMA功能,如果DMA可以關(guān)閉的話(有些設(shè)備DMA是不能關(guān)閉的),用完DMA之后,記得把DMA關(guān)掉,否則會(huì)有1~2mA左右的功耗。使用ADC的時(shí)候尤其要注意這點(diǎn)。

FPU。每當(dāng)程序要執(zhí)行浮點(diǎn)數(shù)運(yùn)算的時(shí)候,Cortex M4F會(huì)自動(dòng)把FPU打開,F(xiàn)PU是耗能大戶,其將消耗7mA以上的電流。此種情況下,進(jìn)入idle模式之前必須手動(dòng)關(guān)閉FPU,手動(dòng)關(guān)閉FPU代碼如下所示:

/* Clear FPSCR register and clear pending FPU interrupts. This code is base on * nRF5x_release_notes.txt in documentation folder. It is necessary part of code when * application using power saving mode and after handling FPU errors in polling mode. */ __set_FPSCR(__get_FPSCR() & ~(FPU_EXCEPTION_MASK)); (void) __get_FPSCR(); NVIC_ClearPendingIRQ(FPU_IRQn);

Timer0/1/2/3/4。Timer的工作電流大概為5~50uA左右(nRF51功耗會(huì)更高),對(duì)低功耗應(yīng)用來(lái)說(shuō),已經(jīng)非常大了。如果你的定時(shí)精度要求不高,而且是毫秒的倍數(shù),那么強(qiáng)烈建議你使用app_timer來(lái)實(shí)現(xiàn)定時(shí)功能,app_timer的功耗只有0.2uA左右。

SPI/TWI/ADC等。在進(jìn)入idle模式之前,建議把SPI/TWI/ADC等模塊也uninit。大家可能會(huì)擔(dān)心反復(fù)init和uninit同一個(gè)模塊會(huì)不會(huì)有問(wèn)題?這個(gè)不用擔(dān)心,目前還沒(méi)看到任何副作用。

ADC。最新的ADC驅(qū)動(dòng)引入了一個(gè)宏:NRFX_SAADC_CONFIG_LP_MODE,如果你發(fā)現(xiàn)uninit ADC后,功耗還是很高,建議打開這個(gè)宏,再試一下,功耗有可能就降下來(lái)了。

帶DMA功能的UARTE。如果你的UART使用了DMA功能,測(cè)試時(shí),發(fā)現(xiàn)大部分時(shí)候uninit UART后功耗都正常,偶爾會(huì)出現(xiàn)uninit后功耗降不下來(lái)的情況,請(qǐng)把這句話加在main函數(shù)的開始:*(volatile uint32_t*)(0x4007AC84) = 0x00000002;

還有一種電流異常情況:大部分芯片功耗是正常的,只有少部分芯片功耗是異常的。這種情況一般都跟IO口狀態(tài)有關(guān),如果碰到這種情況,建議對(duì)芯片每個(gè)IO口進(jìn)行重新初始化,或許問(wèn)題就解決了。

若無(wú)特殊情況,避免使用輸入/NOPULL配置。輸入模式下,要不使用內(nèi)部上拉或下拉,要不使用外部的。

如果不知道該如何配置一個(gè)IO口在idle模式的狀態(tài),建議設(shè)為默認(rèn)狀態(tài),即Floating狀態(tài)。

已使用IO口。不管nRF51還是nRF52,尤其這些IO口被用作為其他外設(shè)比如IIC/SPI等,哪怕IO口之前已經(jīng)是確定狀態(tài),在進(jìn)入idle模式之前,建議對(duì)其再次進(jìn)行初始化,或許問(wèn)題就解決了。

未使用IO口。這個(gè)問(wèn)題好像只有nRF51802才有而且跟板子也有關(guān)系,在進(jìn)入sleep模式或者idle模式之前,對(duì)未使用的IO口進(jìn)行非floating初始化,即把它設(shè)為輸入上拉或者下拉,而不是默認(rèn)的Floating狀態(tài)。(其他芯片好像沒(méi)有發(fā)現(xiàn)這個(gè)問(wèn)題)


審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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)投訴
  • 藍(lán)牙
    +關(guān)注

    關(guān)注

    116

    文章

    6167

    瀏覽量

    176511
  • Nordic
    +關(guān)注

    關(guān)注

    9

    文章

    228

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    電壓暫降的原因哪些?

    電壓暫降的原因可歸納為 電網(wǎng)側(cè)故障、負(fù)荷側(cè)擾動(dòng)、外部環(huán)境影響 三大類,其中電網(wǎng)側(cè)短路故障和負(fù)荷側(cè)沖擊性負(fù)荷啟動(dòng)是最主要誘因,兩者合計(jì)占所有暫降事件的 80% 以上。不同原因的發(fā)生場(chǎng)景、影響機(jī)制及頻率
    的頭像 發(fā)表于 10-11 17:23 ?688次閱讀
    電壓暫降的<b class='flag-5'>原因</b><b class='flag-5'>有</b>哪些?

    pm組件進(jìn)入低功耗不能喚醒是怎么回事?

    我手里的芯片是stm32l412CBT6,使用ENV配置pm組件,調(diào)整idle堆棧大小,配置FINSH對(duì)應(yīng)的串口是uart2,通過(guò)命令pm_release,可以是板子進(jìn)入低功耗,穩(wěn)壓源顯示0mA
    發(fā)表于 09-12 06:04

    從材料到回流焊:多層PCB翹曲的全流程原因分析

    一站式PCBA加工廠家今天為大家講講多層PCB板在 PCBA加工 中為何易產(chǎn)生翹曲?多層PCB板在PCBA加工中產(chǎn)生翹曲的原因。在高端電子產(chǎn)品制造領(lǐng)域,8層及以上的多層PCB板已
    的頭像 發(fā)表于 08-29 09:07 ?587次閱讀
    從材料到回流焊:<b class='flag-5'>高</b>多層PCB翹曲的全流程<b class='flag-5'>原因</b>分析

    超低功耗語(yǔ)音芯片哪些?

    ? 超低功耗語(yǔ)音芯片哪些好處?當(dāng)然是給產(chǎn)品帶來(lái)更好的續(xù)航表現(xiàn)和更好的節(jié)電表現(xiàn),但是一位的追求低功耗的也是不對(duì)的,因?yàn)?b class='flag-5'>功耗和產(chǎn)品性能之間始終是要做取舍的。下面小編給大家?guī)?lái)一些超低
    的頭像 發(fā)表于 07-02 17:27 ?418次閱讀
    超低<b class='flag-5'>功耗</b>語(yǔ)音芯片<b class='flag-5'>有</b>哪些?

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

    同樣的代碼在Nordic官方開發(fā)板上可以運(yùn)行正常,但在自己板子上就跑不起來(lái),如果你碰到了上述情況,建議按照如下步驟進(jìn)行自檢: 首先確認(rèn)用戶板元器件焊接良好,功能正常。如果你的板子LED的話,你可以
    的頭像 發(fā)表于 05-12 15:26 ?444次閱讀
    同樣的代碼在官方開發(fā)板上運(yùn)行正常,在自己<b class='flag-5'>板子</b>上就跑不起來(lái),怎么辦?

    關(guān)于低功耗藍(lán)牙連接功耗的評(píng)估

    如下這個(gè)好用的工具來(lái)進(jìn)行: 例如,想評(píng)估在0dBm下,1s連接間隔下,發(fā)送少量數(shù)據(jù)的功耗是多少,哪怕現(xiàn)在你的板子還沒(méi)畫出來(lái),通過(guò)這個(gè)工具,也可以很快的評(píng)估出來(lái),結(jié)果是6uA左右,方便又快捷。如果又
    發(fā)表于 04-26 17:10

    通訊板的主要類型

    Circuit)是一種專門為某種特定應(yīng)用而設(shè)計(jì)的集成電路。在通信領(lǐng)域中,常見的ASIC板子包括DSP芯片、高速收發(fā)器芯片、射頻前端芯片等,具有功耗低、性能、集成度高等優(yōu)點(diǎn),適合在對(duì)性能和
    的頭像 發(fā)表于 02-26 11:28 ?1150次閱讀

    用第三方的dlp3010板子時(shí)遇到的幾個(gè)問(wèn)題求解

    測(cè)到VOFS=10V,VBIAS=18V,VRST=-14V,1.8v與1.1v電壓均正常,intz信號(hào)為為,host_irq一直為,GUI顯示powered off 想請(qǐng)問(wèn)下dmd初始化失敗的原因
    發(fā)表于 02-26 07:19

    光譜相機(jī)的優(yōu)勢(shì)哪些?

    光譜相機(jī)作為現(xiàn)代信息采集技術(shù)的重要工具,近年來(lái)受到了廣泛關(guān)注。那么,光譜相機(jī)究竟是什么?它比傳統(tǒng)相機(jī)什么獨(dú)特之處?本文將為你一一揭曉。 什么是光譜相機(jī)?
    的頭像 發(fā)表于 02-21 14:54 ?654次閱讀
    <b class='flag-5'>高</b>光譜相機(jī)的優(yōu)勢(shì)<b class='flag-5'>有</b>哪些?

    AN53-微功耗側(cè)MOSFET驅(qū)動(dòng)器

    電子發(fā)燒友網(wǎng)站提供《AN53-微功耗側(cè)MOSFET驅(qū)動(dòng)器.pdf》資料免費(fèi)下載
    發(fā)表于 01-09 14:02 ?0次下載
    AN53-微<b class='flag-5'>功耗</b><b class='flag-5'>高</b>側(cè)MOSFET驅(qū)動(dòng)器

    ads1271損壞的原因哪些?

    量程。我的輸入信號(hào)是從同一個(gè)板子上的電源模塊接出來(lái)的,不知道是否是這個(gè)原因。希望大神能幫助我一下,能不能找出芯片損壞的原因,謝謝?。。?
    發(fā)表于 12-25 08:36

    aducm330刷寫編譯后的程序到板子以后,板子的調(diào)試接口便無(wú)法訪問(wèn),什么原因導(dǎo)致的?如何解決?

    在MDK中開發(fā)了aducm330的程序,基于官方例程的設(shè)置,刷寫編譯后的程序到板子以后,板子的調(diào)試接口便無(wú)法訪問(wèn)。 出現(xiàn)如下的錯(cuò)誤: 是什么原因導(dǎo)致的?如何進(jìn)行修復(fù)?
    發(fā)表于 12-19 06:11

    導(dǎo)致安規(guī)電容損壞的原因哪些

    具備一定的安全標(biāo)準(zhǔn),以保證在故障情況下不會(huì)對(duì)使用者造成電擊或火災(zāi)等危險(xiǎn)。然而,安規(guī)電容也有可能因各種原因發(fā)生損壞,常見的原因包括: 1、過(guò)電壓 安規(guī)電容的額定電壓一定限制。如果施加的電壓超過(guò)電容的額定電壓,電容可能
    的頭像 發(fā)表于 12-07 09:41 ?1569次閱讀
    導(dǎo)致安規(guī)電容損壞的<b class='flag-5'>原因</b><b class='flag-5'>有</b>哪些

    用LM49450做了兩塊板子,LM49450耳放和Speak輸出的聲音中高頻的聲音不正常是什么原因導(dǎo)致的?

    我用LM49450做了兩塊板子,一塊是DEMO板,一塊是正式產(chǎn)品,發(fā)現(xiàn)LM49450耳放和Speak輸出的聲音中高頻的聲音不正常,用示波器量了一下,發(fā)現(xiàn)頻率1KHZ左右及以上的波形重疊的現(xiàn)象,以下就沒(méi)有問(wèn)題,請(qǐng)問(wèn)這是什么原因
    發(fā)表于 11-06 07:47

    TAS5715掃FFT在13K左右個(gè)很高的尖峰是什么原因?

    TAS5715 使用的時(shí)候,掃FFT怎么發(fā)現(xiàn)在13K左右個(gè)很高的尖峰?掃了兩塊板子,還有個(gè)板子是8K左右的尖峰,不知道是什么原因,謝謝!
    發(fā)表于 11-06 07:39