首页

来自何亚红个人资料库
HEYAHONG讨论 | 贡献2022年5月7日 (六) 07:22的版本 →‎常用工具
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航 跳到搜索

常用技术栈

可连接TCP/IP的物联网设备

开发物联网设备时,无论设备是通过WiFi、2G/3G/4G/5G或以太网连接网络,如设备支持TCP/IP,通常采用MQTT作为主要通信协议。
相关WiKi:


除了主要通信协议,通常物联网设备还需要支持NTP对时,有时还需要使用到Http作为辅助协议。

带交流计量功能的设备

单相SOC方案

对于单相计量(即常见的家用电)设备,通常采用SOC方案:

此类SOC通常可以使用内置的模块完成包括计量功能在内的大部分需求,在某些情况下也可开发高精度的直流计量设备。
如需与其它设备进行交互,通常还需要添加通信模块或者使用串口通信。
若使用串口通信,本人常用Modbus RTU作为具体协议,将具体的硬件资源映射为线圈(可读写的位)、输入线圈(只读的位)、保持寄存器(可读写)、输入寄存器(只读)。

单相非SOC方案

若由于需要采用低成本导致计量部分相对于强电非隔离,而设备上又需要输出隔离接口时,通常采用非SOC方案+串口/SPI口隔离,常用芯片方案:

此方案需要另外加一个主控芯片。

三相非SOC方案

若待计量的电路为三相电路,常用芯片方案:

此方案需要另外加一个主控芯片。
注意:截至编辑时,尚未发现三相SOC方案。

带有特殊功能的路由器/WIFI网关

芯片方案:

软件开发方案:

在内核设备树(dts)配置中使能需要使用的标准接口,并在openwrt的menuconfig中选中对应的kmod包后,即可使用Linux用户程序(非内核模块)操作硬件设备。
对于SPI、I2C与UART而言,用户可通过打开/dev目录下的相应字符设备即可使用。
对于GPIO而言,可使用sysfs文件系统目录:/sys/class/gpio目录进行GPIO操作。

常用芯片及模块

可编程开发的芯片及模块

可编程开发的芯片及模块
芯片/模块名称 说明 wiki(若有)
RN8211B 单相计量SOC RN8211B
HT502X 单相计量SOC HT502X
Air724UG 4G模块,进行C语言开发 Air724UG
ESP-12F WIFI透传模块,可支持二次开发,主芯片为ESP8266 ESP8266
ESP-32S ESP32模块,可支持WIFI、蓝牙、以太网,可采用esp-idf开发 ESP32
TB-01 W600开发板,WIFI SOC,Cortex-M3内核 W600
TB-08 W800开发板,WIFI/蓝牙 SOC, XT804内核 W800
CH579 以太网、蓝牙、USB SOC,Cortex-M0内核MCU CH579
HLK-7688A MT7688芯片核心模块,可采用openwrt开发 MT7688
E18-MS1 CC2530芯片核心模块,可采用contiki开发或者Z-Stack开发 CC2530


注意:此章节可能不包含资料较多,应用极其成熟的芯片系列,如STM32

外设芯片及外设模块

外设芯片及外设模块
名称 说明 接口 wiki(若有)
RN8302B 三相计量芯片 SPI RN8302B
RN8209C/RN8209D 单相计量芯片 UART/SPI RN8209
NRF24L01+ 2.4G无线芯片,具有众多兼容替代(如Si24R1) SPI+GPIO(中断、CE) NRF24L01+

常用软件

本章节不包含工具类软件(如集成开发环境、编译工具链等)。

名称 说明 wiki(若有)
FreeRTOS 嵌入式操作系统 FreeRTOS
paho.mqtt.embedded-c MQTT客户端,可移植到各种芯片平台 paho.mqtt.embedded-c
openwrt 操作系统,嵌入式Linux构建工具 openwrt

常用工具

常用工具
名称 说明 wiki(若有)/链接地址
easy-rsa 使用SSL/TLS时,自签证书制作/管理工具 easy-rsa
buildroot 嵌入式Linux构建工具 buildroot
debootstrap Linux系统根文件系统创建工具,可创建Debian系Linux系统根文件系统 debootstrap
crosstool-ng 交叉编译工具链创建工具 crosstool-ng
ScreenToGif 在Windows下录屏制作gif的工具 https://github.com/NickeManarin/ScreenToGif.git

小工具(自写)

名称 说明 wiki 支持平台
CC3200_GangGenerator 生成用于烧录CC3200 SPI Flash的工具 CC3200_GangGenerator
  • Windows
WMToolHelper W600烧录工具 WMToolHelper
  • Windows
  • Linux (ubuntu 20.04)

相关链接