原创 TencentOS-tiny 任務間通信(五)- 事件

一、任務間通信 事件 概述 事件提供了一種任務間實現同步和信息傳遞的機制。一般來說,一個事件中包含了一個旗標,這個旗標的每一位表示一個“事件”。 一個任務可以等待一個或者多個“事件”的發生,其他任務在一定的業務條件下可以通過寫入特定“事件

原创 TencentOS-tiny 任務間通信(六)- 完成量

一、任務間通信 完成量 概述 完成量是一種簡單的任務間通信機制,用以在任務間同步某一事件是否已“完成”的信息。 API講解 編程實例 1、在tos_config.h中,配置完成量組件開關TOS_CFG_COMPLETION_EN: #de

原创 TencentOS-tiny 任務間通信(四)- 信號量

一、任務間通信 信號量 概述 信號量是一種實現任務間同步的機制,一般用於多個任務間有限資源競爭訪問。 通常來說,一個信號量中持有一個整形數值,用以表示可用資源的數量。當一個信號量的可用資源數量大於0時,任務嘗試獲取該信號量成功,信號量的可

原创 TencentOS-tiny 內核基礎組件(二十)- 優先級隊列

一、內核基礎組件 優先級隊列 概述 提供了基於優先級的隊列管理。環形隊列的入隊出隊規則是先入隊的先出隊(first in, first out),優先級隊列的出隊順序是按照優先級來的,優先級較高的元素先出隊。 API講解 編程實例 1、編

原创 基於 STM32L431 + NRF24L01 收發案例(硬件SPI通訊)

  一、硬件平臺: STM32L431RCT6                           NRF24L01P 1、NRF24L01 2.4G射頻模塊接口圖: 模塊方面的說明網上有很多相關的資料,在這不浪費大傢伙的時間了。  

原创 移植 TencentOS-tiny

閒暇之時,利用一點點時間移植一下TencentOS-tiny系統玩玩。 硬件(MCU):STM32L051C8T6 目前來說TencentOS-tiny比起LiteOS還有一些不足的地方(組件還沒有LiteOS完善),但是它佔用flash

原创 M5311模組對接OneNet平臺—AT指令基本操作流程(LwM2M協議)

開機駐網流程 AT+SM=LOCK AT AT+CMEE=1 AT+CGSN=1 AT+CIMI AT+CESQ AT+CEREG? AT+CGACT? AT+CGATT?   註冊onenet平臺   AT+MIPLCREATE  //

原创 STM32L051C8T6 HAL庫 stop模式下的低功耗 RTC+外部中斷喚醒 總結+源碼

最近NB項目上使用的ST公司一款低功耗MCU,要求功耗越低越好。經過幾天時間,終於把它搞定了。其實很簡單的,有個快捷方式就是去官方參考例程來移植即可。 因爲官方沒有STM32L051C8T6這個例程,在此就去找型號接近的來做,結果發現ST

原创 STM32L051C8T6 STM32CubeMx 輸入捕獲進行超聲波測距 案例

MCU主控: STM32L051C8T6 超聲波模塊: RCWL-1601 基本工作原理:  1、採用IO口TRIG觸發測距,給至少10us的高電平信號;  2、模塊自動發送8個40khz的方波,自動檢測是否有信號返回;  3、有信

原创 STM32L051C8T6 HAL庫 使用PWM控制LED燈(呼吸燈效果)

芯片型號: STM32L051C8T6        通道 :TIM22_CH2 輸出引腳:PA7   知識回顧,要使用PWM功能,必須要在通用定時器配置才行,基本定時器是沒有PWM這個功能的。       1) 通用定時器(TIM2/3

原创 STM32L051C8T6 使用ADC方式,檢測電壓值與自帶芯片溫度值

1、原理圖 分壓電阻計算公式: BAT_ADC=R26/(R26+R27) 2、STM32CubeMx工具配置 3、代碼 1、串口(串口重映射打印配置) usart.c文件 /* USER CODE BEGIN 0 */ #

原创 關注物聯網、關注NB-IoT

在當下情況下,今天就來來聊一聊NB-IoT,特意整理了一些NB-IoT的入門級問題: 問:NB-IoT的優勢是什麼?答:支持單小區50K用戶連接,做上傳用低功耗優勢明顯。 問:NB-IoT支持定位嗎?答:3GPP R14及以後才支持,目前

原创 STM32CubeIDE 添加printf打印輸出

1、在使用STM32Cubde 生成好代碼中usart.c中添加,如下的代碼即可: /* USER CODE BEGIN 0 */#include "stdio.h" #ifdef __GNUC__ #define PUTCHAR_PRO

原创 移遠BC20低功耗操作

移遠BC20的一些操作,在操作之前先看下面兩張時序圖:                                                                      一、通過上面的兩張時序圖後,想比大家大概

原创 移遠BC20 LwM2M通訊流程

LWM2M流程 (BC20NAR01A06版本) 1.檢查分配的IP地址是否爲默認PDN AT+CGPADDR=1 +CGPADDR: 1,10.52.241.198 OK 2.配置iot平臺地址及port AT+QLWSERV