惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
Netflix TechBlog - Medium
罗磊的独立博客
H
Help Net Security
I
Intezer
G
Google Developers Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
T
Troy Hunt's Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
U
Unit 42
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
N
News and Events Feed by Topic
J
Java Code Geeks
S
Security Affairs
T
The Blog of Author Tim Ferriss
Recent Commits to openclaw:main
Recent Commits to openclaw:main
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
D
Docker
The GitHub Blog
The GitHub Blog
F
Full Disclosure
N
News and Events Feed by Topic
Webroot Blog
Webroot Blog
S
Security @ Cisco Blogs
腾讯CDC
人人都是产品经理
人人都是产品经理
M
MIT News - Artificial intelligence
Blog — PlanetScale
Blog — PlanetScale
T
Threatpost
D
DataBreaches.Net
Recent Announcements
Recent Announcements
博客园 - 三生石上(FineUI控件)
MongoDB | Blog
MongoDB | Blog
博客园 - 【当耐特】
L
LINUX DO - 最新话题
Google Online Security Blog
Google Online Security Blog
S
Schneier on Security
S
Securelist
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Help Net Security
Help Net Security
P
Proofpoint News Feed
Project Zero
Project Zero
S
SegmentFault 最新的问题
H
Hackread – Cybersecurity News, Data Breaches, AI and More
MyScale Blog
MyScale Blog
Google DeepMind News
Google DeepMind News
宝玉的分享
宝玉的分享
Y
Y Combinator Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
博客园 - 叶小钗

博客园 - 杨奉武

A8款WiFi&BLE+4G+GPS摄像头拍照图传模块 - SDK二次开发环境搭建和程序下载 WIFI&蓝牙(ESP32)转CAN或RS485总线&串口TTL模块-CSDK--MQTT和RS485双向透传 GY001-带RS485或CAN总线的WiFi+4G摄像头拍照图传模块 - 外部触发唤醒设备拍照,图片通过http发送到自己的服务器,发送完以后休眠(休眠时长由服务器控制) GY001-带RS485或CAN总线的WiFi+4G摄像头拍照图传模块 - 外部触发拍照,拍照存储到SD卡,然后从SD卡读取图片通过http发送到自己的服务器 WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-用户可以随时按下按键进行拍照,拍照存储到SD卡,然后从SD卡读取图片通过http post(from-data)发送到服务器 GY001-WiFi&BLE+4G转CAN总线或RS485中高速通信 - 4G通信CAN数据发送到MQTT, GPS上传数据, 1ms一帧测试 GY001-WiFi&BLE+4G转CAN总线或RS485中高速通信 - 4G通信CAN数据发送到TCP服务器, GPS上传数据, 4G转CAN总线的1毫秒一帧通信测试,实际做到了微秒级速率 GY001-WiFi&BLE+4G转CAN总线或RS485中高速通信 - 产品使用手册 GY001-WiFi&BLE+4G转CAN总线或RS485中高速通信 - 关于OneNet基站定位配置 GY001-ESP32S3+4G+GPS转CAN总线或RS485双向透传-SDK二次开发环境搭建和程序下载 GY001-带RS485或CAN总线的WiFi+4G摄像头拍照图传模块-整板测试-外部触发或阿里云物联网平台控制拍照上传到阿里云对象存储OSS,阿里云物联网平台OTA升级程序,阿里云物联网平台动态注册设备 WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-使用阿里云物联网平台控制拍照上传到阿里云对象存储OSS,支持阿里云物联网平台OTA升级程序,阿里云物联网平台动态注册设备 WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-定时或外部触发拍照上传图片到阿里云对象存储OSS WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-定时或外部触发拍照上传图片到OneNet物联网平台 A8款WiFi&BLE+4G+GPS摄像头拍照图传模块 - 产品使用手册 GY001-带RS485或CAN总线的WiFi+4G摄像头拍照图传模块-整板测试-外部触发上传图片到OneNet平台,onenet OTA升级,内存卡存储图片,上传电池电压,GPS或基站定位位置 带RS485或CAN总线的WiFi+4G摄像头拍照图传模块GY001-SDK二次开发环境搭建和程序下载 硬件基础知识和典型应用-二极管压降记录 带RS485或CAN总线的WiFi+4G摄像头拍照图传模块GY001-产品使用手册 WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-相关问题-编译出现undefined reference to 'esp_netif_ppp_set_params' 硬件基础知识和典型应用-使用单片机串口高速率接收大文件时使用硬件流控CTS的记录 WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-软件底层架构程序更新操作说明 硬件基础知识和典型应用-关于使用RAM运行单片机程序 硬件基础知识和典型应用-4G模组供电设计推荐 硬件基础知识和典型应用-在休眠项目中RS485电路休眠设计 WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-设备接收串口命令拍照,然后使用http post把照片上传到服务器,同时支持串口和MQTT服务器透传通信 WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-摄像头拍照识别解析QR二维码,并把解析的二维码数据通过MQTT发送 WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-疑难杂症-编译出现iot usbh cdc does not support target esp32 WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-疑难杂症-编译出现No such file or directory WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-疑难杂症-文件路径太长, 文件复制操作失败等问题 中移ML307C(4G Cat1,C-SDK,OpenCPU)模组学习开发-编译下载和运行第一个程序 中移ML307C(4G Cat1,C-SDK,OpenCPU)模组学习开发-AT指令测试 中移ML307C(4G Cat1,C-SDK,OpenCPU)模组学习开发-开发板基本介绍 WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-搭建接收图片的服务器(Windows) WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-搭建接收图片的服务器(Linux) WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-产品功能介绍(型号:CAM_A1) WiFi+4G摄像头拍照图传模块(夜视2K高清1080P)-使用MQTT发指令控制拍照
GY001-WiFi&BLE+4G转CAN总线或RS485中高速通信 - 4G通信CAN数据发送到UDP, GPS上传数据, 4G转CAN总线的1毫秒一帧通信测试,实际做到了微秒级速率
杨奉武 · 2026-06-15 · via 博客园 - 杨奉武

