你的位置:首頁(yè) > 光電顯示 > 正文

電子人必備資料:最全STM32外設(shè)匯總

發(fā)布時(shí)間:2017-10-10 責(zé)任編輯:lina

【導(dǎo)讀】STM32系列是ST公司基于專為要求高性能、低成本、低功耗的嵌入式應(yīng)用專門(mén)設(shè)計(jì)的ARM Cortex-M3內(nèi)核的32位單片機(jī)。


STM32系列是ST公司基于專為要求高性能、低成本、低功耗的嵌入式應(yīng)用專門(mén)設(shè)計(jì)的ARM Cortex-M3內(nèi)核的32位單片機(jī)。按內(nèi)核架構(gòu)分為不同產(chǎn)品:
其中STM32F系列有:STM32F103“增強(qiáng)型”系列、STM32F101“基本型”系列、STM32F105、STM32F107“互聯(lián)型”系列

增強(qiáng)型系列時(shí)鐘頻率達(dá)到72MHz,是同類產(chǎn)品中性能最高的產(chǎn)品;基本型時(shí)鐘頻率為36MHz,以16位產(chǎn)品的價(jià)格得到比16位產(chǎn)品大幅提升的性能,是32位產(chǎn)品用戶的最佳選擇。兩個(gè)系列都內(nèi)置32K到128K的閃存,不同的是SRAM的最大容量和外設(shè)接口的組合。時(shí)鐘頻率72MHz時(shí),從閃存執(zhí)行代碼,STM32功耗36mA,相當(dāng)于0.5mA/MHz。
 
在STM32F105和STM32F107互連型系列微控制器之前,意法半導(dǎo)體已經(jīng)推出STM32基本型系列、增強(qiáng)型系列、USB基本型系列、互補(bǔ)型系列;新系列產(chǎn)品沿用增強(qiáng)型系列的72MHz處理頻率。內(nèi)存包括64KB到256KB閃存和 20KB到64KB嵌入式SRAM。新系列采用LQFP64、LQFP100和LFBGA100三種封裝,不同的封裝保持引腳排列一致性,結(jié)合STM32平臺(tái)的設(shè)計(jì)理念,開(kāi)發(fā)人員通過(guò)選擇產(chǎn)品可重新優(yōu)化功能、存儲(chǔ)器、性能和引腳數(shù)量,以最小的硬件變化來(lái)滿足個(gè)性化的應(yīng)用需求。
 
stm32外設(shè)有哪些?
外設(shè)指的是單片機(jī)外部的外圍功能模塊,比如鍵盤(pán)控制芯片,液晶,A/D轉(zhuǎn)換芯片,等等。外設(shè)可通過(guò)單片機(jī)的I/O,SPI,I2C等總線控制。
 
常見(jiàn)stm32外設(shè):基本IO、定時(shí)器TIM、串口USART、ADC模數(shù)轉(zhuǎn)換、DAC數(shù)模轉(zhuǎn)換、SPI串行通信、EXIT外部中斷、BKP備份數(shù)據(jù)、RTC鬧鐘SysTIck系統(tǒng)滴答、WDG看門(mén)狗(獨(dú)立+窗口)、DMA傳輸數(shù)據(jù)、片內(nèi)FLASH編程、FSMC讀寫(xiě)外部SRAM、外部NorFlash操作等。

 


stm32外設(shè)的初始化和設(shè)置:
在設(shè)置一個(gè)外設(shè)前,必須調(diào)用以下一個(gè)函數(shù)來(lái)使能它的時(shí)鐘
 
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_PPPx, ENABLE);
 
1,在主應(yīng)用文件中聲明一個(gè)結(jié)構(gòu)PPP_InitTypeDef,例如: PPP_InitTypeDef
 
PPP_InitStructure;
 
2,為變量PPP_InitStructure的各個(gè)結(jié)構(gòu)成員填入允許的值??梢圆捎靡韵?種方式:
 
a) PPP_InitStructure.member1 = val1;
 
b) PPP_StrucTInit(&PPP_InitStructure) PP_InitStructure.memberX = valX;
 
3,調(diào)用函數(shù)PPP_Init()來(lái)初始化外設(shè)PPP;
 
4, 在這一步,外設(shè)PPP已被初始化。可以調(diào)用函數(shù)PPP_Cmd( )來(lái)使能之。
 
使用STM32外設(shè)的步驟
1,PPP_Init() 函數(shù),其功能是根據(jù)PPP_InitTypeDef中指定的參數(shù),初始化外設(shè)PPP,如TIM_Init()名為PPP_DeInit()函數(shù),其功能為復(fù)位外設(shè)PPP的所有寄存器至缺省值。
 
2,PPP_StructInit() 函數(shù),其功能為通過(guò)設(shè)置PPP_InitTypeDef 結(jié)構(gòu)中的各種參數(shù)來(lái)定義外設(shè)的功能,例如:USART_StructInit()
 
3,PPP_Cmd() 函數(shù),其功能為使能或者失能外設(shè)PPP,例如:SPI_Cmd
 
4,PPP_ITConfig() 函數(shù),其功能為使能或者失能來(lái)自外設(shè)PPP的中斷源,例如:RCC_ITConfig
 
5,PPP_DMAConfig() 的函數(shù),其功能為使能或者失能外PPP的DMA接口
 
6,PPP_GetFlagStatus() 的函數(shù),其功能為檢查外設(shè)PPP某標(biāo)志位被設(shè)置與否
 
7,PPP_ClearFlag() 的函數(shù),其功能為清除外設(shè)PPP標(biāo)志位,例如:I2C_ClearFlag.
 
8,PPP_GetITStatus() 的函數(shù),其功能為判斷來(lái)自外設(shè)PPP的中斷發(fā)生與否
 
9,PPP_ClearITPendingBit() 的函數(shù),其功能為清除外設(shè)PPP中斷待處理標(biāo)志位
 
以上就是本篇文章的全部?jī)?nèi)容。
要采購(gòu)微控制器么,點(diǎn)這里了解一下價(jià)格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書(shū)下載更多>>
熱門(mén)搜索
?

關(guān)閉

?

關(guān)閉