2.7
燒錄芯片程序
首先通過(guò)前面所述方式手動(dòng)設(shè)置使芯片進(jìn)入Boot模式。
然后打開(kāi)Renesas Flash Programmer (RFP)軟件新建Project并設(shè)置連接方式。
最后選擇要燒錄的程序文件并對(duì)芯片內(nèi)部Flash進(jìn)行燒錄。
切換到Operation Settings下,勾選Operation Settings標(biāo)簽頁(yè)下的“Erase”、“Program”和“Verify”,然后切換回Operation標(biāo)簽頁(yè)選擇二進(jìn)制文件進(jìn)行燒錄。
燒錄芯片程序:
第3章 初識(shí)寄存器
3.1
寄存器是什么
寄存器實(shí)際上與RAM、FLASH一樣,也是芯片內(nèi)部的一種存儲(chǔ)器(Memory)。一般而言,RAM是程序運(yùn)行的內(nèi)存,F(xiàn)LASH則是用來(lái)保存程序本身。寄存器與RAM、FLASH等存儲(chǔ)器的不同之處在于:寄存器除了保存了芯片的功能狀態(tài)之外,還是配置和控制芯片的橋梁,我們可以通過(guò)寄存器配置和操作芯片的功能。
一般而言,我們?cè)趯?duì)MCU芯片進(jìn)行編程時(shí)有兩種編程方式,一種是寄存器編程,另外一種是固件庫(kù)編程(或者說(shuō)庫(kù)函數(shù)編程)。那么,固件庫(kù)又是什么東西?固件庫(kù)說(shuō)白了其實(shí)是通過(guò)寄存器編程之后的產(chǎn)物,它是對(duì)寄存器操作的一種封裝,最終提供給開(kāi)發(fā)者一套固定的函數(shù)API進(jìn)行調(diào)用。
我們可以從以下兩種角度來(lái)了解寄存器編程與固件庫(kù)編程的區(qū)別。
從程序執(zhí)行效率的角度來(lái)看:
一般而言,寄存器編程生成的程序執(zhí)行效率高,而固件庫(kù)編程生成的程序執(zhí)行效率不如寄存器編程的。
然而從開(kāi)發(fā)者的角度來(lái)看:
固件庫(kù)編程使得開(kāi)發(fā)者不必深入理解硬件層面的寄存器細(xì)節(jié),在開(kāi)發(fā)時(shí)只需要調(diào)用庫(kù)函數(shù)以實(shí)現(xiàn)所需的功能,因此可以提高開(kāi)發(fā)者的開(kāi)發(fā)效率。
3.2
瑞薩RA芯片里面有什么
在知道有寄存器這個(gè)東西存在后,還需要通過(guò)瑞薩官方的芯片數(shù)據(jù)手冊(cè)了解它里面有什么,知道了芯片內(nèi)部的結(jié)構(gòu)之后,也就知道如何通過(guò)寄存器對(duì)芯片進(jìn)行編程了。所以我們先來(lái)看看RA系列芯片內(nèi)部有些什么。
簡(jiǎn)單來(lái)講,MCU芯片里面主要有兩大部分,一是CPU內(nèi)核,二是片上外設(shè)。以RA6M5芯片為例,RA6M5所采用的CPU內(nèi)核是Cortex-M33(簡(jiǎn)稱CM33)。該CPU內(nèi)核由ARM公司設(shè)計(jì),但其實(shí)ARM公司并不生產(chǎn)芯片,而是出售其芯片技術(shù)授權(quán)。芯片生產(chǎn)廠商,比如Renesas、ST、NXP、TI 等等,他們負(fù)責(zé)在CPU內(nèi)核之外設(shè)計(jì)各個(gè)模塊并生產(chǎn)整個(gè)芯片,這些內(nèi)核之外的模塊被稱為“核外設(shè)備”或“片上外設(shè)”(Peripheral)。例如,RA6M5芯片內(nèi)部的外設(shè)模塊:I/O Ports(GPIO)、SCI(串口)、I2C、SPI等等,這些都叫做片上外設(shè)。
實(shí)際上,既然有“核外設(shè)備”,那必然也有“核內(nèi)設(shè)備”,即:CPU內(nèi)核(Cortex-M33)內(nèi)部也是具有一定的設(shè)備模塊的結(jié)構(gòu)的。例如,CPU內(nèi)部有NVIC(嵌套向量中斷控制器)、FPU(浮點(diǎn)計(jì)算單元)等等。
如下圖所示,展示了RA6M5芯片內(nèi)部模塊與資源:
上圖中,我們可以看到有一個(gè)標(biāo)著“Arm Cortex-M33”的方框,其所表示的便是CPU內(nèi)核,其中包含的小方框(DSP、FPU、MPU、NVIC等)屬于內(nèi)核的設(shè)備。
除了“Arm Cortex-M33”的方框以外,還有很多個(gè)大方框,它們對(duì)片上的全部外設(shè)模塊進(jìn)行了一個(gè)分類,大方框當(dāng)中的小方框表示的是外設(shè)模塊,如下:
表1:外設(shè)模塊及其分類
可以看到,芯片里面的外設(shè)模塊有很多。其中部分外設(shè)模塊是相對(duì)簡(jiǎn)單的,而部分則是非常復(fù)雜。本教程的大部分篇章都是在講解這些外設(shè)模塊,我們會(huì)由簡(jiǎn)入難,逐步的了解和使用它們。
CPU內(nèi)核結(jié)構(gòu)是復(fù)雜的,但是我們不需要細(xì)究。對(duì)于一般嵌入式開(kāi)發(fā)來(lái)說(shuō),需要了解的CPU內(nèi)核的模塊其實(shí)很少,重要的只有NVIC、SysTick等,而我們會(huì)在后面進(jìn)行詳細(xì)介紹。
RA6M5芯片Cortex-M33 CPU內(nèi)核結(jié)構(gòu)如圖所示:
-
瑞薩
+關(guān)注
關(guān)注
36文章
22352瀏覽量
87532 -
RA
+關(guān)注
關(guān)注
0文章
21瀏覽量
24830 -
Renesas
+關(guān)注
關(guān)注
0文章
1762瀏覽量
23429 -
燒錄
+關(guān)注
關(guān)注
8文章
280瀏覽量
36063 -
FSP
+關(guān)注
關(guān)注
0文章
39瀏覽量
7299
原文標(biāo)題:使用 Renesas Flash Programmer 軟件燒錄芯片程序——瑞薩RA系列FSP庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)指南(08)
文章出處:【微信號(hào):瑞薩MCU小百科,微信公眾號(hào):瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
用Renesas Flash Programmer軟件設(shè)置安全邊界——瑞薩RA系列FSP庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)指南(07)

評(píng)論