自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 ESP32开发--为配网模式添加按键和指示灯

本文目录一. 添加自己的组件二.添加主动清除配网信息的按钮三.加入配网指示灯 在前面的章节我们设置了自动重连,也提出了我们的疑问:就是怎么主动清除联网信息以连接新的网络,以及主动让客户知道我们联网的过程,比如有没有连上网络,连上以后有没有断线等等。这一章我们就来实现这些功能。一. 添加自己的组件 这里我在smart_config例程的基础上做了修改,在main文件夹里新建了main.c 和smartconfig_led.c ,将原来的smartconfig_main....

2020-10-16 14:13:28 2342 1

原创 ESP32开发--Cmake的介绍与组件的添加

ESP32基础系列ESP32初体验之环境搭建 ESP32外设学习之GPIO ESP32外设学习之UART ESP32开发之给模块连上网络 ESP32的一键配网与Airkiss配网 ESP32使用NVS存储数据 ESP32开发--NVS存储配网信息+自动重连 ESP32之Cmake的介绍与组件的添加 ESP32之为配网模式添加按键和指示灯本文目录一.IDF的架构分析二.认识介绍下CMake以及IDF的CMakelist的编写三.通过例子说明怎么写基于项目树的CMakeLis.

2020-10-16 13:54:56 8319

原创 ESP32开发--外设之UART的使用

ESP32基础系列ESP32初体验之环境搭建 ESP32外设学习之GPIO ESP32外设学习之UART ESP32开发之给模块连上网络 ESP32的一键配网与Airkiss配网 ESP32使用NVS存储数据 ESP32一键配网+自动重连 ESP32之Cmake的介绍与组件的添加 ESP32之为配网模式添加按键和指示灯本文目录一.ESP32串口介绍二.官方关于串口控制的介绍三.官方串口demo 一.ESP32串口介绍 串口应该是最常用的外设之一了,ESP32的串..

2020-09-24 20:30:53 3416

原创 ESP32开发--NVS存储配网信息+自动重连

ESP32基础系列ESP32初体验之环境搭建 ESP32外设学习之GPIO ESP32外设学习之UART ESP32开发之给模块连上网络 ESP32的一键配网与Airkiss配网 ESP32使用NVS存储数据 ESP32一键配网+自动重连 ESP32之Cmake的介绍与组件的添加 ESP32之为配网模式添加按键和指示灯本文目录一.初步的实现方式二.代码改动写在前面:有了前面的基础,我们这一章想实现模块在smartconfig的基础上,实现掉电自动重连的功能。那么...

2020-09-23 22:07:56 3504 2

原创 ESP32开发--给模块连上网络

ESP32基础系列ESP32初体验之环境搭建 ESP32外设学习之GPIO ESP32外设学习之UART ESP32开发之给模块连上网络 ESP32的一键配网与Airkiss配网 ESP32使用NVS存储数据 ESP32一键配网+自动重连 ESP32之Cmake的介绍与组件的添加 ESP32之为配网模式添加按键和指示灯本文目录 一. 官方模块联网的步骤二.代码解析一. 官方模块联网的步骤 当我们想给模块联网时,模块可以看作是我们的手机,我们让它连上路由...

2020-09-23 21:49:13 4636

原创 ESP32开发--使用NVS存储数据

ESP32基础系列ESP32初体验之环境搭建 ESP32外设学习之GPIO ESP32外设学习之UART ESP32开发之给模块连上网络 ESP32的一键配网与Airkiss配网 ESP32使用NVS存储数据 ESP32一键配网+自动重连 ESP32之Cmake的介绍与组件的添加 ESP32之为配网模式添加按键和指示灯本章目录一.NVS的介绍二.ESP32的分区简单介绍三.NVS存储例程解析四.将例程修改为读写wifi名称和密码一.NVS的介绍 先来看看官网文.

2020-09-22 22:35:08 11601 2

原创 ESP32开发--一键配网与Airkiss配网

ESP32基础系列ESP32初体验之环境搭建 ESP32外设学习之GPIO ESP32外设学习之UART ESP32开发之给模块连上网络 ESP32的一键配网与Airkiss配网 ESP32使用NVS存储数据 ESP32一键配网+自动重连 ESP32之Cmake的介绍与组件的添加 ESP32之为配网模式添加按键和指示灯本文目录一.Smartconfig与Airkiss简介二.官方例程解析引出问题:上一章给模块联网的例程中,模块连接的ssid和key是我们预先设定好的...

