C語言,相對于匯編有更好的可讀性,便于維護等優點。下面實驗將使用C語言實現點亮LED燈。C語言與硬件是緊密連在一起的,結合芯片中的flash和sram,簡單了解C語言。
步驟:
- FLASH,就是存放.bin文件的地方。SRAM,用于存放程序的堆棧,全局變量。
- MEMORY,用于定義存儲器范圍。
- _data_start / _data_end,用于說明data段在flash中的位置,方便程序將data段從flash中復制到sram中。
- _ram_data_start,表示data段將復制到sram中的什么位置。
- ADDR(),表示獲得SECTION的運行地址vma,當程序被下載到flash后,程序開始運行時首先要將data段移動到sram中0x20000400地址處,這樣程序運行時才不會出錯。
- LOADADDR(),表示獲得SECTION的加載地址lma。
- SIZEOF(),用于求SECTION的大小
- 整個SECTIONS,可以看做是程序在flash中的布局,其中.bss不占用flash空間,它是由程序中開始運行時,在sram中開辟空間并初始化為0。
- 各個SECTION,如.vectors\.text\.rodata\.data\.bss,分別存放不同類型的數據。
本質就是C語言中的指針操作,volatile作用是確保本條指令不會因編譯器的優化而省略。如代碼“RCC_APB2ENR |= 0x00000010;”,表示向寄存器的第4位(從0位開始計數)寫1。
文章整合自:CSDN
編輯:ymf
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
led
+關注
關注
242文章
23691瀏覽量
670646 -
STM32
+關注
關注
2289文章
11011瀏覽量
362195 -
C語言
+關注
關注
180文章
7630瀏覽量
140175
發布評論請先 登錄
相關推薦
熱點推薦
鴻道Intewell操作系統:人形機器人底層操作系統
操作系統的實時性賦能東土科技的鴻道(Intewell)工業操作系統作為國內唯一通過汽車、工業控制、醫療、軌道交通四項功能安全認證的系統,為標準體系中的技術層架構提供了底層支持。其微內核虛擬化架構可將人形機器人電子架構成本降低50
KaihongOS操作系統:ArkTS語言基礎
ArkTS語言基礎
KaihongOS是面向全場景的萬物智聯技術底座,在OpenHarmony基礎上技術創新和系統能力增強的跨設備的操作系統,它支持多種設備類型。ArkTS是KaihongOS
發表于 04-23 06:31
鴻道Intewell操作系統的Linux實時拓展方案
鴻道Intewell操作系統是科東軟件自主研發的新型工業實時操作系統,歷經30多年研發積累,采用業界領先的微內核架構,具備高實時、高安全及強擴展的特性,是目前國內唯一通過汽車、工業控制、醫療儀器、軌道交通四項功能安全認證的操作系統

國產銀河麒麟操作系統V10和星光麒麟V1.0操作系統如何選擇?
國產銀河麒麟操作系統和星光麒麟操作系統都是由中國電子旗下科技企業麒麟軟件有限公司(簡稱“麒麟軟件”)開發的國產自主可控的操作系統。麒麟軟件介紹:麒麟軟件以安全可信操作系統技術為核心,面

普華車用操作系統與黑芝麻智能武當C1200家族芯片完成適配
普華靈智安全車控操作系統(AUTOSAR CP)和普華靈思智能駕駛操作系統(AUTOSAR AP)已與黑芝麻智能武當C1200家族芯片完成適配。

deepin操作系統介紹
希望從自己的能力和對桌面操作系統的理解,能給 Linux 的用戶與開發者更多的選擇。我們也相信 deepin 能夠得到更多用戶的認可與喜愛,成為開源世界的最佳選擇。? 一、 deepin 操作系統 先說 Linux 操作系統,它

如何在windows上emulate不同操作系統
一、虛擬化技術概述 虛擬化技術允許在單個物理機器上創建多個虛擬機,每個虛擬機都可以運行不同的操作系統。這使得我們可以在Windows系統上模擬其他操作系統,而無需購買額外的硬件。虛擬化技術的關鍵組件
基于無操作系統的STM32單片機開發附源碼
現在非常多的的MCU性能都還不錯,同時用戶也會去擴展一些外部RAM,這樣如果高效便捷的管理這些內存是一個重要話題。 今天給大家分享一份源碼:基于無操作系統的STM32單片機開發,功能強大,可申請
linux是實時系統還是分時操作系統
大家平時玩單片機基本上對于μC/OS、FreeRTOS、ThreadX這些操作系統非常熟悉了,他們都屬于實時操作系統(RTOS),在工業領域比較廣泛;然而對于linux這樣的基于時間片劃分的非實時
linux操作系統安裝步驟 linux操作系統的特點及組成
Linux操作系統安裝步驟 Linux操作系統是一種開源的操作系統,它以其穩定性、安全性和靈活性而聞名。以下是安裝Linux操作系統的一般步驟,以Ubuntu為例: 1. 準備工作 在
工控機支持什么操作系統
工控機,全稱工業控制計算機(Industrial Personal Computer, IPC),支持多種操作系統以滿足不同行業和應用場景的需求。具體來說,工控機常見的操作系統包括:
簡單認識RTOS實時操作系統
RTOS(Real Time Operating System,實時操作系統)是一種專門設計用于在嚴格時間限制內處理任務的操作系統。它以其高實時性、多任務處理能力和資源管理能力在工業自動化、醫療設備、航空航天、汽車電子等眾多領域得到廣泛應用。以下是對RTOS實時
Windows操作系統是什么?它有哪些特點?
Windows操作系統是由美國微軟公司(Microsoft Corporation)開發和推出的一種計算機操作系統。自1985年Windows 1.0版本發布以來,Windows系統經歷了多次重大
嵌入式實時操作系統:Intewell操作系統與VxWorks操作系統有啥區別
Intewell操作系統和VxWorks操作系統都是工業領域常用的操作系統,它們各有特點和優勢。以下是它們之間的一些主要區別:

評論