STM32學習筆記之 晶元基礎

2021-09-23 13:29:13 字數 1884 閱讀 5120

以下列舉常見型號的ram大小

stm32c8t6

stm32r8t6

stm32rbt6

stm32rct6

stm32zet6

16k20k

20k48k

64k##常見型號的片內flash

小容量產品主儲存塊最大為4k×64位,每個儲存塊劃分為32個1k位元組的頁。

中容量產品主儲存塊最大為16k×64位,每個儲存塊劃分為128個1k位元組的頁。

大容量產品主儲存塊最大為64k×64位,每個儲存塊劃分為256個2k位元組的頁。

互聯型產品主儲存塊最大為32k×64位,每個儲存塊劃分為128個2k位元組的頁。

頁碼起始位址

結束位址

頁大小頁0

0x0800 0000

0x0800 03ff

1k頁1

0x0800 0400

0x0800 07ff

1k頁2

0x0800 0800

0x0800 0bff

1k頁3

0x0800 0c00

0x0800 0fff1k…

……1k頁127

0x0801 fc00

0x0801 ffff

1k頁碼

起始位址

結束位址

頁大小頁0

0x0800 0000

0x0800 07ff

2k頁1

0x0800 0800

0x0800 0fff

2k頁2

0x0800 1000

0x0800 17ff

2k頁3

0x0800 1800

0x0800 1fff2k…

……2k頁127

0x0803 f800

0x0803 ffff

2k頁碼

起始位址

結束位址

頁大小頁0

0x0800 0000

0x0800 07ff

2k頁1

0x0800 0800

0x0800 0fff

2k頁2

0x0800 1000

0x0800 17ff

2k頁3

0x0800 1800

0x0800 1fff2k…

……2k頁255

0x0807 f800

0x0807 ffff

2kcode

用來存放**的**段

ro-data

read only

存放指令和常量

儲存const常量和指令

rw-data

read/write

存放已初始化的變數

儲存初始化值不為0的全域性變數

zi-data

zero initialize

存放未初始化的變數

未初始化的或初始化值為0的全域性變數

flash=code + ro data + rw data

ram= rw-data+zi-data

c 語言上分為棧、堆、bss、data、code段

mdk 下分為:code、ro-data、rw-data、zi-data 這幾個段

STM32晶元解讀

核心 32位 高效能arm cortex m3處理器 時鐘 高達72m,實際還可以超屏一點點 單週期乘法和硬體除法 儲存器容量 stm32f103zet6 512k flash,64k sram stm32f103rct6 256k flash,48k sram 時鐘,復位和電源管理 2.0 3.6...

STM32基礎學習

最近在學stm32,遇到了一些問題,也解決了一些,望大家糾正。韌體庫外設驅動檔案引入方法 1 加入你要加入的.c檔案 2 在path中加入你的相對應的.h 3 就是一定要將stm32f10x conf.h配置中的相對應的標頭檔案取消注釋。暫存器版本的error l6218e undefined sy...

STM32學習筆記之 attribute

stm32也會遇到這樣的絕對定位的問題如下 uint8 t uart rx buf 1024 attribute at 0x20001000 就是將串列埠接收的資料定位到ram中起始位址為0x20001000 絕對定位要麼定位到flash 要麼定位到ram,這裡我們將定位在flash進行說明。mdk...