原创 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