cortex-m

    2熱度

    1回答

    我最近使用了一個板(LPCXpresso 5411x)做一些計算,我們試圖減少週期,只要我們能夠節省我們的特定需求的運行時間,所以我需要對cortex-m4指令的成本週期進行一些研究。我發現很多奇怪的東西(不能用我在互聯網上找到的東西解釋) 我用DWT-> CYCCNT來計算我想測試的函數所消耗的週期數。 int start_cycle, end_cycle; __asm volatile (

    2熱度

    3回答

    我有一個隨機數發生器,它在恆定時間內運行。 原型此功能如下: uint8_t rand(); 我希望能夠做的就是創建一個隨機返回一個uint8_t使得輸出爲0,最大值之間的函數,其中最大的是最大數量要退回。這種功能的原型將是: uint8_t randi(uint8_t max); 有算法在線做這個和堆棧溢出。例如,https://stackoverflow.com/a/6852396/1

    0熱度

    1回答

    我試圖配置我的SAMD21時鐘以儘可能快地進行。因此,我使用內部8 MHz振盪器爲通用時鐘發生器1(預分頻器爲8)供電,以生成一個通用時鐘來饋送數字鎖相環,然後反饋給通用時鐘發生器0(我的主時鐘)應該爲CPU提供時鐘,但微型運行速度非常緩慢,我在哪裏犯了一個錯誤? 我遵循本指南http://borkedlabs.com/2014/08/21/asf-samd21-dpll-for-internal

    0熱度

    1回答

    我剛開始學習的ARM Cortex-M4,它擁有先進的功能,如DSP指令,...... uint32_t my_rearrange(uint32_t value){ uint32_t value_high = (value & 0xffff0000)>>16; uint32_t value_low = (value & 0x0000ffff); return (val

    1熱度

    2回答

    我正在使用帶有MCU G ++編譯器的STM32開發板&鏈接器:arm-none-eabi-g++。然而,這似乎與STL不兼容: #include <list> int main (void) { std::list<int> list; list.push_back(1); list.sort(); return 0; } 鏈接器的錯誤信息

    2熱度

    1回答

    我正在使用ARM Cortex-M7(ATMEL處理器)惠普Chan's FAT File System Module,並且在寫入非乘法字節數量爲SECTOR_SIZE_DEFAULT(512字節)的文件時遇到問題。 經過一個循環,我用不同長度的字節(不是多個SECTOR_SIZE_DEFAULT)使用f_write()函數寫入文件,但有些字符出現錯誤。 這裏就是寫作發生的主要部分: f_op

    1熱度

    1回答

    最近我一直在試圖對我的STM32F4-Discovery評估板進行FFT計算,然後將它發送到PC。我研究過我的問題 - 我認爲我在製造商提供的FFT功能上做了一些錯誤。 我正在使用CMSIS-DSP庫。 現在我已經用代碼生成了樣本(如果這樣做正確,我將通過麥克風進行採樣)。 我使用arm_rfft_fast_f32我的數據將是在未來的花車,但結果我得到了我的輸出數組是瘋了(我認爲) - 我得到0以

    1熱度

    1回答

    我正在開發Atmel應用程序SAME70Q21微處理器。該MCU具有ARM Coretex-M7內核。 愛特梅爾在這個特殊的MCU變體中實現了ARM TCM(緊耦合存儲器)。 Atmel似乎將TCM分爲「ITCM」(指令TCM)和「DTCM」(數據TCM)兩部分。我正在使用DTCM進行快速存儲,通常來自中斷。但是,ITCM目前實際上已關閉,但TCM的配置系統仍分配了32K的數據。 我在想,因爲我沒

    0熱度

    1回答

    我目前正在開發一個系統,該系統包括向通過UART連接到Atmel SAML21 Xplained Pro電路板的傳感器設備發送請求字符串。我正在測試Arduino板作爲「傳感器設備」,但最終它將用於Rotronic HC-2傳感器。 的過程是這樣的: MCU sends string { 99RDD} over UART to sensor -> delay of up to 500ms ->

    3熱度

    1回答

    ARM Cortex-M內核文檔說,執行了異常輸入堆棧分幀。這會導致寄存器R0,R1,R2,R3,R12,LR,PC,xPSR被壓入當前堆棧。 我的問題是爲什麼這種方式只推送這些寄存器而不是所有的上下文?例如,如果某些數據在R5寄存器中,則在異常處理程序使用該寄存器的情況下將被覆蓋。 異常處理程序的編譯函數本身會推送一些寄存器(以及其他常規函數,因爲異常處理函數沒有區別),但經過很多調試後,我發現