<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/product/STM32F105_2CAN/index.html" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>
<iframe frameborder="0" height="1500" name="ifd" scrolling="auto" src="https://mnifdv.cn/resource/cnblogs/product/STM32F105_2CAN/index.html" width="100%"></iframe>
二次开发控制板准备工作
1,单片机使用Keil开发,需要安装Keil软件
可以看下面的教程进行安装(哪个版本都可以,如果已经安装了则不需要安装)
https://www.cnblogs.com/yangfengwu/p/17303541.html
2,Keil安装好了以后,双击安装开发支持包
双击运行,一直next即可
3.如果没有安装过CH340驱动,需要安装驱动
下载和运行程序
1.打开这节的工程
2.编译
3.会在其工程目录的output文件夹下生成hex文件
4.把设备通过数据线连接电脑
5.打开下载软件
6.按照下图配置
下载成功
整板测试 - 串口数据打印
1,下载程序的端口默认作为了串口日志打印, 可以使用串口助手查看一下打印的信息
默认的程序是连接这边的TCP服务器,会把CAN接收的数据通过4G发送到TCP服务器.
下载完成以后,如果没有日志打印,可以重新给设备上电.
选择设备的端口号,波特率选择115200, 然后打开串口,就会看到设备打印的数据
如果设备正常连接上了网络, 会打印信号强度csq, 时间戳(ms) , 还有本地时间
2,为了提高程序运行效率日志打印采用环形队列+中断发送的方式
环形队列文档: https://www.cnblogs.com/yangfengwu/p/14734949.html
配置:
把数据插入环形队列:
从环形队列获取数据并发送:
2,调试串口接收数据
整板测试 - CAN总线设备
1,CAN总线速率在这里修改
提示: 250K(250000); 500K(500000); 1M(1000000); 10K(10000); 1K(1000); 13.5K(13500) ..... 等等可以随意写,只要不报错就是支持,如果不支持可以调整下最小值采集百分比
推荐的采集点百分比最小值 80; 采集点百分比最大值 87.5; 内部程序将会选择采集点百分比为 83.3333%的比特率,即中间的采集点百分比
如果用户想百分比强制为 80%, 则可以
2,程序上每隔一段时间向CAN总线发送的数据
3,CAN数据接收
接收的CAN数据存储到了环形队列
3,CAN数据通过4G发送出去
连接服务器, 因为是4G,所以服务器必须是可以远程访问的服务器!!!
把接收的CAN数据发送到服务器
为提高运行效率,数据是存储到缓存管理里面
实际发送数据的地方
4,编译程序
5,重新下载程序到设备
6,这边使用CAN分析仪接到了设备的CAN总线引脚上测试的
设备发送数据,总共发送13字节, send:01,00,00,00,00,00,00,00,00,00,00,00,00,
第一位是01代表第一路,后面四位是CAN ID,最后8位是数据
整板测试 - TCP接收数据
整板测试 - 按键
其它:
程序上还获取了模组的IMEI, 设备SIM卡的ICCID
扩展 - 使用ST-link下载仿真调试
如果用户开发测试阶段,可以打开产品外壳,然后使用ST-link 进行仿真调试.
仿真器购买地址: https://item.taobao.com/item.htm?ft=t&id=743225964484
1,准备好ST-Link, 并安装驱动
2.使用ST-Link连接控制板
3.选择ST-Link; 点击Settings
4.选择SW模式,正常情况下会显示出来设备
5.其它配置
6.下载程序
.
标签:00,双路,程序,总线,控制板,串口,二次开发,下载,设备 From: https://www.cnblogs.com/yangfengwu/p/17982336