(昵稱和頭像已經(jīng)過處理)這個(gè)問題,有很多人問到過。關(guān)于STM32定時(shí)器的時(shí)鐘,TIM2使用APB1的時(shí)鐘,APB1的時(shí)鐘分明是36M,到了TIM2為什么就是72M了?來來來,不要把問題想的太復(fù)雜,關(guān)于這個(gè)問題,我們看STM32的時(shí)鐘圖
串口接收函數(shù)
AHB,是Advanced High performance Bus的縮寫,譯作高級(jí)高性能總線,這是一種“系統(tǒng)總線”。AHB主要用于高性能模塊(如CPU、DMA和DSP等)之間的連接。AHB 系統(tǒng)由主模塊、從模塊和基礎(chǔ)結(jié)構(gòu)(Infrastructure)3部分組成,整
一、GPIO的綜合描述stm32每一個(gè)GPIO端口擁有2個(gè)32bits的configuration寄存器(GPIOx_CRL,GPIOx_CRH),2個(gè)32bits的數(shù)據(jù)寄存器(GPIOx_IDR,GPIOx_ODR),1個(gè)32bits的set/reset寄存器(GPIOx_BSRR),1個(gè)16bits的reset寄
一、NVIC是中斷向量表的統(tǒng)稱。因?yàn)閟tm32的中斷源非常多,在使用時(shí)有些中斷必須要具有較高的優(yōu)先級(jí),那么nvic就誕生了,它就是用來配置中斷順序的。二、打開misc.c文件,可以看到以下列表。 @arg NVIC_PriorityGroup_
最近在看數(shù)據(jù)手冊(cè)的時(shí)候,發(fā)現(xiàn)在Cortex-M3里,對(duì)于GPIO的配置種類有8種之多:(1)GPIO_Mode_AIN 模擬輸入(2)GPIO_Mode_IN_FLOATING 浮空輸入(3)GPIO_Mode_IPD 下拉輸入(4)GPIO_Mode_IPU 上拉輸入(5)GPIO_Mo
一直想寫個(gè)類似uCOS的OS,近段時(shí)間考研復(fù)習(xí)之余忙里偷閑,總算有點(diǎn)成果了。言歸正傳,我覺得OS最難的部分首先便是上下文切換的問題,他和MCU的架構(gòu)有關(guān),所以對(duì)于不同的MCU,這部分需要移植。一旦這個(gè)問題解決了
0.前言 去年(2013年)的整理了LwIP相關(guān)代碼,并在STM32上“裸奔”成功。一直沒有時(shí)間深入整理,在這里借博文整理總結(jié)。LwIP的移植過程細(xì)節(jié)很多,博文也不可能一一詳解個(gè)別部分只能點(diǎn)到為止。 【本文要點(diǎn)】 【1】
搞過全橋電機(jī)驅(qū)動(dòng)的都知道控制死區(qū)時(shí)間的重要性,一般解決方案是搭建電路控制死區(qū)時(shí)間或直接使用全橋驅(qū)動(dòng)芯片。 而STM32擁有兩個(gè)高級(jí)定時(shí)器,可以直接輸出具有調(diào)節(jié)死區(qū)時(shí)間的PWM。 現(xiàn)以TIM1通道1輸出占空比為50%,死
AT24Cxx系列EEPROM是由美國Mcrochip公司出品,1-512K位的支持I2C總線數(shù)據(jù)傳送協(xié)議的串行CMOS E2PROM,可用電擦除,可編程自定時(shí)寫周期(包括自動(dòng)擦除時(shí)間不超過10ms,典型時(shí)間為5ms)的。串行E2PROM一般具有兩種寫入
(1)Flash的簡介 不同型號(hào)的 STM32,其 FLASH 容量也有所不同,最小的只有 16K 字節(jié),最大的則達(dá)到了1024K 字節(jié)。STM32F103ZET6 的 FLASH 容量為 512K 字節(jié),屬于大容量產(chǎn)品。 STM32 的閃存模塊由:主存儲(chǔ)器、信
首先,我是看著這位博主的文章受到的啟發(fā),進(jìn)而加深了自己對(duì)USART的理解。下面是自己改裝并實(shí)驗(yàn)過的程序。原文:http://www.cnblogs.com/greatwgb/archive/2011/07/28/2119350.html1.串口的基本概念在STM32的參考手冊(cè)
使用LwIP容易,但要想使用LwIP獲得好的的速度。LwIP做一個(gè)如下修改,會(huì)讓TCP網(wǎng)絡(luò)速度好一些:lwipopts.h文件/* TCP Maximum segment size. */#define TCP_MSS 2048//1024/* TCP sender buffer space (by
STM32利用庫函數(shù)編程庫函數(shù)是STM32生產(chǎn)廠家封裝好的函數(shù)庫,方便用戶編程。USART 庫函數(shù)USART庫函數(shù)包括三種初始化函數(shù),1—缺省值初始化,2—普通初始化,3—結(jié)構(gòu)體類初始化,一般情況下,我們選擇第三種初始化方式
有時(shí)候,我們所寫代碼的具體實(shí)現(xiàn)方法不想讓其他人知道。這時(shí),可以用Keil對(duì)代碼進(jìn)行封庫。注意:在封庫之前,必須確保整個(gè)工程代碼能夠編譯通過。下面舉例說明操作步驟:想要把工程中“firmware.c”文件封裝成庫文件
一。開發(fā)環(huán)境和固定庫版本二。準(zhǔn)備工作三。建立工程模板1. 建立一個(gè)Template的文件夾2.在Template文件夾下建立下面3個(gè)文件夾CORE 用來存放核心文件和啟動(dòng)文件, OBJ 是用來存放編譯過程文件以及 hex 文件, STM32F10
簡介不同的開發(fā)板的原理圖結(jié)構(gòu)也不盡相同,筆者在這里使用野火的MINI-V3(F103VET6)簡易開發(fā)板對(duì)GPIO口的設(shè)置做一個(gè)簡單的介紹,并實(shí)現(xiàn)按鍵控制LED燈的亮滅。方便讀者可以快速熟悉并靈活應(yīng)用。原理圖分析首先我們來
1、創(chuàng)建的cJSON對(duì)象root,沒有cJSON_Delete(root);執(zhí)行一次就死機(jī)了2、cJSON解析的root得到的字符串char *str,free(str),執(zhí)行n次后就返回信息錯(cuò)誤了。改成myfree(str)后運(yùn)行正常了。
STM32中GPIO的配置風(fēng)格和以往研究的MCU有很大的不同,研究了好一段時(shí)間才搞通。typedef enum{ GPIO_Mode_AIN = 0x0,GPIO_Mode_IN_FLOATING = 0x04,GPIO_Mode_IPD = 0x28,GPIO_Mode_IPU = 0x48,GPIO_Mode_Out_OD = 0x
當(dāng)從虛擬串口到真實(shí)串口發(fā)數(shù)據(jù)時(shí),沒有錯(cuò)誤,但發(fā)送一個(gè)稍微大一點(diǎn)的文件時(shí)(如1M),誤碼率很高。不知是為什么?其中:int main(void){#ifdef DEBUG debug();#endif Set_System(); Set_USBClock(); USB_Interrupts