日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀] 一、前言對(duì)與MDK-ARM(keil),EWARM(IAR)和TureSTUDIO(Atollic)這三個(gè)ARM常用IDE工具,在cube包里都有對(duì)應(yīng)的例子。而對(duì)于arm-gcc,cube里只提供了例程的源碼。由于需要自己寫(xiě)Makefile,因此比起各種IDE來(lái)

一、前言

對(duì)與MDK-ARM(keil),EWARM(IAR)和TureSTUDIO(Atollic)這三個(gè)ARM常用IDE工具,在cube包里都有對(duì)應(yīng)的例子。

而對(duì)于arm-gcc,cube里只提供了例程的源碼。由于需要自己寫(xiě)Makefile,因此比起各種IDE來(lái)說(shuō),配置的復(fù)雜度要更高一點(diǎn)。

二、cube.gcc項(xiàng)目建立過(guò)程2.1 移植代碼

根據(jù)實(shí)際應(yīng)用,拷貝需要用到的HAL、BSP、CMSIS、middleware、RTOS代碼到工程文件夾。

比如一個(gè)項(xiàng)目用到了觸屏,就從middleware目錄下拷貝STemWin。

用到的芯片peripheral,就從HAL目錄下拷貝相應(yīng)的hal_xxx_xxx.c和hal_xxx_xxx.h。

建立一個(gè)APP文件夾,用來(lái)存放我們自己編寫(xiě)的應(yīng)用層代碼。最好先寫(xiě)個(gè)簡(jiǎn)單的測(cè)試函數(shù),因?yàn)闆](méi)有main函數(shù)就無(wú)法編譯出Flash固件。

2.2 修改配置文件

HAL層和middleware目錄下都有一個(gè)xxx_conf_template.h文件。把它修改成xxx_conf.h就是該模塊的默認(rèn)配置文件。然后需要再對(duì)它進(jìn)行編輯,設(shè)置每個(gè)模塊的配置。

2.3 startup.s和hal層初始化

cube包里有針對(duì)不同的芯片的startup.s和flash.ld。系統(tǒng)上電后執(zhí)行的就是startup.s編譯后的指令,它會(huì)初始化中斷向量表、系統(tǒng)時(shí)鐘和棧指針,然后跳轉(zhuǎn)到main函數(shù)。

flash.ld用來(lái)標(biāo)識(shí)flash和ram的地址映射和ram,還有各分段的鏈接地址。這些都在CMSIS目錄下,需要添加到新的工程里。

在main函數(shù)里,要調(diào)用hal_init()函數(shù)來(lái)對(duì)hal層進(jìn)行初始化。

2.4 Makefile

arm-gcc沒(méi)有單獨(dú)的文檔,它包含在GCC的文檔里面。編譯選項(xiàng):

https://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html

對(duì)寫(xiě)Makefile的編寫(xiě),需要注意這么幾點(diǎn):

  • 確保startup.s和flash.ld被正確編譯和鏈接。

  • 將芯片系列用-D選項(xiàng)包含在Makefile里。

  • 用-I選項(xiàng)指定頭文件搜索目錄,不要漏掉。

  • 將燒寫(xiě)命令寫(xiě)在Makefile里方便燒寫(xiě)。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀

在半導(dǎo)體產(chǎn)業(yè)的傳統(tǒng)認(rèn)知中,Arm 是構(gòu)建數(shù)字世界的“圖紙?zhí)峁┥獭?。然而,隨著代理式 AI(Agentic AI)對(duì)異構(gòu)計(jì)算需求的指數(shù)級(jí)增長(zhǎng),單純的 IP 和計(jì)算子系統(tǒng)授權(quán)已難以完全消納市場(chǎng)對(duì)于算力部署時(shí)效性的渴求。Arm...

關(guān)鍵字: ARM AGI CPU 數(shù)據(jù)中心 AI

展望未來(lái),當(dāng)摩根士丹利預(yù)測(cè)中 800 倍增長(zhǎng)的機(jī)器人半導(dǎo)體市場(chǎng)真正兌現(xiàn)時(shí),Arm 的物理 AI 平臺(tái)將作為底層基礎(chǔ)設(shè)施,支撐起從工廠到家庭、從道路到天空的智能物理世界。計(jì)算的邊界正在被重新定義,而 Arm 已在新邊界上筑...

關(guān)鍵字: ARM 物理 AI 自動(dòng)駕駛 機(jī)器人

3月25日消息,一直以來(lái),Arm都是一家對(duì)外提供IP授權(quán)的芯片企業(yè),包括CPU、GPU、NPU和各種系統(tǒng)IP。

關(guān)鍵字: ARM META

成立三十余年來(lái),Arm一直是芯片行業(yè)特殊的“幕后推手”——不生產(chǎn)一顆芯片,卻定義了全球99%智能手機(jī)的底層架構(gòu)。然而,這家長(zhǎng)期保持中立的IP授權(quán)巨頭,如今正打破自己一手建立的商業(yè)規(guī)則。

關(guān)鍵字: ARM CPU 芯片

Arm 首次將其平臺(tái)矩陣拓展至量產(chǎn)芯片產(chǎn)品,為業(yè)界提供覆蓋 IP、Arm計(jì)算子系統(tǒng) (CSS)及芯片的最廣泛的計(jì)算產(chǎn)品選擇。 發(fā)布首款由 Arm 設(shè)計(jì)的數(shù)據(jù)中心 CPU——Arm AGI CPU,專(zhuān)為代理式AI 基...

關(guān)鍵字: ARM CPU 數(shù)據(jù)中心 代理式AI

為下一代 AI 基礎(chǔ)設(shè)施實(shí)現(xiàn)突破性機(jī)架級(jí)性能、擴(kuò)展性和效率

關(guān)鍵字: ARM AGI CPU 代理式AI

在工業(yè)控制、汽車(chē)電子等實(shí)時(shí)性要求嚴(yán)苛的領(lǐng)域,中斷風(fēng)暴如同懸在系統(tǒng)頭頂?shù)倪_(dá)摩克利斯之劍——當(dāng)多個(gè)高優(yōu)先級(jí)中斷密集觸發(fā)時(shí),傳統(tǒng)MCU常因處理能力不足陷入癱瘓。ARM Cortex-M內(nèi)核通過(guò)NVIC(嵌套向量中斷控制器)的優(yōu)...

關(guān)鍵字: 中斷風(fēng)暴 ARM

在現(xiàn)代電子設(shè)備的研發(fā)、生產(chǎn)與維護(hù)鏈條中,JTAG(Joint Test Action Group,聯(lián)合測(cè)試行動(dòng)組)技術(shù)如同一條"隱形橋梁",連接著開(kāi)發(fā)者與芯片內(nèi)部的核心邏輯。從最初解決電路板測(cè)試難題的工業(yè)標(biāo)準(zhǔn),到如今成為...

關(guān)鍵字: JTAG ARM

當(dāng)工程師將代碼從經(jīng)典的8051架構(gòu)遷移至現(xiàn)代ARM Cortex-M系列時(shí),常常會(huì)遇到因內(nèi)存對(duì)齊規(guī)則差異導(dǎo)致的硬件異?;蛐阅芟陆祮?wèn)題。以某物聯(lián)網(wǎng)設(shè)備廠商的遷移案例為例,其將基于8051的溫濕度傳感器通信協(xié)議移植至STM3...

關(guān)鍵字: ARM 8051
關(guān)閉