2020-09-22 22:09:43 4405 1

原创 ESP32开发--外设之GPIO的使用

ESP32基础系列ESP32初体验之环境搭建 ESP32外设学习之GPIO ESP32外设学习之UART ESP32开发之给模块连上网络 ESP32的一键配网与Airkiss配网 ESP32使用NVS存储数据 ESP32一键配网+自动重连 ESP32之Cmake的介绍与组件的添加 ESP32之为配网模式添加按键和指示灯本文目录一.ESP32的GPIO简介二.官方例程解析一.ESP32的GPIO简介 要知道如何控制芯片的GPIO,必须由软件和硬件结合,也就是我们需要...

2020-09-21 22:55:20 3699

原创 ESP32开发--Windows下搭建开发环境

目录一. 认识下什么是ESP32的IDF二. windows下安装IDF开发工具三. 使用VS Code开发ESP32一. 认识下什么是ESP32的IDF ESP-IDF(Espressif IoT Development Framework )是乐鑫官方推出的针对ESP32系列芯片的软件开发框架。 简单的说就是官方整合的软件开发平台,可以帮助我们在ESP32上快速开发物联网应用。二. windows下安装IDF开发工具官方视频安装教程 1.安装esp...

2020-09-21 21:57:51 2362

原创 python中try-except-finally的运行机制

首先来看看一般对try--except--finally的解释: 如果执行出错,则后续代码不会继续执行,而是直接跳转至错误处理代码,即except语句块;  如果有finally语句块,执行完except后,则执行finally语句块,至此,执行完毕;  不管有没有报错,finally下的语句都一定会被执行。那如果在try或者except中包含return或者死循环的情况呢,fianlly下的语句又是怎么执行的呢?1、包含return的情况def func(): ...

2020-05-11 10:46:44 917

原创 VS code安装RT-Thread MicroPython总是提示安装失败的解决办法

VS Code能用来开发python,当然也能开发mpy,这里推荐使用安装RT-Thread插件。具体使用方法见:https://marketplace.visualstudio.com/items?itemName=RT-Thread.rt-thread-micropython这里把安装过程中的遇到的问题记录下:问题:开始在搜索框中安装RT插件,一直显示安装不成功,提示需要手动从VSIX安装,下载.vsix文件后选择安装,还是提示失败。解决方法:找到用户文件夹下的.vs code文件夹,删

2020-05-09 10:59:15 1078

转载 手机连接wifi自动弹窗的原理及其实现方法

一、手机连上wifi后会自动弹窗的原理生活中,有很多需要认证的路由器,手机连接wifi热点后会自动弹出一个网页,让用户输入账号和密码,比如星巴克,肯地基,麦当劳,甚至是火车站和机场的候车室。其实这是一种叫强制门户认证的技术--Captive Network。就是说,单用户连上一个wifi后,可以不需要输入wifi的密码,但是需要进行认证才能够访问到互联网。这种路由器有很多开源的软件,比如wif...

2020-05-06 11:21:46 14735 1

原创 python中关于字符串和字典型数据的互相转换问题

今天在调试程序的时候,遇到这样一个问题:message ="{ \ 'Senddata':[{\ 'id':'CID123',\ 'datapoints':[{'value':%d}]\ }]\}"dic =dict(message % 0)想当然的以为python中字符串和字典相互转化就用str()dict()就ok了,结果出现了上述错误。在网上查找了下,发现字符...

2020-04-29 14:15:43 308

原创 C语言的可变参数与字符的输入输出

一.可变参数的处理当我们在写程序的时候,如果传入的参数是确定的,那么依次处理就行;如果参数的长度不确定,该怎么处理呢?在C中,当我们无法列出传递函数的所有实参的类型和数目时,可以用省略号指定参数表。如 void func (...)另外C语言提供了一套标准的处理方法。先来看看下面的例子。(该函数实现的是:将不定长度的字符输出)#include "stdarg.h"void...

2020-01-16 17:00:24 1271

转载 关于ARM内核的一些理解

