原创 通用定時器的原理

/通用定時器的原理 stm32有多達8個定時器,有2個高級定時器TIM1和TIM8(常用於三相電機的驅動)時鐘由APB2產生。其他的TIM2-7爲普通定時器,時鐘由APB1的輸出產生。 看時鐘數的圖可以看出定時器的時鐘來自於輸入APB

原创 SPI配置

//SPI配置 MISO主設備數據輸入,從設備數據輸出 MOSI主設備數據輸出,從設備數據輸入 SCLK時鐘信號,由主設備產生 CS從設備片選信號,由主設備控制 1.配置相關引腳的複用功能,使能SPI時鐘(APB1) 2.初始化SPI,

原创 使用Timer3實現兩路(可四路)PWM波形的輸出

調試芯片:STM32F103C8T6 外部晶振:8MHz 功能介紹:使用Timer3實現兩路(可四路)PWM波形的輸出 代碼如下:     初始化:系統時鐘初始化,GPIO端口初始化,Timer初始化 系統時鐘初始化:  

原创 NSS管腳信號

NSS管腳信號 1. 作爲主設備NSS管腳爲高電平。 2.從設備NSS管腳爲低電平。 3.當NSS爲低電平時,該SPI設備被選中,可以和主機通訊。 4.輸入就是NSS管腳信號給自己。 5.輸出就是NSS管腳信號送出去。軟件輸入:    

原创 陀螺儀mpu6050的調試與dmp庫的移植經歷

通過三天的痛苦掙扎終於調通了mpu以及移植好了dmp庫 一開始動手使用mpu6050的時候移植了一個例程想試下效果 不曾想調用dmp的時候就出錯了,然後嘗試了各種方法試圖定位 錯誤,一開始懷疑模擬IIC有問題,然後仔細覈對了一下IIC的時

原创 有關推輓輸出、開漏輸出、複用開漏輸出、複用推輓輸出以及上拉輸入、下拉輸入、浮空輸入、模擬輸入區別

以及上拉輸入、下拉輸入、浮空輸入、模擬輸入的區別 最近在看數據手冊的時候,發現在Cortex-M3裏,對於GPIO的配置種類有8種之多: (1)GPIO_Mode_AIN 模擬輸入 (2)GPIO_Mode_IN_FLOATING

原创 STM32中的幾個時鐘SysTick、FCLK、SYSCLK、HCLK

在STM32中,有五個時鐘源,爲HSI、HSE、LSI、LSE、PLL。 ①、HSI是高速內部時鐘,RC振盪器,頻率爲8MHz。 ②、HSE是高速外部時鐘,可接石英/陶瓷諧振器,或者接         外部時鐘源,頻率範圍爲4MHz

原创 淺析IMU代碼

IMU的代碼的引自https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/imumargalgorithm30042010sohm/

原创 STM32的SYSTICK詳解

什麼是SYSTICK: 這是一個24位的系統節拍定時器system tick timer,SysTick,具有自動重載和溢出中斷功能,所有基於Cortex_M3處理器的微控制器都可以由這個定時器獲得一定的時間間隔。 作用: 在單任務引

原创 24L01配置函數詳解

//檢測24l01是否存在 //返回值0成功,1失敗 u8 NRF24L01_Check(void) {  u8 buf[5]={0XA5,0XA5

原创 輸入捕獲模式

   異或那塊先不管他,好像跟編碼器有關,輸入有個特色就是可以把TI的輸入搞到CC1上去,也可以把T2的輸入搞到CC1上去,其實也可以把T1搞到CC1上去同時把T1搞到CC2上去,這樣就有了後來的PWM輸入。   輸出上的特色是不直接輸出

原创 確定PWM頻率

TIM3的ARR寄存器和PSC寄存器, 確定PWM頻率。 PWM的週期(頻率)就是ARR寄存器值與PSC寄存器值相乘得來,但不是簡單意義上的相乘,例如要設置PWM的頻率參考上次通用定時器中設置溢出時間的算法,例如輸出100HZ頻率的P

原创 referred from timer.o

 Error: L6218E: Undefined symbol TIM_ClearITPendingBit (referred from stm32f10x_it.o).  Error: L6218E: Undefined symb

原创 通用定時器

//通用定時器TIM3 TIM3掛載在APB1//TIM3時鐘使能 RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE);//初始化定時器參數,設置自動重裝值,分頻係數,計數方式 定時器的初

原创 串口1中斷服務函數的解析

//串口1中斷服務函數的解析 void USART1_IRQHandler(void)                 u8 Res;if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESE