原创 STM32CubeMX之串口封裝詳解

概述 ​ 上一篇寫了 STM32CubeMX 的串口的使用,而這篇來扒一扒,它是怎麼進行封裝的。其實在標準庫中也類似如下過程。 文章目錄概述一.串口實例二. 串口實例初始化三. 串口數據的發送(阻塞模式)四. 串口數據接收 一.串

原创 STM32CubeMX之串口重定向(printf 的使用)

概述 ​ 我們在初學 C 語言的時候,第一句打印就是 printf("hello world") ,後面也經常用來調試打印信息,但是我們在單片機開發的時候 printf 就用不了,因爲 printf 會打印在命令行窗口上,但是單片

原创 STM32CubeMX之串口的使用 (阻塞模式)

環境: 開發板:STM32F4探索者(正點原子) 一. 進行項目的必要配置 時鐘配置 調試配置 如果不大清楚,可以看 STM32CubMX工程創建(點亮LED) 二. 串口選擇 ​ 查看 STM32F4探索者 開發板的原

原创 STM32CubeMx(STM32F4 +FreeRTOS+CMSIS-RTOS)之測試串口線程(並添加 printf 重定向)

一.添加printf重定向 FreeRTOS其實有自己的printf函數,這裏先不管它,直接用普通的重定向方法 在usart.c的文件中,添加下列代碼,且該文件需要包含 #include "stdio.h" #ifdef __GNUC_

原创 STM32CubeMx(STM32F4 +FreeRTOS+CMSIS-RTOS)之隊列(queue)創建

一.CMISIS-RTOS中queue相關API概覽   模塊 宏定義 描述 消息隊列定義 osMessageQDef 定義一個消息隊列 osMessageQ 訪問一個消息隊列定義   模塊 API 描述 消息隊列管理: 定義,創建,發

原创 STM32CubeMx(STM32F4 +FreeRTOS+CMSIS-RTOS)之線程(thread)創建

一.CMISIS-RTOS中thread相關API概覽     模塊 宏定義 描述 線程定義 osThreadDef 定義一個線程 osThread 訪問一個線程定義   模塊 API 描述 線程管理: 定義,創建和控制線程 osTh

原创 STM32CubMx(STM32F4 +FreeRTOS+CMSIS-RTOS)之 FreeRTOS工程創建

一.在STM32CubMX中添加FREERTOS系統 1.外部時鐘配置(也可配內部時鐘)                                    該開發板爲STM32F4探索者,查看原理圖可知,其外部時鐘爲8MHz 所以時鐘

原创 什麼是STM32CubeMX?(STM32代碼生成器)

一、STM32CubeMX 介紹      STM32CubeMX 是 ST 意法半導體近幾年來大力推薦的STM32 芯片圖形化配置工具,通過自己對硬件的需要,進行選擇,而後可以快速生成代碼,用於快速的開發與驗證想法。 在我看來有如下優點

原创 ESP8266使用教程之網絡知識簡講(TCP/IP)

總述 我們使用 ESP8266 模塊,就是爲傳輸數據到互聯網上。而 ESP8266 有內置的 TCP/IP 協議棧,可以方便我們進行數據交換。那麼 TCP/IP 協議棧是什麼? 一.計算機網絡體系架構 ​ TCP/IP 協議棧 是

原创 ESP8266使用教程之初識

一.ESP8266介紹 ​ 這裏將會使用正點原子的 ATK-ESP8266 爲例,來說明 ESP8266 的使用。 ​ 該模塊上面板載了安可信的公司的 ESP8266 模塊,ATK-ESP8266 採用串口與MCU通信,內置 TC

原创 ASCII碼,字符,字符串三者之間的關係

ASCII碼是什麼? ​ ASCII 全稱爲 ( American Standard Code for Information Interchange),簡單的說,就是用 7 位二進制 ( 即 十進制表示爲 0 到 127 ) 去

原创 STM32CubeMx(STM32F4 +FreeRTOS+CMSIS-RTOS)之資源(線程,隊列,內存池)管理

由於可能創建很多個線程,線程互相通信,因此,我們將線程ID統一存儲在一個結構體中,進行管理。 資源管理結構體如下: typedef struct resource{ uint8_t initialized; uint8_

原创 STMCubMx(STM32F4 +FreeRTOS+CIMSIS-RTOS)之線程(thread)創建

一.CMISIS-RTOS中thread相關API概覽     模塊 宏定義 描述 線程定義 osThreadDef 定義一個線程 osThread 訪問一個線程定義   模塊 API 描述 線程管理: 定義,創建和控制線程 osTh

原创 CMSIS-RTOS學習目錄

        開始在STM32F407開發板進行freeRTOS的學習,由於在STMCuMx下生成的代碼,進行了CIMSIS-RTOS封裝,所以有下列的學習。             學習目錄:             

原创 FreeRTOS 之五種內存分配方案(概括總結)

一.FreeRTOS 之五種內存分配方案 Heap_1:       (1).在此方案中,實現了基礎版本的pcPortMalloc ,而沒有實現vPortFree(),因此它適用於從來不會刪除任務的應用       ( 2) 動態分配的內