如何采用单片机控制多个模块设计来实现智能控制开关的设计
智能家居,目前除了WIFI还有更好的选择吗?SO:
模块推荐用串口转WIFI来做,像ESP8266,淘宝10来块一个。有完整的SDK和例程,二次开发非常方便,特别是控制开关量的例程已经有了;
如果你要实现云控制,ESP8266有个安信可云给你用;
上位机要自己写,用VS搭个tcp服务器,自定义下控制协议就可以了。windows的话界面可以用MFC做漂亮点,安卓更不用说了。数据传输最好考虑加密。
上面这些都没什么难度。如果你要做语音控制,推荐用Cortana吧,不过它的SDK要用c#,最近我正在学习。
使用rt thread系统里的EC200驱动包+web client做一个物联网项目,之前开发的时候一直都是用的EC600S模块,看起来挺好的,没什么大问题,后来量产的时候不小心买了EC600N焊上去了,之前也听厂家的技术支持说应该是完全一样的,可是就掉进了这个坑里。
故障现象:
模块的net_status和net_mode灯的状态不太对,模块开机后的最终状态有时候net_mode常亮,net_status灭掉,或者net_status一直在慢闪,net_mode一直熄灭。甚至有时候我的应用可以先从服务器拿一包数据,然后又挂掉再也连不上了。
分析:
上述这两种状态都不在文档描述中,打at client去看,你发什么它都是直接回显,比如发AT+CPIN它就直接回,而不是回OK或者错误,所以初步判断是模块进入了一个错误的状态。那么能让模块进入错误状态无非就是以下几种情况:
睡眠或者开机、重启的姿势不对
或者在模块初始化之前我的应用代码把它搞死了。但是之前用EC600S开发都是好的,而且一般应用代码不太能把模块搞到错误状态,这种可能性比较低。
排查:
针对第二种情况,排查很简单,先把应用软件去掉看看。故障依旧,所以继续排查1
在EC200的驱动包里要配置开机引脚,状态引脚,睡眠引脚。无论是开发什么东西,一般睡眠这种状态是最容易出问题的,包括x86开发,usb设备开发,屡见不鲜,所以首先把睡眠去掉了(-1),但是故障依旧。
刚开始我始终没有怀疑状态引脚,因为它是个输入,只是判断一下模块有没有开机,感觉不会有什么问题,所以绕来绕去一直没有去动它。直到看到了有个哥们遇到了类似的问题:
RT-Thread-at_device 没有使用power pin 导致的网络异常 bugRT-Thread问答社区 - RT-Thread
这个问题其实我之前用EC600S的时候好像也遇到了,但是我并不用ping,应用也没有问题,所以也没去管他。不过这倒提醒了可以去试试,于是把开机状态也改成-1,居然就好了。
电源引脚我没去动它,模块是需要有一个开机时序的,我看它的初始化代码里也有去动电源引脚重新开机之类的。
希望其他掉在坑里的小伙伴可以看到我这篇帖子,少走点弯路。
打开CSDN,阅读体验更佳
Quectel_EC600S系列_TCP(IP)_应用指导_V12rar
EC600S-CN 模块内置 TCP/IP 协议栈, Host 可以 直接通过 AT 命令访问网络; 这大大降低模块对 PPP 和外部 TCP/IP 协议栈的依赖性,从而降低终端设计 的成本。
EC600N(二)--核心板初次点亮
系列文章目录 EC600N(一)–基本信息介绍 EC600N(二)–核心板初次点亮 目录系列文章目录前言一、使用前说明1供电方式2 模块开机状态二、AT指令测试1测试准备2AT指令测试 前言 本次实验使用移远EC600N双排核心板,主要使用AT指令测试模块,测试模块的USB口和33V串口。 一、使用前说明 1供电方式 EC600N模块需要用排针的VIN进行供电,供电如下图所示: USB口供电可能达不到模块的开机要求(由于串联了二极管,有压降),一般采用针脚对模块供电。这个设计有点鸡肋。 2
继续访问
移远4G模组EC600N进行TCP/IP连接和服务器测试
最近公司产品需要增加一个4G模块进行数据传输,想到之前做的移远的4G模块,于是买了一个核心板回来调试。 协议选择TCP/IP,因此使用的是TCP/IP部分的AT指令手册。工具方面,使用串口调试助手,关于测试服务器,一开始用的安信可的透传云,但是服务器连接一段时间不发送消息就会自动断开,所以还是使用了网络调试助手。因为网络调试助手使用的是本地网络,如果需要和4G通信,还需要使用花生壳做内网穿透。 接下来先把服务器部分做好。 如果没有花生壳软件,建议先去官网下载一个 长这样色的。安装后打开界面如下 这个界
继续访问
STM32F405+4G模块OTA固件升级调试记录
STM32F405+4G模块OTA固件升级调试个人记录
继续访问
Cat1模块使用总结(EC600N)
由于Cat4模块(EC20)功耗大,考虑到NB网络覆盖问题(设备在野外工作场景),因此项目上用选择了Cat1(EC600N)模块,现在把调试过程总结下,希望能够帮助到大家。EC20使用总结请看:单片机和4G模块通信总结(EC20)。 一、电源 手册说供电电压≥34V,峰值电流3A。 二、通信口 UART和IO口都是18V,需要做电平准换。 三、开机顺序 我是上电1s后复位,复位低电平600ms,然后100ms后开机,开机等待10s后进行操作。 四、AT指令 采用消息地体原理,具体请看
继续访问
日志组件
日志组件 1 日志是什么 日志是软件应用必备的组件,是程序debug,或是数据收集管理的重要依据,方便我们监测生产环境的变量值变化以及代码运行轨迹。本课程主要用来学习实际开发中常用的日志组件。 主要是为了方便我们监测生产环境的变量值变化以及代码运行轨迹等。 这些记录会被输出到我们指定的位置形成文件,帮助我们分析错误以及用户请求轨迹。 2 常用日志组件 21 Log4j与log4j2x Log4j有8种不同的log级别,按照等级从低到高依次为:ALL>TRACE>DEBUG>
继续访问
ESP32+移远EC600N模组通过MQTT连接阿里云并通过HTTP进行OTA升级
ESP32+移远EC600N模组通过MQTT连接阿里云并通过HTTP进行OTA升级。以下是我这段时间进行的工作,分享下自己的研究成果,也让后面的小伙伴少踩一些坑。同时通过文章记录下操作步骤,免得自己过段时间忘记。以下是ESP32和EC600N模组之间通过串口进行数据交互的详细调试信息输出内容。
继续访问
热门推荐 EC600N(一)--基本信息介绍
EC600N使用说明 EC600N(一)–基本信息介绍 目录EC600N使用说明前言一、模块组的基本介绍1模组的基本选型信息2 EC600N核心板基本信息二、EC600N功能介绍1基本功能介绍2引脚功能三补充 前言 EC600N是一款移远推出的4G模块。移远和中传移动是主要的4G模块和NB-lot模块的供应商。由于移远的模块使用相对比较广泛,所以用它试试。 相关资源链接: 官网,这个网站找资料比较费劲。 quetcelpython下载中心,移远的多数模块支持python的二次开发。 quetcel
继续访问
移远QuecPython(基于EC600s)开发物联网应用(七) QuecPython通讯相关模块
一 sim --SIM卡模块 import sim 1 获取sim卡的imsi simgetImsi() 参数 无 返回值 成功返回string类型的imsi,失败返回整型-1。 2 获取sim卡的iccid simgetIccid() 参数 无 返回值 成功返回string类型的iccid,失败返回整型-1。 3 获取sim卡的电话号 simgetPhoneNumber()
继续访问
C语言一个好用的循环队列与使用示例(以EC200/600为例的AT框架)
目录1前言2结论3循环队列31写队列到队列头32从尾部读读队列33获取当前队列内数据数量34清空队列35两个重要结构体4效果与示例41三个读队列线程42 AT框架写队列与EC200初始化43 AT框架读队列44 EC200维持TCP长连接5下载51 循环队列52 AT框架+EC200的TCP长连接(与EC600通用) 1前言 上一篇:https://blogcsdnnet/ylc0919/article/details/111050124 自从之前说要发二代框架,不知不
继续访问
阿里云在线温湿度-小熊派qpython(综合展示)
需要用到的东西: 小熊派的ec100y开发板; i2c的温湿度传感器(我这里用的sht31,其他的也可以,自行修改代码); 阿里云账号; 接线:用到33v,GND,i2c的SCL和SDA 阿里云显示展示: app展示: 代码: # 包引用部分 import log from aLiYun import aLiYun import ujson import utime from machine import I2C import pm # 用户变量区域 # 上传间隔(单
继续访问
EC600N-AT 软件包笔记
INIT_DEVICE_EXPORT(ec200x_device_class_register); 开辟struct at_device_class结构体 进入at_device_class_register 怎么跳转到的static int ec200x_init(struct at_device device) at_device_class_registe执行完后到 INIT_APP_EXPORT(ec200x_device_register); static int ec200x_device_r
继续访问
open方案、openCPU-EC600、L610设计应用总结
OPEN CPU模组设计应用总结 咸鱼NO FASHION 根据实际项目需求选择最优的设计方案,是一名合格硬件工程师的基本功。 背景与优缺点说明: 对于物联网项目,大多数公司或者产品需更为便宜方案,因此在物联网项目中open CPU方案迎来黄金发展期。物联网项目本身就需要无线通信模组,通信模组开放一定IO口和通信接口,优点可以解决目前广大用户主控MCU短缺的痛点,降低开发成本;缺点IO口和通信接口使用相对于主控MCU不够灵活,接口相对较少。 软件方面: 支持open C和open Python(
继续访问
Quectel EC800N-CN 小尺寸物联网首选LTE Cat 1模块[移远通信]
EC800N-CN是移远通信专为M2M和IoT领域而设计的LTE Cat 1无线通信模块,支持最大下行速率10 Mbps和最大上行速率5 Mbps,超小封装,超高性价比。 EC800N-CN采用镭雕工艺,镭雕工艺具有外观更好看、金属质感强、散热更好、信息不容易被抹除、更能适应自动化需求等优点。 EC800N-CN内置丰富的网络协议,集成多个工业标准接口,并支持多种驱动和软件功能(如Windows7/8/81/10、Linux、Android等操作系统下的USB虚拟串口驱动);极大地拓展了其在M
继续访问
EC600S串口通信
EC600S有两个串口通信口,TX0/RX0;TX2/RX2,分别对应程序中的UART0 - DEBUG PORT和UART2 – MAIN PORT。运行本例程, 需要通过串口线连接开发板的 MAIN 口和PC,在PC上通过串口工具打开 MAIN 口,并向该端口发送数据,即可看到 PC 发送过来的消息。 (可通过串口转usb口,把TX2/RX2分别与转usb口的RX/TX连接到电脑上即可) """ 运行本例程,需要通过串口线连接开发板的 MAIN 口和PC,在PC上通过串口工具 打开 MAIN 口,并向
继续访问
移远EC20/600系列TCP发送可变长度数据的结束标志!
移远EC20/600系列TCP发送可变长度数据的结束标志!
继续访问
移远ec200/600的使用
移远ec200、ec600的使用: linux2622 pppd-244 ec600s 参考的是ec200s的拨号相关文档: 1:/driver/usb/serial/optionc更改了4个位置,并没 有严格按照ec200s的指导文档来(2630以上、30以上内核还会涉及wwan、qcserial相关文件,看相关文档) 2:内核config USB_SERIAL=y USB_USBNET=y USB_NET_CDCETHER=y (还没搞清楚
继续访问
EC600U
ec600u,tcp client 断线重连
继续访问
最新发布 STM32+USART+DMA+EC600N调试
在stm32Cube中,打开DMA发送中断和接收中断,打开usart全局中断。主要调试功能:(1)使用DMA发送固定长度数据给串口,(2)使用DMA接收不定长度帧数据。(1)利用DMA传输,发送固定大小数据 换成 包装代码如下: (2)利用DMA传输,接收大小可变的数据利用串口空闲中断,识别一帧的数据,参考链接: 注意:空闲中断结束后,记得重新开启DMA接收。指令解析 AT执行逻辑 每个AT指令执行成功,则继续下一条,如果本条AT指令执行失败,则重复执行,最多执行10次,如果10全部失败,则本轮结束
继续访问
0条评论