原创 藍橋杯 炒雞準確超聲波測距

void Timer1Init(void) //2000微秒@12.000MHz { AUXR &= 0xBF; //定時器時鐘12T模式 TMOD &= 0x0F; //設置定時器模式 TMOD |= 0x10

原创 STM32F070系列的IAP程序

1.總程序思路 之所以不直接將接收到的BIN文件直接寫入到APP區域是因爲如果升級過程出現某些錯誤時,程序將會清除升級標誌位,並跳轉到APP運行程序減少產品變磚的概率。 注:如果在   將BacpupApp區域的BIN文件拷貝到App

原创 藍橋杯嵌入式STM32 零碎筆記

1.啓用assert_param 啓用assert_param需要在Options for Target 裏面C/C++ 裏面define   USE_FULL_ASSERT   然後在main.c文件里加入assert_failed函數

原创 關於Stm32 Systick中斷 與 普通外設中斷 的優先級的比較

   有網友經實驗驗證,Systick雖然作爲與CPU緊耦合的內核外設,但其中斷優先級並不比普通外設要高,並不因爲它是內核外設而特殊,它還是遵循中斷優先級高低的規則來響應。 https://blog.csdn.net/To_be_a_f

原创 STM32——高級定時器、通用定時器、基本定時器 的區別

  TIM1和TIM8定時器的功能包括【增強型】: ● 16位向上、向下、向上/下自動裝載計數器 ● 16位可編程(可以實時修改)預分頻器,計數器時鐘頻率的分頻係數爲1~65535之間的任意數值 ● 多達4個獨立通道: ─ 輸入捕獲 ─ 

原创 c 按特定格式讀取字符串的數據 sscanf的用法

Sscanf 函數 原型 int sscanf( const char *buffer, const char *format, [ argument ] ... ); buffer 存儲的數據 format

原创 藍橋杯嵌入式入門學習筆記

1.GPIO,LED的點亮 IDR端口輸入寄存器,讀取輸入狀態GPIO的值。(只讀並只能以字(16位)的形式讀出) ODR端口輸出寄存器,設置輸出狀態的GPIO的值。(可讀可寫並只能以字(16位)的形式操作)  BSRR端口位設置/清除寄

原创 給正在準備藍橋杯的你的

前言: 以前參加過單片機和嵌入式的藍橋,比賽雖然水但是還是可以鍛鍊個人能力的。 個人是在大二接觸到這個比賽的,當時因爲種種原因沒能進入我們學校的電子協會,所以全程比賽都是一個人在準備,四處碰壁無比艱辛。學校報名結束了我才知道這個比賽,最後

原创 STM32F4xx 讀保護 寫保護 芯片被鎖 解鎖

問題描述: 從ISP方式連接STM32F407開發板,無法讀取任何數據,無法下載程序。 DTR電平置高(+3-+12V),復位 RTS置高(+3-+12V),選擇進入BootLoader ...延時100毫秒 DTR電平變低(-3--1

原创 藍橋杯嵌入式 錯題本

雜亂筆記 Keil仿真準確測量運行時間 Debug->Setting->Trsce->Core 修改好核心時鐘頻率即可準確測量函數運行時間 運算符優先級 圖看百度 坑 //編譯報錯 (DS18B20_DQ_IN !=

原创 藍橋杯嵌入式國賽擴展板 CT117E-EX 學習筆記

CT117E-EX 擴展板筆記 數碼管(74HC595) 博主參加國賽有點皮,準備的不夠就參賽了,結果國賽沒敲出來數碼管實在有點可惜。望看到本文的朋友在準備國賽一定要把這個功能做到盲打出來,第十屆國賽沒提供數碼管的驅動。 R

原创 sscanf 函數 按格式讀取函數

Sscanf 函數 原型 int sscanf( const char *buffer, const char *format, [ argument ] ... ); buffer 存儲的數據 format

原创 用keil4打開keil5的工程文件導致keil4卡死解決辦法

將工程裏的這個.uvopt刪除。然後打開工程,重新編譯一下,那樣就不會卡死了。   PS: 我用的是CooCox Debug  要重新設置一下  選Colink  SWD   300KHz就可以了 

原创 sscanf的用法

sscanf() - 從一個字符串中讀進與指定格式相符的數據。 函數原型: int sscanf( const char *, const char *, ...); int sscanf(const char *buffer,const

原创 藍橋杯嵌入式學習錯題本

      Init函數記得要調用。 操作LED後要將573的N_LE引腳拉低    這樣才能避免操作LCD時影響到LED的亮滅。 USART_IT_IDLE 空閒中斷要用   USART_ReceiveData(USARTx);  或者