一、、背景: 曾經(jīng)在工作中接觸過(guò)STM32一段時(shí)間,但沒(méi)有深入的去學(xué)習(xí),只是用前輩搭建好的模型來(lái)實(shí)現(xiàn)一些功能罷了,俗話說(shuō)的好,大樹(shù)底下好乘涼,開(kāi)發(fā)確實(shí)輕松了,可是不深究點(diǎn),又覺(jué)著心里不踏實(shí),然而也一直沒(méi)花
NVIC共支持1至240個(gè)外部中斷輸入(通常外部中斷寫(xiě)作IRQs)。 具體的數(shù)值由芯片廠商在設(shè)計(jì)芯片時(shí)決定。此外,NVIC還支持一個(gè)“永垂不朽”的不可屏蔽中斷(NMI)輸入。NMI的實(shí)際功能亦由芯片制造商決定。在某些情況下,
推挽輸出:可以輸出高,低電平,連接數(shù)字器件;推挽結(jié)構(gòu)一般指兩個(gè)三極管分別受腹部的信號(hào)的控制,總是在一個(gè)三極管導(dǎo)通時(shí),另一個(gè)截止。輸出0時(shí),N-MOS導(dǎo)通,P-MOS高阻,輸出0。輸出1時(shí),N-MOS高阻,P-MOS導(dǎo)通,輸出
本篇內(nèi)含工程建立以及JLINK設(shè)置,內(nèi)容借鑒了前人經(jīng)驗(yàn),在此感謝各位前人的貢獻(xiàn)。1 下載stm32F10x的官方庫(kù)http://www.st.com/web/en/catalog/tools/PF2578902 新建工程工程名設(shè)為stm32_demo,選擇芯片型號(hào)為STM32F103
1. STM32的Timer簡(jiǎn)介STM32中一共有11個(gè)定時(shí)器,其中2個(gè)高級(jí)控制定時(shí)器(TIM1、TIM8),4個(gè)普通定時(shí)器(TIM2-TIM5)和2個(gè)基本定時(shí)器(TIM6-TIM7),以及2個(gè)看門(mén)狗定時(shí)器和1個(gè)系統(tǒng)嘀嗒定時(shí)器(SysTick)。其中TIM1和TIM8
常規(guī)單片機(jī)運(yùn)行程序如下:while(1){.....}類(lèi)似于一種順序執(zhí)行的方法,執(zhí)行起來(lái)較為死板,一旦某一行發(fā)生錯(cuò)誤的時(shí)候就會(huì)造成整個(gè)程序的跑飛,基于以上傳統(tǒng)開(kāi)發(fā)所有的缺點(diǎn)??梢栽O(shè)置相關(guān)的定時(shí)器,進(jìn)行某種時(shí)間片的控
下定時(shí)器初始化配置1 void TIM3_Configuration(void)//1MS2 {3 TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;4 5 TIM_DeInit(TIM3);//開(kāi)一下時(shí)鐘再關(guān)閉6 /* 設(shè)置TIM2CLK 為 72MHZ */7 RCC_APB1Per
1在工程選項(xiàng)options里面,2選中output converter選項(xiàng),3勾中Generate additional output選項(xiàng)4在Output format 里選中Intel extended選項(xiàng)5在Output file 下面勾上Override default就完成然后在Exe文件夾里就有×××.
在做實(shí)驗(yàn)之前,首先必須明白什么是DMA,DMA的作用又體現(xiàn)在哪里。DMA,即直接內(nèi)存存儲(chǔ),在一些數(shù)據(jù)的傳輸中,采用DMA方式,從而將CPU解放出來(lái)。讓CPU有足夠的時(shí)間處理其他的事情。stm32使用DMA的相關(guān)操作:1、DMA的配
一、CMSIS標(biāo)準(zhǔn) ST公司的stm32采用的是cortex-m3內(nèi)核,內(nèi)核是整個(gè)微處理器的CPU。該內(nèi)核是ARM公司設(shè)計(jì)的一種處理器體系架構(gòu)。內(nèi)核與外設(shè)的關(guān)系就像PC上的CPU與硬盤(pán)、主板、內(nèi)存等的關(guān)系一樣?;赾ortex系列的處理
///*****************************************************************************//下面是test.c里面的函數(shù)///*****************************************************************************////////////////
1、GPIO的寄存器按照功能可以分為以下幾類(lèi):A、配置寄存器B、數(shù)據(jù)寄存器C、位寄存器D、鎖定寄存器2、對(duì)于GPIO端口,每個(gè)端口有16個(gè)引腳,每個(gè)引腳的模式由寄存器的四個(gè)位控制,每四位又分為兩位控制引腳配置(CNFy[1:
今天講解“STM32F103 EXIT中斷”,關(guān)于EXIT中斷里面有很多學(xué)問(wèn),以我的工作經(jīng)驗(yàn)來(lái)看,有幾點(diǎn)是特別容易犯錯(cuò)的,我會(huì)在文章最后重點(diǎn)講解。每次講解的不僅僅是基礎(chǔ),而是重點(diǎn),不起眼的重點(diǎn),容易被人忽視的重點(diǎn)。關(guān)注
從箱底撈出來(lái)的f103,支持的c語(yǔ)言太基礎(chǔ),雖然性能很高,然而開(kāi)發(fā)時(shí)間長(zhǎng)難以快速的使用,一開(kāi)始把 c++那些該有的都搬進(jìn)來(lái),結(jié)果當(dāng)然是覺(jué)得有的函數(shù)都沒(méi)有了。小小的寫(xiě)了一個(gè)庫(kù)用來(lái)通過(guò)串口來(lái)DEBUG一共有這幾個(gè)函數(shù),
一。什么是ADC二。STM32ADC的特點(diǎn)ADC的位數(shù)決定了ADC的精度,有8位的,12位的,16位的等。還有一個(gè)很重要的參數(shù)就是轉(zhuǎn)換時(shí)間。STM32f103RBT6有2個(gè)ADC控制器。128KFlash,20KRAM每一個(gè)ADC控制器都有多個(gè)通道,例如ADC
依然還記得當(dāng)時(shí)學(xué)完STM32之后感覺(jué)什么都不會(huì),然后基本上是靠單片機(jī)的知識(shí)撐過(guò)期末的測(cè)試的,然后其實(shí)一直想把STM32學(xué)好,但是感覺(jué)學(xué)太多也不好吧,總感覺(jué)這是樣,學(xué)得多并不是壞事 ,但是總覺(jué)得吧,應(yīng)該要在你學(xué)的技
圖一圖二PWM應(yīng)用非常廣泛,但是不同的項(xiàng)目對(duì)輸出的PWM又有特殊要求,為滿(mǎn)足這些要求我們需要更多的實(shí)驗(yàn)來(lái)驗(yàn)證。接下來(lái)講述圖一顯示波形的輸出方法步驟(圖二為異常波形)。一、本實(shí)例所使用資源:1、TIM4_CH3(對(duì)應(yīng)管腳
本篇文章三個(gè)主題:FSMC有關(guān)配置、一串字符顯示原理、漢字顯示原理。。下面進(jìn)入正題一、FSMC的有關(guān)配置(博主用的是FSMC_A10): 來(lái)自別人家的博客http://blog.csdn.net/jxnu_xiaobing/article/details/8718566 FSMC
uint8_t aTxBuffer[SPI_BUFFER_SIZE] __attribute__((at(0x20000200))) = {0xaa, 0x00, 0x00};在沒(méi)有上面的__attribute__((at(0x20000200))的時(shí)候,程序會(huì)進(jìn)入Hardfault,進(jìn)入的原因是程序不能從奇地址讀取數(shù)據(jù)。這個(gè)
不同的下載方式對(duì)應(yīng)STM32啟動(dòng)方式也不同,如下圖是STM32三種啟動(dòng)方式: ●第一種啟動(dòng)方式是最常用的用戶(hù)FLASH啟動(dòng),正常工作就在這種模式下,STM32的FLASH可以擦出10萬(wàn)次,所以不用擔(dān)心芯片哪天會(huì)被擦爆! ●第二種