STM32 +WIFI ESP8266学习指令集一_at+sysgpiowrite-程序员宅基地

技术标签: stm32  wifi  WIFI  嵌入式  

前言:

包含自定义指令集、烧录AT指令集、指令说明、基础AT指令、TCP/IP、功能AT指令。
1.1. ⾃自定义 AT 指令
AT 基于 ESP8266_NONOS_SDK 编译,ESP8266_NONOS_SDK/example/at 中提供了了开发者⾃自定义 AT 指令的示例例。乐鑫原本提供的 AT 指令以库⽂文件 libat.a 的形式提供,将包含在编译⽣生成的 ATBIN 固件中。
/ESP8266_NONOS_SDK/examples/at/user/user_main.c 中提供了了实现⾃自定义 AT 指令的示例例,可
参考实现。结构体 at_funcationType ⽤用于定义⼀一条指令的四种类型,类型定义如下表所示。
在这里插入图片描述
⽤用户如需编译客制化 AT 源代码,新增⾃自定义的 AT 指令,请将⽂文件夹 at 中的全部内容拷⻉贝到对应版
本 ESP8266_NONOS_SDK 的⽂文件夹 app 中开发及编译。如下图:
在这里插入图片描述
1.2. 烧录 AT 固件
参考 ESP8266_NONOS_SDK/bin/at/readme.txt 进⾏行行烧录,请使⽤用乐鑫官⽅方烧录⼯工具,烧录时注意
选择对应的 Flash ⼤大⼩小。
乐鑫官⽅方烧录⼯工具链接:
http://espressif.com/zh-hans/support/download/other-tools?keys=&field_type_tid%5B%5D=14。
1.2.1. 4 Mbit Flash
从 ESP8266_NONOS_SDK_V2.0.0, AT_V1.3 开始,AT 固件可以使⽤用 4 Mbit Flash,但不不⽀支持升级功
能。

1.2.2. 8 Mbit Flash
固件升级功能(对应指令 AT+CIUPDATE)要求 Flash 容量量为 8 Mbit 或以上,采⽤用 boot mode 的烧录
⽅方式。使⽤用 Espressif 官⽅方烧录⼯工具,烧录时选择 Flash size:8 Mbit。

1.2.3. 16 Mbit Flash, Map: 512 KB + 512 KB
使⽤用 Espressif 官⽅方烧录⼯工具,烧录时选择 Flash size:16 Mbit。

1.2.4. 16 Mbit Flash, Map: 1024 KB + 1024 KB
使⽤用 Espressif 官⽅方烧录⼯工具,烧录时选择 Flash size : 16 Mbit-C1。

1.2.5. 32 Mbit Flash, Map: 512 KB + 512 KB
使⽤用 Espressif 官⽅方烧录⼯工具,烧录时选择 Flash size:32 Mbit。

1.2.6. 32 Mbit Flash, Map: 1024 KB + 1024 KB
使⽤用 Espressif 官⽅方烧录⼯工具,烧录时选择 Flash size:32 Mbit-C1。

2 指令说明
在这里插入图片描述
注意:1不是每条AT指令都具备上述4种类型的指令。
2【】为缺省值,不必填写或者可能不显示。
3使⽤用双引号表示字符串串数据 ”string”,例例如:
4 AT+CWSAP=“ESP756290”,“21030826”,1,4
5 默认波特率为 115200
6AT 指令必须⼤大写,并且以回⻋车换⾏行行符结尾

3 基础指令
AT 测试 AT 启动
响应OK

AT+RST 重启模块
响应OK

AT+GMR 查看版本信息
• :AT 版本信息
• :SDK 版本信息
• :编译⽣生成时间

AT+GSLP 进入 Deep-sleep 模式

ATE 开关回显功能
• ATE0:关闭回显
• ATE1:开启回显

AT+RESTORE 恢复出厂设置
恢复出⼚厂设置,将擦除所有保存到 Flash 的参数,恢复为默认参数。
恢复出⼚厂设置会导致机器器重启。

AT+UART UART 配置,
查询返回的响应是 UART 实际参数值,与设置值有
⼀一定误差,是正常情况。
例例如,设置 UART 波特率为 115200 时,查询实际
波特率值为 115273。

AT+UART_CUR UART 当前临时配置

  1. 本设置将保存在 Flash user parameter 区,重新上电后仍⽣生效。
  2. 使⽤用流控需要硬件⽀支持流控:
    ‣ MTCK 为 UART0 CTS
    ‣ MTDO 为 UART0 RTS
  3. 波特率⽀支持范围:110~115200*40。

