暂时未有相关云产品技术能力~
不浮夸,不将就,认真对待学知识的我们,矜辰所致,金石为开! 为了活下去的嵌入式工程师,画画板子,敲敲代码,玩玩RTOS,搞搞Linux ...
聊聊系统路径位置,绝对路径与相对路径,正斜杠 `/` 与 反斜杠 `\` 使用说明 ...... by 矜辰所致
ESP32-C3 蓝牙部分我们学习了GATT,本文博主手把手带领大家使用 ESP32-C3的蓝牙做一个简单的小应用。
本来计划直接做一个蓝牙的小应用,首先得实现一下自己想要数据的传输,虽然我们前面已经测试过示例的读写了,但是还是发现一些问题,如何传输自己想要的数据呢?
我们以前文章说过,就是开发 service 和 characteristic,上一篇文章我们学会了添加 characteristic,我们还需要学会添加自己的 Service 。
我们主要需要认清目标:我们不是来研究蓝牙协议的,我们是来使用 ESP32-C3 跑蓝牙协议,用来 数据传输通讯的。我们要会用 ESP—IDF 提供的示例框架,根据自己的实际需求修改代码,这就是我们最终的目的 !
学习蓝牙的 GATT 开发,我们从示例代码,一段代码一段代码进行详细分析说明
正所谓磨刀不误砍柴工,我们有必要先深入的学习一下 GATT 以及 GATT 相关的一些知识。 本文我们就来了解一下 蓝牙 GATT 到底是什么?同时了解下我们使用的 ESP32-C3 GATT示例的工程的代码结构。
嵌入式 Linux入 门第三课,熟悉掌握 Linux 常用 Shell 命令 ...... 矜辰所致
在我们前面 ESP32-C3 的教程中,从基本的外设,到wifi,到最后使用MQTT连接云平台完成了一个 简单的项目,我们已经掌握了ESP32-C3 的大部分功能了。 但是作为一款蓝牙芯片,蓝牙的使用是必不可少的,今天我们就开始对 ESP32-C3 蓝牙的使用进行学习测试。 蓝牙部分已经不敢叫教学了,为了搞清楚ESP-IDF的那些示例程序到底是关于什么内容, 因为自己也是边学习边测试花了大量时间补充蓝牙的基本知识,希望小伙伴指出不足之处! ...更新说明,ESP32-C3只支持BLE
ESP32-C3学到现在,我们已经掌握了从基本外设到网络服务端的相关知识, 这篇文章就是做一个简单的应用,使用开发板连接ONENET云平台, 使用MQTT协议,上报温湿度和光照数据,平台下发命令控制全彩灯颜色切换。
在前面,我们已经学会了 ESP32-C3 的WiFi 配置以及使用,为我们学习网络协议建立了基础。 这篇文章我们就来学习测试一下ESP32-C3 的 MQTT 驱动。
经过上一篇的WiFI入门篇,我们知道了WiFi初始化方式 和学会了WiFi的几种工作方式, 在实际应用中,环境复杂多变,在固件中输入SSID 的方式太不通用了, 所以肯定是需要学习一下如何在不同的环境中联网,就是所谓的配网。 ESP32-C3的配网方式有多种,本文主要说明测试 Smart方式 和 BlueIF方式。
前面的8节基础课算是把 ESP32-C3 的外设和一些基本功能都测试过, 接下来就要进行无线协议 WIFI 和 蓝牙的功能测试。 这节课我们就从 WIFI 开始,了解 ESP32-C3 的WIFI 功能。
前面的7节课把开发板上基本的外设都测试过一边,接下来马上就要进入wifi和蓝牙应用的测试了 在此之前,还需要把掉电数据保存的功能给实现,在STM32中,可以使用内部的flash或者有些自带的EEPROM 在 ESP32-C3 上,使用非易失性存储 (NVS) 库的方式,进行简单数据的掉电保存
测试第7课,补一补基本的PWM控制器的测试。 说明一下,ESP32-C3没有MCPWM硬件,所以测试只有LEDPWM, 如果想用ESP32-C3控制电机,可以考虑使用 RMT,后期有机会测试一下。
到了测试第6课,还没有玩过ESP32-C3的基本定时器,虽然FreeRTOS,可以使用软件定时器 但是软件定时器毕竟也有不适用的时候,这个在我FreeRTOS博文中有单独说明。 所以硬件定时器也得熟悉,同时附带简单用一下软件定时器。
测试第五课,本来是准备测试一下PWM驱动 SK6812 RGB灯, 但是研究了一段时间,发现在ESP32-C3 有更好而且现成的方式 实现 SK6812 的控制, 使用PWM也不是不可以,只是对于初学者,需要多花好多时间, 所以本文还是先以ESP32-C3内置的 RMT 进行 SK6812 的控制,毕竟有现成的示例
测试第四课,了解ESP32-C3的 I2C 总线使用,与SHT21 温湿度传感器通讯 这一课把基础介绍放在前面,先看基本流程,再去修改代码
测试第三课,ESP32-C3的串口通信测试 老样子,使用Enocean无线模块和ESP32-C3进行串口通信。
测试第二课,主要了解GPIO中断使用,和测试按键驱动
经过前面的折腾,设计好了自己的测试开发板 搭建好了开发环境, 然后正式开始进行功能测试了,测试顺序先从简单的开始吧,一步一步来
对于ESP32-C3开发,自己对Arduino环境使用起来很是不习惯,既然乐鑫官方都出对应的环境,还是来试试官方环境
还是一个FreeRTOS的例子,这次不是裸机工程转的,没有大部分复制的代码, 所以会把步骤会记录详细一点,这应该也是博文中 FreeRTOS 最后一个例子了 平台: STM32L051C8T6 欧姆龙 D6T 红外测温传感器 I2C 协议 设备作为485从机
记录一下一个实际项目由裸机程序改成FreeRTOS,以前产品的平台还是C8051单片机上面的程序, 硬件平台改成了STM32L051,同时使用STM32CubeMX生成的工程,使用FreeRTOS系统
FreeRTOS软件定时器,相对前面的内容来说,软件定时器还是比较简单的,我们简单测试一下
我们在前面单独介绍过FreeRTOS的任务通知和消息队列, 但是在FreeRTOS中任务间的通讯还有信号量,邮箱,事件组标志等可以使用 这篇文章就这些成员与消息队列和任务通知的关系进行说明分析
自己的画的炫彩“月饼”到了,本文就开始带大家来玩玩我们自己的月饼 ......by 矜辰所致
本篇文章记录FreeRTOS消息队列的使用,我不从理论开始介绍,直接用起来,然后从发现的问题分析记录解决。
今年的中秋节又要到了,各平台活动也搞起来了,我有点坐不住了,作为一个嵌入式工程师,我可以做一个实实在在的月饼,拿在手上陪我们过中秋!
记录一下第一次使用立创EDA第一次设计ESP-C3的开发板
本文算是记录,根据自己经验把使用过的一些电路记录下来,常见的使用起来稳定的电路就当做分享,不常见的使用过的就当做给自己做个笔记
在前面几篇文章我们已经对FreeRTOS任务API和任务调度原理进行了相对深入的分析 这篇文章主要针对任务与任务之间的交互,信息传递相关的API组件进行分析
本来计划是消息队列、信号量、任务通知、事件集、邮件的文章 但是因为自己调试的时候遇到了一个问题,还是把堆栈溢出问题放到前面来说
RTOS的任务调度原理和所使用的内核中断、寄存器息息相关 文中截图大多是《Cortex-M3与Cortex-M4权威指南》翻译版本里面的内容 需要对内核有一定的了解,本文尽量用简单的描述表达清楚 虽然是FreeRTOS的记录,但是原理上来说对于其他RTOS也是一样的!
在了解了基本的环境和框架之后,对FreeRTOS 的任务,消息队列,信号量,事件,软件定时器 这些基础的功能部分也得有个认识。 这篇文章主要介绍了一下关于任务的API以及源码的简单分析。
本文是 矜辰所致 的 RT-Thread 记录专栏的内容导航,结合自己的学习应用过程的总结记录。 有基础理论,有与FreeRTOS的比较,有实际项目,有应用总结。
本文学习测试一下几款典型设备的 RT-Thread I2C软件包
AT 组件:RT-Thread 一个比较典型的组件, 解决了不同网络模块AT命令之间的差异导致的重复开发的问题,大幅度简化了MCU+无线模块方案开发。
从本文开始,测试学习一些 RT-Thread 常用的组件与软件包,先从刚学完的 SPI 设备开始。
本文学习一下I/O 设备模型之SPI设备使用,I/O 设备模型篇的最后一篇文章。
RT-Thread ADC 设备学习使用 ......by 矜辰所致
讲完UART设备之后,我们已经熟悉RT-Thread I/O 设备模型了,回头看看基本的 PIN 设备。
从 UART 设备开始学会使用 RT-Thread I/O 设备模型 。
深入理解 RT-Thread I/O 设备模型 — 分析 UART设备源码。
学完 RT-Thread 内核,从本文开始熟悉了解 RT-Thread I/O 设备管理相关知识。
应用篇-在STM32L051上使用RT-Thread 第五篇,也是本次应用的完结篇。 把按键驱动移植好,定时器使用加上。
应用篇-在STM32L051上使用RT-Thread 第四篇,巧妙的使用信号量处理串口通讯。
应用篇-在STM32L051上使用RT-Thread 第三篇,学习RT-Thread Studio如何添加自定义的.c .h文件, 同时开始我们的程序移植和设计。
应用篇-在STM32L051上使用RT-Thread 第二篇,使用STM32CubeMX 进行对应外设配置,同时做一些简单测试。
学完了 RT-Thread 内核基础,来使用 RT-Thread 实现一个小应用。 硬件平台:STM32L051C8 TCM310(Enocean无线芯片) 软件平台:RT-Thread Studio STM32CubeMX 产品名称:无线温度传感器 实现功能:STM32L051 通过 I2C 协议读取 SHT21D 温湿度传感器数据,然后通过串口和 Enocean 通讯,按照标准Enocean协议,将温湿度数据发送出去