0%

最近要用到NTC进行温度测量,采用查表法准确度相对来说较高一些,所以总结了一下对照表。下面是我找到的关于NTC常用的电阻温度对照表,留存后用

阅读全文 »

本文是基于自主设计的CA-02模块编写的基础教程系列的第一篇,在接下来的一段时间里我会继续围绕CA-02模块做一些基础教程和工程上的应用。

可能会有人对CAN总线比较陌生,在之前的博文中,我已经简单介绍了关于CAN总线的特殊性及和其他通信方式的对比,这里就不再赘述了。

这里我们为什么要用ESP8266而不是其他MCU,比如51单片机,stm32单片机等,其实实现原理上都是一样的只不过我们在使用ESP8266的时候可以使用Arduino进行编写程序,这就意味着我们可以引用其他人编写好的代码库,所谓库,就是将底层寄存器的操作封装起来,我们无需关心具体寄存器是怎么操作的,直接使用API函数编程就可以了,这对于入门来说非常容易。使用ESP8266的原因还有一个就是ESP8266自带WIFI,这就意味着我们可以做一个CAN总线的网关,无论是在智能家居、工业控制还是其他物联网的应用中,网关是必不可少的组件,所以我们只要学会使用这些,基本上实现一个智能网关就非常容易了。

预告一下ESP32的相关教程,目前来说使用ESP32作为网关的话性价比要比ESP8266要高一些,这里暂不阐明原因,后面也会有关于ESP32的教程,会具体说明原因,ESP8266作为终端设备的性价比基本上是物联网应用中最高的,所以ESP8266的学习应用是必须的

阅读全文 »

markdown语法支持html语法所以可以用这个

1
<p style="text-indent:2em">xxxx</p>

例如:

下面一段话我想要首行缩进,

大家好,我是IOTTS,感谢大家的支持

只需要这样写就可了

1
<p style="text-indent:2em">大家好,我是IOTTS,感谢大家的支持</p>

效果如下:

大家好,我是IOTTS,感谢大家的支持

文章主要对ESP8266进行简单介绍,展示了常用模块及开发板的引脚图

特点

  1. 内置Tensilica L106超低功耗32位MCU,主频支持80MHz和160MHz,支持RTOS
  2. 内置TCP/IP协议栈
  3. 内置1路10 bit高精度ADC
  4. 外设有HSPI、UART、I2C、I2S、IR Remote Control、PWM、GPIO
  5. 深度睡眠电流10uA,关断电流小于5uA
  6. 2 ms内唤醒
  7. 待机状态下消耗功率小于1.0mW(DTIM3)
  8. 支持802.11 b/g/n/e/i
  9. 支持Station、SoftAP、SoftAP+STA模式
  10. 支持Wi-Fi Direct(P2P)
  11. 支持CCMP(CBC-MAC、计数器模式)、TKIP(MIC、RC4)、WAPI(SMS4)、WEP(RC4)、CRC的硬件加速
  12. P2P发现, P2P GO模式/GC模式和P2P电源管理
  13. WPA/PA2 PSK和WPS
  14. 支持802.11n(2.4 GHz)
  15. 支持AT指令远程升级及云端OTA升级
  16. 支持SmartConfig等方式配网功能
    阅读全文 »

简介

HardwareSerial 库是c++编写的,应用于esp32 Arduino应用环境的串口驱动库,我们在安装好ESP32的Arduino开发环境后就已经集成了这个串口操作库,在实际应用时直接引用就可以了。

注意:ESP32共有3个UART端口, 其中UART1用于Flash读/写,我们使用串口1时需要注意,需要将串口1映射到其他GPIO上即可,我测试了一下GPIO12、GPIO13,使用串口1时可以完美运行

串口名 Arduino名 TX RX
UART0 Serial pin1 pin3
UART1 Serial1 pin10 pin9
UART2 Serial2 pin17 pin16

效果演示

demo程序,将串口0接收到的数据传个串口1,再将串口1接受到的数据传输得串口0

阅读全文 »

文章前言

OpenWrt源码编译后默认的登录IP地址为192.168.1.1,往往这个IP地址跟我们现在所有的路由器IP冲突,对进入管理页面和终端造成麻烦,所以在编译之前修改掉默认的IP地址。

Lean大神的源码默认会修改IP在另一个段,为192.168.5.1,我们可以自定义修改成1.1同一个网段但是不是同一个IP,这样就解决了冲突的问题,而且也还可以便面局域网内其他设备IP地址段的问题。

上手操作

源码中关于网络的配置在config_generate这个文件里,打开终端进入源码目录用VIM或其他编辑器编辑文件:

阅读全文 »

问题

你想实现一个服务器,通过TCP协议和客户端通信。

解决方案

创建一个TCP服务器的一个简单方法是使用 socketserver 库。例如,下面是一个简单的应答服务器:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
from socketserver import BaseRequestHandler, TCPServer

class EchoHandler(BaseRequestHandler):
def handle(self):
print('Got connection from', self.client_address)
while True:
msg = self.request.recv(8192)
if not msg:
break
self.request.send(msg)

if __name__ == '__main__':
serv = TCPServer(('', 8888), EchoHandler)
serv.serve_forever()

在这段代码中,你定义了一个特殊的处理类,实现了一个 handle() 方法,用来为客户端连接服务。 request 属性是客户端socket,client_address 有客户端地址。 为了测试这个服务器,运行它并打开另外一个Python进程连接这个服务器:

阅读全文 »