日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

STM32 开发板资源梳理

發布時間:2024/6/21 综合教程 95 生活家
生活随笔 收集整理的這篇文章主要介紹了 STM32 开发板资源梳理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄片內資源FLASHRAM時鐘與總線中斷其他板載資源

片內資源

開發板使用的STM32F407ZGT6在手冊里是這樣的:

片內FLASH:1M,片內RAM:192K,這兩個跟程序運行和下載密切相關。

FLASH

地址分配如圖,因此FLASH下載地址從0x8000 0000開始,大小為0x0010 0000(1M)

RAM

RAM的兩段需要注意的是只有0x20000000開始的112K+16K+64K是可以讓外設訪問的,而0x10000000開始的64K不可被外設訪問

時鐘與總線

系統時鐘SYS_CLK有3個來源,HSI(內部16M,可用作PLL),HSE(外部高速,晶振產生),PLL(主PLL由HSE或HSI提供,輸出兩路,第一個輸出高速系統時鐘168M,第二路生成USBOTG 48M、RNG<=48M、SDIO時鐘<=48M,專用PLL用于I2S),配置方面可以參考cubeMX來設置

總線的概念一直不太清楚,這里總線部分引用自網絡:

總線來自于ARM公司的AMBA標準,是ARM公司提出的一種開放性的SoC總線標準,現在已經廣泛的應用于RISC的內核上,它定義了兩種總線: AHB(Advanced High-performance Bus)先進的高性能總線,也叫做ASB(Advanced System Bus)。APB(Advanced peripheral Bus)先進的外設總線,AHB和ASB其實是一個東西,是高速總線,主要負責嵌入式處理器、DMA控制器、Memory等等的接口。 APB是低速總線,主要負責外設接口

簡單說就是高低速分離,通過bridge連接,片上外設配置的寄存器涉及的總線在手冊中有寫:

中斷

中斷類型和資源手冊有寫,這里標記下如何在程序中使用中斷,首先在工程中一般是CORE目錄下會有startup_stm32f40_41xxx.s這個匯編文件,摘取其中一部分說明:

; Amount of memory (in bytes) allocated for Stack
; Tailor this value to your application needs
; <h> Stack Configuration
;   <o> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8>
; </h>

Stack_Size      EQU     0x00000800  ;如果使用STemWin的話此值應該設置大一點

                AREA    STACK, NOINIT, READWRITE, ALIGN=3
Stack_Mem       SPACE   Stack_Size
__initial_sp


; <h> Heap Configuration
;   <o>  Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
; </h>

Heap_Size       EQU     0x00000200		

                AREA    HEAP, NOINIT, READWRITE, ALIGN=3
__heap_base
Heap_Mem        SPACE   Heap_Size
__heap_limit

                PRESERVE8
                THUMB


; Vector Table Mapped to Address 0 at Reset
                AREA    RESET, DATA, READONLY
                EXPORT  __Vectors
                EXPORT  __Vectors_End
                EXPORT  __Vectors_Size

__Vectors       DCD     __initial_sp               ; Top of Stack
                DCD     Reset_Handler              ; Reset Handler
                DCD     NMI_Handler                ; NMI Handler
                DCD     HardFault_Handler          ; Hard Fault Handler
                DCD     MemManage_Handler          ; MPU Fault Handler
                DCD     BusFault_Handler           ; Bus Fault Handler
                DCD     UsageFault_Handler         ; Usage Fault Handler
                DCD     0                          ; Reserved
                DCD     0                          ; Reserved
                DCD     0                          ; Reserved
                DCD     0                          ; Reserved
                DCD     SVC_Handler                ; SVCall Handler
                DCD     DebugMon_Handler           ; Debug Monitor Handler
                DCD     0                          ; Reserved
                DCD     PendSV_Handler             ; PendSV Handler
                DCD     SysTick_Handler            ; SysTick Handler

                ; External Interrupts
                DCD     WWDG_IRQHandler                   ; Window WatchDog                                        
                DCD     PVD_IRQHandler                    ; PVD through EXTI Line detection                        
                DCD     TAMP_STAMP_IRQHandler             ; Tamper and TimeStamps through the EXTI line            
                DCD     RTC_WKUP_IRQHandler               ; RTC Wakeup through the EXTI line                       
                DCD     FLASH_IRQHandler                  ; FLASH                                           
                DCD     RCC_IRQHandler                    ; RCC                                             
                DCD     EXTI0_IRQHandler                  ; EXTI Line0                                             
                DCD     EXTI1_IRQHandler                  ; EXTI Line1                                             
                DCD     EXTI2_IRQHandler                  ; EXTI Line2                                             
                DCD     EXTI3_IRQHandler                  ; EXTI Line3                                             
                DCD     EXTI4_IRQHandler                  ; EXTI Line4                                             

