Esp8266进阶之路14esp8266的FreeRtos系统学习的正确姿势,环境配置环境。。
。
本系列博客学习由⾮官⽅⼈员潜⼼所⼒所写,不做开发板。仅仅做个⼈技术交流分享,不做任何商业⽤途。如有不对之处,请留⾔,本⼈及时更改。
序号SDK版本内容链接
1nonos2.0搭建开发环境,开始⼀个“hellow world”串⼝打印。
2nonos2.0利⽤GPIO开始使⽤按钮点亮你的“第⼀盏灯。
3nonos2.0利⽤ "软件定时器 " 定时0.5秒闪烁点亮⼀盏LED。
4nonos2.0⽤PWM控制⼀盏LED的亮度变化。
5nonos2.0SDK⾼级使⽤之封装Post与Get请求云端,拿到“天⽓预报信息”。
6nonos2.0了解 SmartConfig与Airkiss⼀键配⽹,给8266配⽹上云端。⽆需把wifi名字密码写在固件⾥。
7nonos2.0了解 softAP热点配⽹模式原理,仿“机智云”定义⾃⼰的热点配⽹模式协议。
8nonos2.0你要的8266作为UDP、TCP客户端或服务端的⾓⾊通讯,都在这了。
9nonos2.0[⼩实战上篇]Windows系统搭建8266的本地Mqtt服务器,局域⽹点亮⼀盏LED灯。
10nonos2.0[⼩实战下篇]Windows系统搭建8266的本地Mqtt服务器,局域⽹点亮⼀盏LED灯。
11rtos2.0接⼊阿⾥智能,点亮⼀盏LED灯,期待天猫精灵语⾳控制的不约⽽⾄!
12nonos2.0图⽂并茂学习阿⾥云主机搭建8266MQTT服务器,实现移动⽹络远程控制⼀盏LED。
13nonos2.0动⼿做个8266毕设⼩案例,smartConfig + MQTT协议轻松实现远程控制⼀盏LED。
14rtos2.0FreeRtos系统学习的正确姿势 ------ 环境搭建、烧录。
15rtos2.0接⼊阿⾥云平台⾮阿⾥智能的SDS服务,点亮⼀盏LED灯。
16nonos2.0基于Nonos移植红外线H1838,实现红外遥控器配⽹,远程控制⼀盏灯。
17nonos2.0esp8266⾃研的快速上电开关五次 (开-关为⼀次) ,⽆需按键触发则8266进去⼀键配⽹模式。
18nonos2.0基于NONOS 实现 OTA 远程升级,实现⽆线“ 热修复 ”升级固件程序。
19nonos2.0驱动 ds18b20、dht11 温湿度传感器,采集温湿度传感器到服务器。
20nonos2.0深⼊学习esp8266的esp now模式,仿机智云做⼀个⼩⽹关,实现⽆需⽹络下轻松彼此连接通讯交互数据。
21nonos2.0浅谈 esp8266 如何在本地局域⽹⽹络情况下实现最⼤效率地和前端实现数据交互。
22nonos2.0esp8266的⼯程如何添加第三⽅静态库⽂件以及如何⾃定义⽂件夹,聊聊那些makeFile的事
23nonos2.0再来⼀波 esp8266 基于 freeRtos系统连接⾃⼰私有的服务器实现OTA远程升级,接触下 lwip的基本知识。
24nonos2.0渗透学习回顾下esp8266的外置spi芯⽚25q系列,熟悉8266代码块在其的分布,得⼼应⼿放置图⽚或其他资料。
25rtos2.0深聊下esp8266的串⼝ Uart 通讯中断编程,为您准备好了 NONOS 版本和 RTOS 系统的串⼝驱动⽂件。
26nonos2.0RTOS分析 MQTT 实现过程,实现移植 MQTT协议在 esp8266 rtos实时系统,可断线重连。
27rtos3.0跟紧脚步,⽤VisualStudio Code开发 esp8266 rtos SDK v3.0版本,全新的 idf 框架,节省内存模块化开发。
28rtos3.0教你轻松⾃如使⽤cJson在乐鑫 esp8266 如何解析⼀段json数据以及如何⽣成⼀段json数据。
29rtos3.0百万条消息免费之使⽤TCP直连模式MQTT协议接⼊阿⾥云物联⽹平台,⽀持私家服务器对接⽀持阿⾥云规则引擎。
30rtos3.0SDK编程使⽤ IIC总线驱动 0.96⼨的OLED显⽰屏,显⽰天⽓预报信息。
31rtos3.0当esp8266遇到 Html,该怎么内置⽹页控制设备,理清内置⽹页的实现过程,实现⽆需路由器⼿机也可以控制esp8266。
32rtos3.0细聊HmacMD5的加密⽅法带来的安全性,并实践在esp8266上,最⼤保障传输的过程的信息的安全性。
33rtos3.0如何优雅地像乐鑫原⼚封装esp8266底层寄存器的逻辑思维,做成⾃⼰的静态库库⽂件,让第三⽅⼈使⽤?
34nonos3.0编程使⽤ SPI 驱动基于Max7219芯⽚的⼋位数码管,显⽰⽇期信息。
35nonos3.0借助机智云平台做⼀个商业化的七彩RGB灯泡可调整体⽅案项⽬,炫彩夺⽬⾼⼤尚。
36rtos3.0认识Rtos 3.0 sdk ⼯程结构,如何向esp-idf⼯程靠近的,如何⾃定义头⽂件编译?
37rtos3.0你要的基本外设功能都在这⾥了,包括Gpio、Pwm 和 Uart 接⼝使⽤。
38rtos3.0⼀篇⽂章带你搞掂存储技术 NVS 的认识和使⽤,如何利⽤NVS保存整型、字符串、数组以及结构体。
39rtos3.0带你捋⼀捋市⾯上的配⽹智能设备 esp8266 并绑定设备的过程,移植并成功实现在 esp8266 rtos3.1 sdk。
40rtos3.0基于乐鑫idf框架,研究出超稳定、掉线重连、解决内存泄露问题的Mqtt框架!⽀持esp8266和esp32!
41rtos3.0esp8266-12模块基于rtos3.1版本ota功能远程空中升级固件,官⽹基础之上增加dns域名解析!
42rtos3.0我⼜来了,基于rtos3.0版本 SDK编程 SPI 驱动 ws2812b 七彩灯,代码全部开源奉献给你们!
43rtos3.0基于rtos3.0版本扫描周围获取附近可⽤的 Wi-Fi 热点路由器信息,同样适合esp32。
44rtos3.0整理分享那些我在项⽬中常⽤的esp8266 rtos3.0版本的常见驱动,Button按键长短按、PWM平滑调光等。
45rtos3.0内置仅1M的Esp8285,如何攻破最棘⼿的OTA问题,⼤⼤节省资源成本开发产品
46rtos3.0详细分析Esp8266上电信息打印的数据,如何做到串⼝通讯上电不乱码打印;
47rtos3.0⽆需外⽹,如何实现在本地局域⽹与控制端做数据交换的⼀些开发经验;
48rtos3.0迟来的1024程序员祝福,开源分享⼀个驱动 ds18b20 获取温度的⼯程。
49rtos3.2aliyun sdk 直连接⼊阿⾥云物联⽹平台,实现天猫精灵队友零配⽹功能和语⾳控制。
……持续更新,欢迎关注我,QQ讨论:434878850
很多⼈怎么联系我⼀起学习进步,下⾯打个⼩⼩公告和⼲货⽆偿分享:
玩转esp8266带你飞、加付费QQ,提⾼门槛,不喜的朋友勿喷勿加:434878850
esp8266源代码免费学习汇总(持续更新,欢迎star):github/xuhongv/StudyInEsp8266
esp32源代码免费学习汇总(持续更新,欢迎star):github/xuhongv/StudyInEsp32
⽂章⽬录
⼀、前⾔。
我们上⾯的博⽂都是基于NONOS开发的,那么我们本篇呢?是基于FreeRtos系统开发的,基于什么是FreeRtos系统,我就⼀句话:它是开源的,意味着绝⼤部分的传感器驱动开源,⽽且⽐Nonos开发好⽤。注意此博⽂针对的是Rtos 3.0以下的,不包括3.0!
下⾯罗列下我学习8266的FreeRtos系统的资料:
乐鑫基于8266做出FreeRtos系统的SDK⼯程⽰范:github/espressif/ESP8266_RTOS_SDK
FreeRtos系统的开源驱动代码汇总:github/SuperHouse/esp-open-rtos
正点原⼦FreeRTOS系统讲解⼀期视频教程 -
正点原⼦FreeRTOS系统讲解⼆期视频教程 -
⼆、搭建开发环境。
1、这⾥我借⽤机智云的教程搭建Linux虚拟机:
2、下载好对应的软件之后,记得要设置共享⽂件夹,其作⽤就是在Windows平台和我们虚拟的Linux平台下,可以共享。
作⽤在于,我们后⾯在Linux系统⽣成的bin⽂件可以在Windows平台下取出来。
下⾯是电脑设置共享的⽂件夹路径,记得权限分配要完全!
3、如果您安装好了,请记得⼀定要以管理员⾝份运⾏,这样可以避免很多问题,⽐如⽆法启动,⽆法⽣成bin⽂件… …这是我遇到的最多的问题了。
4、如果您已经成功设置了共享⽂件夹,那么必须从下载的压缩包拷贝到该⽂件夹下并解压。
5、如果您已经成功运⾏了8266虚拟机,那么你必须要进去挂载模式,⽅可看到您设置的共享⽂件夹哦!在虚拟机命令符操作,输⼊./mount.sh,提⽰输⼊密码espressif,成功
之后cd到⼯程⽬录下,复制控制台如下:
esp8266@esp8266-VirtualBox:~$ ./mount.sh
[sudo] password for esp8266:
esp8266@esp8266-VirtualBox:~$ cd /home/esp8266/Share/ESP8266_RTOS_SDK-master
esp8266@esp8266-VirtualBox:~/Share/ESP8266_RTOS_SDK-master$
三、设置⼯程环境变量。
1、⾸先把安信可提供⼯程范例的⼦⽂件夹examples任意⼀个⼯程,⽐如我剪切的是project_template这个⽂件夹到主⽬录下,如下:
2、指定的环境SDK变量路径,⽤编辑器打开我们刚刚剪切的⽂件夹project_template下⾯的gen_misc.sh⽂件,修改如下:
export SDK_PATH=/home/esp8266/Share/ESP8266_RTOS_SDK-master
export BIN_PATH=/home/esp8266/Share/ESP8266_RTOS_SDK-master/bin
3、为了演⽰⽅便,我们在程序⼊⼝的user_main.c⽂件的user_init()⽅法加⼊打印“hello world” :
void user_init(void){
printf("hello world ! xuhong !! SDK version:%s\n", system_get_sdk_version());
}
开源mqtt服务器四、编译⼯程并烧录。
1、编译⼯程和安信可的⼀体化编译⼯程有所不⼀样,我们只需执⾏命令我们的project_template⽂件夹下的gen_misc.sh⽂件即可,所以我们必须命令台切换到该⽬录。并且写
上./gen_misc.sh表⽰编译⼯程:
2、下⾯开始有控制地选择输出固件,我这⾥除了步骤五选择6,其他选择默认:
3、最后,我们会看到以下输出信息,恭喜,编译成功:
!!!
SDK_PATH: /home/esp8266/Share/ESP8266_RTOS_SDK-master
BIN_PATH: /home/esp8266/Share/ESP8266_RTOS_SDK-master/bin
No boot needed.
Generate eagle.flash.bin and eagle.irom0text.bin successully in BIN_PATH
eagle.flash.bin-------->0x00000
eagle.irom0text.bin---->0x20000
!!!
4、根据上⾯的输出,⼀样滴,到⼦⽂件bin,分别烧录固件即可:
5、重新上电,看输出信息,注意波特率设置74880:
⼯程已提交到GitHub:github/xuhongv/StudyInEsp8266
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论