
本文主要簡單介紹CAN總線的相關(guān)概念,以及通信協(xié)議等知識(shí),和使用STM32自帶的bxCAN外設(shè)進(jìn)行CAN總線編程實(shí)驗(yàn),以及編程心得。1. CAN總線簡要介紹概念:CAN是控制器局域網(wǎng)絡(luò)(Controller Area Network, CAN)的簡稱,是由
//USARTvoid UART2_Configuration(void){ GPIO_InitTypeDef GPIO_InitStructure; USART_InitTypeDef USART_InitStructure; USART_ClockInitTypeDef USART_ClockInitStructure; RCC_APB1PeriphClockCmd(RCC_APB1P
/*******************************************************************************固件函數(shù)庫通過檢查庫函書的輸入來實(shí)現(xiàn)運(yùn)行時(shí)間錯(cuò)誤偵測。通過使用宏assert_param來實(shí)現(xiàn)運(yùn)行時(shí)間檢測。所有要求輸入?yún)?shù)的函數(shù)都
//原帖http://bbs.elecfans.com/forum.php?mod=viewthread&tid=445463//在學(xué)習(xí)過程中發(fā)現(xiàn)幾處編譯錯(cuò)誤,并改正;//主要貼出定義、和中斷函數(shù)部分;uint8_t usart_rx_buf[5][40]; //接收緩沖,最大40個(gè)字節(jié)uint8_t us
這次要講講如何用USB升級(jí)單片機(jī)代碼。以前曾經(jīng)做過串口升級(jí),網(wǎng)絡(luò)升級(jí),升級(jí)的基本原理都類似,只不過升級(jí)的工具不同罷了,串口升級(jí)當(dāng)然是用串口了,網(wǎng)絡(luò)升級(jí)用的是TCP/IP,USB升級(jí)當(dāng)然用的是USB了。下面就來講講USB
描述:用ADC連續(xù)采集11路模擬信號(hào),并由DMA傳輸?shù)絻?nèi)存。ADC配置為掃描并且連續(xù)轉(zhuǎn)換模式,ADC的時(shí)鐘配置為12MHZ。在每次轉(zhuǎn)換結(jié)束后,由DMA循環(huán)將轉(zhuǎn)換的數(shù)據(jù)傳輸?shù)絻?nèi)存中。ADC可以連續(xù)采集N次求平均值。最后通過串口傳
說明:GPIOA,GPIO_Pin_0對(duì)應(yīng)key1;GPIOA,GPIO_Pin_1對(duì)應(yīng)key2;GPIOA,GPIO_Pin_2對(duì)應(yīng)LED1;GPIOA,GPIO_Pin_3對(duì)應(yīng)LED2#include"stm32f10x.h"#include"stm32f10x_rcc.h"#include"stm32f10x_gpio.h"#include"system_stm3
STM32的RTC晶振,我百度全網(wǎng),總結(jié)如下軟件: 在以前很多的程序里 在rtc中斷里 都沒有 RTC_WaitForLastTask();這個(gè)語句。 加上即可硬件: 常規(guī)配置 6p晶振加兩個(gè)10p電容 不要并聯(lián)電阻并聯(lián)了反而不起振==============
最近在調(diào)試編碼器,用的貌似是官方給出的例程,但是在做pid的時(shí)候遇到困難,不知道該如何在此基礎(chǔ)上實(shí)現(xiàn)pid,有大神指教嗎?#define ENCODER_TIMERTIM3// Encoder unit connected to TIM3#define ENCODER_TIM_PERIOD
main.c配置:/**說明:*PA0:KEY1;PA1:KEY2;*PA2:LED1;PA3:LED2;*PA9:USART1_TX;PA10:USART1_RX*/#include"stm32f10x.h"#include"stm32f10x_rcc.h"#include"stm32f10x_gpio.h"#include"stm32f10x_usart.h"#include"st
目前stm32已經(jīng)非常流行了,那么本文討論下stm32低功耗模式,不多說先上手冊(cè)內(nèi)容!這是英文文檔 不好看懂是吧,下面看中文文檔!我對(duì)比了 STM32F0 和 STM32F1 兩者進(jìn)入低功耗是一樣的,STM32F4的類似目前沒有研究。低功
通過ADC注入通道的使用,可以實(shí)時(shí)獲取4個(gè)GPIO輸入的AD采樣值,下面看具體的代碼。芯片:STM32F205VCT6STEP1:初始化GPIOvoidGPIO_Configuration(void){//GPIO-PC0PC1PC2PC3-ADC3GPIO_InitStructure.GPIO_Pin=GPIO_Pi
貼了兩塊樣板,燒寫同樣的固件。其中一塊工作正常,但是另外一塊出現(xiàn)了很奇怪的現(xiàn)象:在線調(diào)試正常;每次燒寫完后工作正常;重新上電有時(shí)候工作正常,有時(shí)候工作不正常;工作不正常時(shí),按下復(fù)位按鍵,恢復(fù)正常。工作
本次工程是要同時(shí)實(shí)現(xiàn)SD卡讀卡器和NAND Flash模擬U盤的功能。結(jié)合之前的兩個(gè)工程,稍稍修改下就可以了。既然要實(shí)現(xiàn)兩個(gè)盤,當(dāng)然在usb_prop.c中的Max_Lun變量賦值為1,在USB_User組中同時(shí)添加fsmc_nand.c和sdio_sdcar
系統(tǒng)時(shí)鐘和分頻首先來手冊(cè)里的一段話。三種不同的時(shí)鐘源可被用來驅(qū)動(dòng)系統(tǒng)時(shí)鐘(SYSCLK)HSI振蕩器時(shí)鐘HSE振蕩器時(shí)鐘PLL時(shí)鐘一般用的是PLL時(shí)鐘,后面有證據(jù)。我們可以通過庫函數(shù)獲取各時(shí)鐘值void RCC_GetClocksFreq(RCC
USART作為一種標(biāo)準(zhǔn)接口在應(yīng)用中十分常見。1、STM32固件庫使用外圍設(shè)備的主要思路在STM32中,外圍設(shè)備的配置思路比較固定。首先是使能相關(guān)的時(shí)鐘,一方面是設(shè)備本身的時(shí)鐘,如果設(shè)備是通過IO口輸入輸出則還需要使能對(duì)
1 前言當(dāng)bxCAN接收到報(bào)文,經(jīng)過過濾器過濾后,會(huì)將報(bào)文存儲(chǔ)到FIFO中,由http://blog.csdn.net/flydream0/article/details/8148791一文中可知,每個(gè)過濾器組都會(huì)關(guān)聯(lián)一個(gè)FIFO,由此可見,當(dāng)接收到的報(bào)文通過過濾器后會(huì)
1.首先說明一下本人這次使用的STM32芯片是STM32F103RB,使用的資源是片內(nèi)的USART1。2.下面是我的電路連接圖:注:電路可以稍做修改更好,在B和A分別接下拉電阻到地和上拉電阻到5v,阻值選擇為10K即可,這是為了在沒有
圖和程序(部分)都是前輩留下的,我看了了半天也試了很多次,現(xiàn)在越來越混了,不知道前輩到底是用什么方法在測脈沖,感覺圖和程序都有問題,有大神幫忙解釋下給點(diǎn)建議嗎。我現(xiàn)在腦子全是亂的。
1.堆和棧大小定義大小在startup_stm32f2xx.sStack_SizeEQU0x00000800AREASTACK, NOINIT, READWRITE, ALIGN=3Stack_MemSPACEStack_Size__initial_sp; Heap Configuration;Heap Size (in Bytes) ;Heap_SizeEQU0x000008