h1_key

當(dāng)前位置:首頁 >新聞資訊 > 技術(shù)文章>華大>華大HC32F460單片機變量定位到SRAMH
華大HC32F460單片機變量定位到SRAMH
2023-03-21 1310次

華大HC32F460單片機內(nèi)部有一共192KB的SRAM,其中有32KB的快速SRAM區(qū),SRAMH。所謂SRAMH快速SRAM,就是在CPU運行在高速頻率下,比如200Mhz,讀取內(nèi)部SRAM無需等待CPU時鐘周期,如手冊中的下圖: 


其中只有SRAMH在全頻段內(nèi)是無需CPU等待的,其他SRAM在100Mhz以上都需要等待至少1個CPU周期。所以如果做一定的數(shù)據(jù)算法,需要大量頻繁使用RAM,最好把這些數(shù)據(jù)放在RAMH內(nèi),以增加CPU讀取RAM速度。本貼總結(jié)一個把4K數(shù)據(jù)內(nèi)存數(shù)組放在SRAMH的方法。下圖是HC32F460的內(nèi)部SRAM地址layout:

在程序中我要把一組4K數(shù)據(jù)放在0x1FFF8000地址開頭的4K size空間內(nèi)。方法就是使用ARM編譯器的屬性功能。uint8_t gReserve[4096] __attribute__((section(".ARM.__at_0x1FFF8000")));以上一段代碼就是定位4KB大小的gReserve數(shù)據(jù)到0x1FFF8000內(nèi)。另外我們在華大默認工程內(nèi)編譯前,還需要把編譯器預(yù)留的RAM區(qū)去掉0x1FFF8000開頭 大小為4KB的區(qū)域。因為默認編譯選項內(nèi)設(shè)置了從0x1FFF8000開頭的ZI區(qū),所以默認工程編譯會報錯。編譯選項修改前如圖:

修改后編譯選項:我們看到IRAM1的起始地址和大小都相應(yīng)的做了對應(yīng)調(diào)整,這樣編譯程序才不會報錯。 

 

編譯后查看.map 看看0x1FFF8000地址是怎么分配的:

看來我們分配成功了,我們用程序來驗證一下:在程序開頭我們添加以下代碼打印出我們gReserve的地址。DPRINTF("[%s:%d]:gReserve addr:0x%x\n", __FUNCTION__, __LINE__, gReserve);看一下串口輸出:看來我們已經(jīng)驗證沒有問題了,gReserve被分配在了內(nèi)部SRAMH快速   RAM內(nèi)(0x1FFF8000)。 

最后,當(dāng)然不一定非得變量才能通過__attribute__方式放在內(nèi)部RAM內(nèi),其實函數(shù)或某段代碼也是可以通過__attribute__來放置在RAM內(nèi)。另外整個一個.c文件編譯出來的.o也可以通過keil file option的方式放在RAM內(nèi)。比如如下圖: 


 

  • 華大單片機設(shè)計5大注意事項
  • 華大單片機被越來越多的額溫槍市場合作伙伴應(yīng)用,工程師們在使用產(chǎn)品時一定要注意華大單片機設(shè)計5大注意事項:1. Vcap管腳、2. MODE(Boot、MD)管腳、3. 離線燒錄用的UART口、4. 得到極致的超低功耗、5. 用戶程序?qū)?nèi)部FLASH擦寫特別注意。
    2023-03-21 662次
  • 華大HC32F460單片機變量定位到SRAMH
  • 華大HC32F460單片機內(nèi)部有一共192KB的SRAM,其中有32KB的快速SRAM區(qū),SRAMH。所謂SRAMH快速SRAM,就是在CPU運行在高速頻率下,比如200Mhz,讀取內(nèi)部SRAM無需等待CPU時鐘周期。
    2023-03-21 1311次
  • 華大單片機超低功耗如何設(shè)置
  • 華大單片機主推超低功耗系列,產(chǎn)品的功耗其實包括了產(chǎn)品工作時的功耗和休眠時的功耗兩部分,這兩部分的加權(quán)平均值才是產(chǎn)品的平均功耗,對于評價產(chǎn)品的功能、性能有特殊意義。以HC32L136芯片解釋一下,華大單片機如何設(shè)置超低功耗的問題。
    2023-03-21 740次
  • 低功耗華大單片機MDK中新建工程
  • 以HC32F003為例介紹在MDK中如何利用.pack支持包來為國產(chǎn)低功耗華大單片機新建工程。首先下載HC32F003的.pack支持包到自己的電腦中,選擇需要的型號進行下載和安裝。
    2023-03-21 613次
  • 國產(chǎn)芯片華大HC32替換STM32
  • 芯片持續(xù)缺貨漲價,在初創(chuàng)小公司真的是處于生死的邊緣,各種芯片一直在告急,沒有供貨商,公司產(chǎn)品也生產(chǎn)不出來,32的芯片價格飆升,讓企業(yè)不得選擇國產(chǎn)的芯片HC32F460KETA國產(chǎn)芯片華大HC32替換STM32。
    2023-03-21 746次

    萬聯(lián)芯微信公眾號

    元器件現(xiàn)貨+BOM配單+PCBA制造平臺
    關(guān)注公眾號,優(yōu)惠活動早知道!
    10s
    溫馨提示:
    訂單商品問題請移至我的售后服務(wù)提交售后申請,其他需投訴問題可移至我的投訴提交,我們將在第一時間給您答復(fù)
    返回頂部