<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/product/gy001_can_485.html" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

说明

这节的功能是把接收的CAN数据发送到UDP, UDP接收的数据转发到CAN总线;

同时设备定时上报经纬度信息;

测试4G转CAN总线的1毫秒一帧通信测试完全没问题; 实际做到了微秒级, 具体多少微秒还未测试;

测试

1,设备准备工作

安装上4G天线;

如果支持GPS定位的设备需要连接GPS天线, 天线记得需要放到室外;

B/H接CAN总线 H;  A/L接CAN总线 L;

image

2,把这节的工程放到开发环境下面的目录里面并解压!

把这节的工程放到开发环境下面的目录里面并解压!

把这节的工程放到开发环境下面的目录里面并解压!

image

3,然后右键选择通过 Code 打开

image

4,修改为自己服务器的IP地址和端口号,和CAN总线通信波特率

image

image

5,点击这个进行编译

提示: 第一次编译时间有点长, 编译完这一次后面再编译就快了

image

6,编译下载程序, 然后点击查看日志窗口

image

7, 4G联网成功, 并获取到了网络时间说明可以了

image

联网成功以后,设备的NET指示灯会循环  灭500ms, 然后快闪3下

image

8, 测试下设备接收到CAN数据以后发送到UDP

这边使用C#做了一个UDP接收客户端, 可以把客户端放到自己的服务器上, 如果是本机的话可以使用花生壳映射来做通信;

默认监听的端口是 60000

image

image

9, 现在说下这边定的协议规则

下面是发送的CAN数据, ID是 00 0F FF FF  数据是 00 00 00 00 00 00 00 00

image

 image

UDP实际接收到的是

A5 A6 01 20 38 36 38 34 30 38 30 36 31 38 30 35 35 39 30 01 00 00 0F FF FF 08 00 00 00 00 00 00 00 00 55 56  

A5 A6 是数据头;

01 是代表发送的是 CAN数据;   客户监控有可能也监控到 02, 这个代表是上报的GPS数据;

20 代表后面的数据个数 (32个数据);

38 36 38 34 30 38 30 36 31 38 30 35 35 39 30  是设备的IMEI  868408061805590 作为设备ID

01 代表扩展帧, 如果是标准帧则是00

00 代表数据帧, 如果是遥控帧则是01

00 0F FF FF  是帧ID

08 代表CAN数据有效数据长度

00 00 00 00 00 00 00 00  是固定8字节的数据

10, 测试下每隔1ms使用UDP发送数据给设备

格式: A5 A6 01 11 01 00 1F FF FF FF 08 01 02 03 04 05 06 07 08 55 56

和上面的整体格式一样,只是去掉了设备ID

我这边就选择1ms定时发

image

可以看到服务器上发送的条数和设备接收以后发到CAN总线的条数

image

image

11, 关于设备上报的GPS数据格式

image

A5 A6 02 19 38 36 38 34 30 38 30 36 31 38 30 35 35 39 30 66 A5 E3 42 F7 10 B6 41 55 56

A5 A6 是数据头;

02 是代表上报的GPS数据;

19 代表后面的数据个数 (25个数据);

38 36 38 34 30 38 30 36 31 38 30 35 35 39 30  是设备的IMEI  868408061805590 作为设备ID

66 A5 E3 42  是经度,113.823043(低位在前,高位在后)   这个是根据IEEE754规约  知识点参考链接 https://www.cnblogs.com/yangfengwu/p/12111552.html

F7 10 B6 41 是纬度,22.758283 (低位在前,高位在后)

程序说明

1,CAN初始化和创建CAN数据接收任务

image

2,在CAN接收任务中把CAN数据发送到UDP数据发送缓存

image

3,提取缓存的数据,通过UDP发送出去

image

image

4,等待4G联网成功以后,初始化UDP

image

UDP接收的数据发送到数据缓存

image

5,从缓存中提取UDP接收的数据, 提取CAN总线数据, 通过CAN发送

image

下面处理的方式是为了解决粘包和分包;

image

image

6,发送GPS数据是在这里

image

image

关于OTA升级

1,更改固件信息是在这里

image

GY001 代表板子型号; 中间的0000代表硬件版本,字符串随意规定; 最后的0.0.0 代表软件版本,总长度不得超过32字节

2,咱编译以后会生成build文件夹, 然后OTA升级文件是这个

image

3,升级方式1

可以直接在这里写上升级文件的http下载地址:  http://xxxx/xxxx/audioCamera.bin

image

程序每次启动以后如果版本不一样会自动升级

image

image

image

image

4,升级方式2

用户可以把升级url地址调用下面的方式存储,然后软重启即可

软重启建议使用 sleep_time_gpio_wakeup(1);  这样不会影响内部时钟

image

5,升级方式3

如果客户想在程序运行中不重启直接升级, 客户可以直接把升级地址赋值给  ota_url

然后调用  

if(struct_ota_task.runing == 0){

gy_ota_task_create(&struct_ota_task);

}

.