AT+UART_DEF UART 默认配置,保存到 Flash
4. 本设置不不保存在 Flash。
5. 使⽤用流控需要硬件⽀支持流控:
‣ MTCK 为 UART0 CTS
‣ MTDO 为 UART0 RTS
6. 波特率⽀支持范围:110~115200*40。

AT+SLEEP 设置 sleep 模式
Sleep 模式仅在单 Station 模式下⽣生效。默认为 Modem-sleep 模式。

AT+WAKEUPGPIO 设置 GPIO 唤醒 Light-sleep 模式
• 设置 GPIO0 低电平唤醒 Light-sleep 模式:
AT+WAKEUPGPIO=1,0,0
• 设置 GPIO0 ⾼高电平唤醒 Light-sleep 模式,唤醒后,将 GPIO13 设置为⾼高电平:
AT+WAKEUPGPIO=1,0,1,13,1
• 取消 GPIO 唤醒 Light-sleep 模式的功能:
AT+WAKEUPGPIO=0

AT+RFPOWER 设置 RF TX Power 上限
AT+RFPOWER=50

AT+RFVDD 根据 VDD33 设置 RF TX Power
AT+RFVDD=2800

AT+RFAUTOTRACE 设置 RF 频偏跟踪
AT+RFAUTOTRACE=0
AT+RST

AT+SYSRAM 查询系统当前剩余内存
:系统当前剩余内存,单位:byte

AT+SYSADC 查询 ADC 值
:查询到的 ADC 值,单位:1/1024V

AT+SYSIOSETCFG 设置 IO ⼯工作模式
AT+SYSIOSETCFG=12,3,1 //设置 GPIO12 工作为 GPIO 模式

AT+SYSIOGETCFG 查询 IO ⼯工作模式
AT+SYSIO 系列列指令的使⽤用,请参考 ESP8266 管脚清单。

AT+SYSGPIODIR 设置 GPIO ⼯工作为输⼊入或输出
AT+SYSGPIO 系列列指令的使⽤用,请参考 ESP8266 管脚清单。

AT+SYSGPIOWRITE 设置 GPIO 的输出电平
AT+SYSIOSETCFG=12,3,1 //设置 GPIO12 工作为 GPIO 模式
AT+SYSGPIODIR=12,1 //设置 GPIO12 为输出
AT+SYSGPIOWRITE=12,1 //设置 GPIO12 输出高电平

AT+SYSGPIOREAD 读取 GPIO 的电平状态
AT+SYSIOSETCFG=12,3,1 //设置 GPIO12 工作为 GPIO 模式
AT+SYSGPIODIR=12,0 //设置 GPIO12 为输入
AT+SYSGPIOREAD=12

AT+SYSMSG_CUR 设置当前系统消息
AT+SYSMSG_CUR=3

AT+SYSMSG_DEF 设置默认系统消息
T+SYSMSG_DEF=3

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_35968965/article/details/110406039

智能推荐

android卸载程序代码_安卓卸载一个应用的代码-程序员宅基地

文章浏览阅读543次。安装:Java代码 String str = "/CanavaCancel.apk"; String fileName = Environment.getExternalStorageDirectory() + str; Intent intent = new Intent(Intent.ACTION_VIEW); intent.setDat_安卓卸载一个应用的代码

vue-cli 3.0 出现内存溢出: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory_vue3封装的axios报栈溢出-程序员宅基地

文章浏览阅读5.4k次。问题如下图: 解决办法:1. 输入:npm install increase-memory-limit ,回车,等待安装完成2. 步骤1完成后,接着输入 increase-memory-limit ,回车, 基本问题就解决了..._vue3封装的axios报栈溢出

redis-cluster集群部署及测试(超详细)_redis cluster集群 部署-程序员宅基地

文章浏览阅读7.9k次。redis-cluster集群部署及测试(超详细),傻瓜式照搬_redis cluster集群 部署

利用RecyclerView实现无限轮播广告条_recyclerview 自动 循环 轮播-程序员宅基地

文章浏览阅读679次。代码地址如下:http://www.demodashi.com/demo/14660.html####前言之前有讲过TabLayout的一些知识,TabLayout实现顶部导航(一)TabLayout基本属性全解但是对于TabLayout实现的导航栏仍是有诸多限制,例如不能任意设置text的文字大小,若导航中涉及到图片的话,图片只能简单的设计到文字上方,所以布局方面仍是很受限制,为了..._recyclerview 自动 循环 轮播

SpringBoot在配置拦截器后,拦截器不起作用_springboot配置请求前缀 拦截器无法拦截-程序员宅基地