ARM中的比较有代表性的M系列的内核和A系列的内核,那么这些不同的内核有什么区别先来看看下面一段非常通俗易懂的解释。来自网络https://blog.csdn.net/qlexcel/article/details/79299970. 好比你盖房子,刚开始因为水平低流行盖平房,这就是一种架构(V5T),然后这种平房架构你可以设计出一款独立卫生间的款式, 这叫ARM7内核。 然后其他人(芯片设计...

2019-12-18 11:22:10 703

原创 状态机的设计思想与单片机按键检测的实现方式

一. 什么是状态机我们以生活中的小区的停车系统为例:停车杆一般没车的是不动的(初态),有车来的时候需要抬杆(状态1),车通过需要放杆(状态2),如果在放杆的过程中突然有车,又需要抬杆(状态3)。。。就是说我们需要将不同的情况划分为不同的状态,每个状态对应相应的操作。这只是状态机的一个很简单的举例。如果单个状态也是一个状态机的话,那么就会形成状态机套状态机,有点类似于C++里的父类和子类。其...

2019-12-17 15:17:23 1038

原创 机智云OTA过程MCU端程序设计学习(一)

1.写在前面: 一般利用云端更新MCU端固件的机制是:云端通过一个能联网的模块(例如wifi,4G等)将固件信息传输到MCU端。整个过程也就是 云端(TCP)-->模块(串口)-->MCU。当然这其中还涉及到固件完整性的校验,传输过程的稳定性等等。通过接受双方会选择校验机制确保固件的一致性,例如CRC、MD5、Hash等。2.关于机制云与STM32的固件更新的说明 ...

2019-12-13 18:01:23 825

原创 机智云OTA过程MCU端程序设计学习(二)

这篇我们主要是学习下app部分固件的设计逻辑。1. 初始化过程中开辟一个环形缓冲区,设置串口为中断接收,重写串口中断回调函数,也就是每次接收一个字节的数据就往环形缓冲区里丢一个数据。void gizwitsInit(void){ pRb.rbCapacity = RB_MAX_LEN; pRb.rbBuff = rbBuf; if(0 == rbCrea...

2019-12-13 18:01:11 1547 1

原创 机智云OTA过程MCU端程序设计学习(三)

这篇我们接着分析boot部分的程序设计。MCU重启后首先运行的就是boot程序,通过判断flag区有没有新固件更新的标志,如果有就更新固件;没有就跳转到app程序。1. 官方关于boot程序流程的介绍2. 我们先来看看main函数的逻辑int main(void){ SystemInit();#ifdef DEBUG usart1_init();#endif...

2019-12-13 18:00:58 565

原创 关于0.96OLED的显示过程详解(I2C通信方式)

一. 关于OLED显示屏的介绍通常我们所用的OLED屏有白色、蓝色、黄蓝双色等几种;屏的大小为0.96寸,像素点为128*64,所以我们也称之为0.96OLED屏或者12864屏。内部驱动IC为SSD1306;通信方式一般为SPI或者I2C。如下图所示,配置哪种模式主要是根据BS0、BS1和BS2这三个管脚的电平逻辑来的。二. I2C通信地址与通信过程 如手...

2019-12-03 15:01:23 43750 17

转载 Linux最小系统下如何挂载U盘以及查看U盘的内容

https://www.cnblogs.com/w54255787/p/10181838.htmlhttps://blog.csdn.net/hhhhh89/article/details/54311161/

2019-11-06 11:27:30 1175 1

转载 单片机AD采样的几种算法

1、限幅滤波法(又称程序判断滤波法) A、方法: 根据经验判断,确定两次采样允许的最大偏差值(设为A) 每次检测到新值时判断: 如果本次值与上次值之差<=A,则本次值有效 如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值 B、优点: 能有效克服因偶然因素引起的脉冲干扰...

2019-10-31 15:58:17 9817

原创 51单片机模拟I2C读写M24LR04

目录一、 有关M24LR04的介绍二、 I2C的读写时序三、 参考代码四、 调试中遇到的问题一、 有关M24LR04的介绍M24LR04是ST公司的一款NFC芯片,支持ISO15693和ISO1800-3等协议,存储结构2048x32位。在RF模式下,采用13.56Mhz无线电载波通信;在I2C模式下,作为从机应答主机的请求。该芯片支持写数据加密,支持一组I2C密码和三...

2019-10-31 15:29:28 1076

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除