
分享一個stm32串口打印函數(shù),如果采用printf函數(shù)非常占內(nèi)存而且需要重定向,采用以下方法可以簡單打印調(diào)試信息等基本信息,可直接復(fù)制使用。/****************************************************** 整形數(shù)
一.基本概念1.IAPIAP是In Application Programming的首字母縮寫,IAP是用戶自己的程序在運(yùn)行過程中對User Flash的部分區(qū)域進(jìn)行燒寫,目的是為了在產(chǎn)品發(fā)布后可以方便地通過預(yù)留的通信口對產(chǎn)品中的固件程序進(jìn)行更新升
我們知道,STM32的IO都是3.3V輸出的,但是有時(shí)候我們需要輸出5V的電壓,那怎么辦,這里講一個比較簡單的方法。1、STM32 IO 輸出的波形跟5V輸出的 波形反相,用一個三極管S8050控制(S8050是高電平導(dǎo)通,低電平截止)
SYSCLK 系統(tǒng)時(shí)鐘,最大72MHzHCLK :AHB總線時(shí)鐘,由系統(tǒng)時(shí)鐘SYSCLK 分頻得到,一般不分頻,等于系統(tǒng)時(shí)鐘經(jīng)過總線橋AHB-->APB.通過設(shè)置分頻,可由HCLK得到 PCLK1與PCLK2時(shí)鐘不過PCLK2時(shí)鐘最高可達(dá)72MHz.PCLK1對應(yīng)APB1
一開始,所有實(shí)驗(yàn)都是在神舟板上去完成,根本就沒有發(fā)現(xiàn)RTC的問題。直到我們自己畫板來后調(diào)試時(shí),才發(fā)現(xiàn)STM32 RTC的外部時(shí)鐘源存在問題。這也算是STM32的一個雞肋,對于LSE外部晶振太過于苛刻,手冊上要求使用6pf,這
除了網(wǎng)上的教程外,還要特別注意,當(dāng)運(yùn)算中有浮點(diǎn)的數(shù)字時(shí)要把,數(shù)字后面加上一個f。例如表達(dá)式中有4.321參與運(yùn)算。。當(dāng)你不在4.321后加f時(shí),stm32F405的片子不知道把他當(dāng)做單精度float用FPU來運(yùn)算,,默認(rèn)可能是當(dāng)做
;//StackConfiguration;//StackSize(inBytes);//Stack_SizeEQU0x00000200;//定義堆棧大小AREASTACK,NOINIT,READWRITE,ALIGN=3;//定義一個數(shù)據(jù)段按8字節(jié)對齊Stack_MemSPACEStack_Size;//保留Stack_Size大小的堆??臻g
BKP是“BACKUP”的縮寫,stm32f103RCTE的內(nèi)部配備了10個16位寬度的BKP寄存器。在主電源切斷或系統(tǒng)產(chǎn)生復(fù)位時(shí)間時(shí),BKP寄存器仍然可以在備用電源的支持下保持其內(nèi)容。BKP在實(shí)際應(yīng)用中可以存入重要數(shù)據(jù),防止被惡意查看
配置一個I/O為EXTI中斷的步驟:GPIO_InitTypeDefGPIO_InitStructure;EXTI_InitTypeDefEXTI_InitStructure;NVIC_InitTypeDefNVIC_InitStructure;//1.使能EXTIx線的時(shí)鐘和第二功能AFIO時(shí)鐘RCC_APB2PeriphClockCmd(RCC_
? ? ? ? stm32是自帶硬件I2C,相比于軟件模擬I2c,硬件I2c效率更高。但是據(jù)說不穩(wěn)定,這個我倒暫時(shí)還沒有體會到。? ? ? ? 在最開始使用硬件I2c的時(shí)候,程序總是卡死,要不從一開始
“共享經(jīng)濟(jì)”的概念一出來,突然好多“共享”都火了,大到“共享資源”、“共享網(wǎng)絡(luò)”、“共享出行”、“共享單車”、“共享汽車”,小到“共享充電寶”、“共享寵物”等,被共享經(jīng)濟(jì)冠名的行業(yè)越來越多。 ?
stm32f103vb發(fā)出邏輯信號給MOC3020,控制BTA16可控硅的通斷。在檢測到過零信號時(shí),延時(shí)x毫秒,輸出1;延時(shí)y毫秒,關(guān)閉輸出。 實(shí)現(xiàn)相位控制調(diào)速感應(yīng)電機(jī)(小功率)。在stm32 discovery開發(fā)板上,使用藍(lán)燈和綠燈模擬。
1 位時(shí)間特性為了掌握如何設(shè)置STM32 CAN的波特率,首先我們得先了解一下位時(shí)間特性。位時(shí)間特性邏輯通過采樣來監(jiān)視串行的CAN總線,并且通過跟幀起始位的邊沿進(jìn)行同步,及通過跟后面的邊沿進(jìn)行重新同步,來調(diào)整其采樣
第一必須先使能外設(shè)的時(shí)鐘,GPIO也是有時(shí)鐘的第二設(shè)置外設(shè)的相關(guān)參數(shù),如果不啟用時(shí)鐘,外高參數(shù)設(shè)置是無效的,為0第三使能外設(shè)的相關(guān)中斷,最后再使能外設(shè)比如串口,設(shè)置完相關(guān)參數(shù)后USART_ITConfig(COM_USART[COM]
前段時(shí)間用STM32F103VBT6寫了一個中斷的函數(shù),借此機(jī)會想了解下STM32的中斷機(jī)制,用過之后發(fā)現(xiàn)STM32的中斷配置相當(dāng)靈活,穩(wěn)定行很高,測試發(fā)現(xiàn)幾乎沒出過什么差錯。我在程序里開了三個中斷,一個計(jì)數(shù)器用于精確延時(shí)用
使用Xmodem有一段時(shí)間了,使用起來移植性能不夠,通過這次徹底拋離了底層通信部分,可以用在任何通信接口上面了,跟底層的通信已經(jīng)無關(guān)了,使用了大量的回調(diào),回調(diào)主要完成通信的收發(fā),以及數(shù)據(jù)存儲等功能,我
最近用到的溫濕度傳感器,AM2305驅(qū)動,單總線,上電后至少要延時(shí)2S才能讀取溫濕度,溫度精度很高,跟DS18B20一樣,數(shù)據(jù)帶校驗(yàn),不會出現(xiàn)DS18B20那樣,并且時(shí)序要求不高/**********
時(shí)鐘系統(tǒng)是處理器的核心,所以在學(xué)習(xí)STM32所有外設(shè)之前,認(rèn)真學(xué)習(xí)時(shí)鐘系統(tǒng)是必要的,有助于深入理解STM32。 下面是從網(wǎng)上找的一個STM32時(shí)鐘框圖,比《STM32中文參考手冊》里面的是中途看起來清晰一些:重要的時(shí)鐘: P
實(shí)驗(yàn)平臺:windows7 + STM32F103ZET6實(shí)驗(yàn)?zāi)康模耗悴恍枰魏螣浌ぞ撸涂梢詫δ愕漠a(chǎn)品進(jìn)行遠(yuǎn)程升級代碼!1. Xmodem協(xié)議簡介2. IAP編程原理3. Boot與App程序設(shè)計(jì)4. 實(shí)驗(yàn)步驟5. 遠(yuǎn)程升級應(yīng)用1.modem 協(xié)議串行通信的文
先介紹下我參考其他工程而建立的STM32 USB工程: 簡單介紹下:Startup當(dāng)然放置STM32的啟動文件,CMSIS放置著STM32內(nèi)核ARMCortex的內(nèi)核文件,StdPeripheral_Driver目錄里放置著STM32外設(shè)的庫函數(shù),這幾個都是STM