文章浏览阅读1w次,点赞4次,收藏6次。SpringBoot在配置拦截器后,拦截器不起作用按照网上诸多博客配置了SpringBoot拦截器,最终却惊奇的发现,拦截器不起作用,百般查找原因,sackoverflower,google,baidu…., 均不能解决问题,后来经过@ComponentScan(basePackages={“com.netease.controller”})启发后,发现问题就在于此。原因就是:Sp..._springboot配置请求前缀 拦截器无法拦截

论文阅读笔记:Label-Specific Document Representation for Multi-Label Text Classification_label-specific feature augmentation for long-taile-程序员宅基地

文章浏览阅读1.3k次,点赞3次,收藏3次。0、简介论文名字:Label-Specific Document Representation for Multi-Label Text Classification论文链接:https://www.aclweb.org/anthology/D19-1044.pdf会议:ACL20191、motivation本文的任务是文本多标签分类任务,在文本多标签分类任务中,一个待分类的文档会有多个标签,因此一篇文档的整体语义信息是由多个部分组成的。本文引入标签信息,使用注意力机制捕获文档和不同标签之间的_label-specific feature augmentation for long-tailed multi-label text classif

随便推点

【Linux脚本篇】什么是shell脚本,什么是shell变量_shell脚本变量-程序员宅基地

文章浏览阅读803次,点赞42次,收藏41次。将系统命令放在一起,顺序执行,即系统命令堆积; 特定格式、特定语法、系统命令,共同组成的文件;变量是shell传递数据的一种方法,即用一个固定的字符串去表示不固定的值,便于后期引用_shell脚本变量

Java中LinkedList类的常用方法_java linkedlist方法-程序员宅基地

文章浏览阅读6.5k次,点赞16次,收藏88次。 LinkedList类有很多方法,可以模拟栈,队列,链表功能。一、队列 1.入队 add(E e );将e插入队列末尾。 2.出队删除队首 poll() ; 取出队首元素,并且在队列中删除队首。队首为空返回null。 3.出队删除队首 remove(); 取出队首元素,并且在队列中删除队首。队首为空报错。 4.出队不删除队首 peek(); 只返回队首元素,不删除。为空则返回null。 5.出队不删除队首 element(); 只返回队首元素,不删除。为空则报错。二、栈 1.入栈 push_java linkedlist方法

NOIP2015 day2t3 运输计划_izumi_hanako-程序员宅基地

文章浏览阅读413次。统计路径经过次数的差分+二分答案+倍增lcaBZOJ 4326(10080ms) codevs 4632(最后一个点过不了) 写了俩小时还是没法过codevs最后一个点感觉自己萌萌哒,主函数里第一个乱糟糟的for循环其实就是建边,只不过被me拆掉写了······但是CSDN id:_傲寒 的代码过了,可以去看一看他的 http://blog.csdn.net/qq_30401_izumi_hanako

机器学习算法工程师--算法重点_南京亚信科技 算法工程师-程序员宅基地

文章浏览阅读342次。收纳一些看到的很好的一些博客。为了面试和笔试复习用。1. L1\L2正则化及相应理解。https://blog.csdn.net/jinping_shi/article/details/524339752. SVM理解。http://blog.51cto.com/34526667/18945513. 决策树。https://blog.csdn.net/qingqing7/a..._南京亚信科技 算法工程师

【开发工具】【git】通过关键字搜索对应的git提交日志_git搜索关键字-程序员宅基地

文章浏览阅读1.7k次,点赞3次,收藏9次。因为想查看某一个函数对应在源码中的修改记录,就想到了git log.试试看能不能搜索到相关信息。想找到一个内核函数相关的git log修改记录,第一想法是"git log + grep"操作:zhugeyifan@83-28:~/source/linux-stable/linux-stable$ git log | grep interruptible_sleep_on swim3: fix interruptible_sleep_on race interruptible_s_git搜索关键字

最新win11 JDK环境变量的配置_win11配置java环境变量-程序员宅基地

文章浏览阅读3w次,点赞34次,收藏92次。win11 JDK环境变量的配置配置环境变量JDK链接地址:https://jdk.java.net/16/由于经常要配置环境变量那些,由于冲突或者不小心,可能会把原来配置的弄掉,又要重新配置,所以索性记录一下第一次没有配置好不要着急,多试几次就好了,多配置几次你就会很熟悉了,正所谓万事开头难不用担心,仅仅配置了JDK,没有JRE!以下是步骤:鼠标右键 “此电脑” 选择属性,之后会出现一个弹窗,点击 “高级系统设置”如下图:点击 “环境变量” 然后会看到这样的画面:关键是下面的内容,用户_win11配置java环境变量