這里定義了棧Stack_Size和堆Heap_Size的大小,棧內存放局部變量和程序嵌套過程中的壓棧數據,堆可用于動態內存分配和釋放,注意全局變量在BSS段不占用棧和堆__Vectors給出了中斷向量表和服務函數的名稱,在C文件中定義相應的服務函數即可:

//定時器3中斷服務函數
void TIM3_IRQHandler(void)
{
	if (TIM_GetITStatus(TIM3, TIM_IT_Update) == SET) //溢出中斷
	{
		//OS_TimeMS++;
		printf("frame:%d
", ov_frame); //打印幀率
										  //printf("jpeg_data_len:%d
",jpeg_data_len);//打印幀率
		ov_frame = 0;
	}
	TIM_ClearITPendingBit(TIM3, TIM_IT_Update);  //清除中斷標志位
}

其他

參考手冊使用

板載資源

W25Q128 128Mbit的SPIflash,實際16MB可用
AT24C02 2048bit,256B的E2PROM,IIC接口
液晶屏,網口DP83848,RS485/232,CAN,SRAM,USBOTG等等

總結

以上是生活随笔為你收集整理的STM32 开发板资源梳理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日韩精品一区二区亚洲av观看 | 中文字幕在线观看欧美 | 亚洲av综合一区 | 国产专区在线播放 | 午夜777| 已满十八岁免费观看全集动漫 | 欧美激情免费视频 | 张柏芝54张无删码视频 | 国产丝袜高跟 | 免费在线小视频 | 美女黄色一级视频 | 日韩电影中文字幕 | av综合久久 | 97国产在线 | 欧美日韩精品区别 | 色综合久久久久久久 | 亚洲伦理一区二区 | 久久久精品在线观看 | 粉色视频免费 | 麻豆久久久久久久久久 | 国产精品夜夜夜爽张柏芝 | 不卡的av在线播放 | 国产色a | 萌白酱喷水视频 | 久久一本综合 | 纯爱无遮挡h肉动漫在线播放 | jzzijzzij日本成熟少妇 | 日本天堂网在线 | 日韩精品一区二区三区不卡在线 | 亚洲精品欧洲 | 日韩在线视频免费看 | 国产精品亚洲无码 | 色老头在线观看 | 黄污视频在线观看 | 久久视精品 | 色呦呦在线播放 | 夜色一区二区三区 | 中文字幕a级片 | 中日一级片 | 日本色影院 | 成人tv | 色中文字幕在线观看 | 最新国产精品视频 | 香蕉久久网 | 国产第一色 | 黑人干亚洲 | 久久涩综合 | 在线观看视频二区 | 无码人妻精品一区二 | 亚洲天堂第一区 | 春闺艳妇(h)高h产乳 | gav久久| 国产精品国产精品国产专区不片 | 欧美区一区二区 | 国产香蕉精品视频 | 午夜精品久久久久久99热 | 欧美成人精品一区二区三区在线看 | 国产在线观看不卡 | 狠狠操网站| 97成人精品视频在线观看 | 91精品国产综合久久久蜜臀九色 | 麻豆视频免费网站 | 午夜在线视频 | 乱xxxxx普通话对白 | 伊人久久网站 | 国产精品传媒一区二区 | 色射射| 强伦人妻一区二区三区 | 国产高清二区 | 国产丝袜高跟 | 5566在线| 中国av一级片 | 青青青国产视频 | 黄色av毛片| 一女双乳被两男吸视频 | 丰满白嫩尤物一区二区 | 欧美成人精品欧美一级私黄 | 日女人网站 | 欧美日韩在线视频免费观看 | 国产精品成人午夜视频 | 美女校花脱精光 | 亚洲精品女 | 欧美aaa级片| 日韩极品一区 | 免费国产黄色 | 97视频在线看 | 久久久久久久久免费视频 | 久久丁香网 | 精品国产a| 亚洲二区视频 | 日韩美女在线视频 | 黄色片网站在线 | jizzjizz黄大片 | 中文字幕日韩一区 | 在线日韩一区二区 | 午夜影院在线观看 | 在线观看aaa | 欧美日韩免费在线视频 | 久久综合狠狠 |