首页 > 编程语言 >STM32F105双路隔离型CAN总线转4G控制板 - 二次开发环境搭建和程序下载测试

STM32F105双路隔离型CAN总线转4G控制板 - 二次开发环境搭建和程序下载测试

时间:2024-01-23 14:11:06浏览次数:36  
标签:00 双路 程序 总线 控制板 串口 二次开发 下载 设备

<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

相关文章

  • C# TEKLA STRUCTURES 2022 二次开发 开发环境搭建
    初步接触二次TEKLA,以下仅为个人观点使用的exe方式开发的引用的nuget包程序入口点稍作处理,开启了TEKLA软件才能启动本程序,TEKLA软件关闭,本程序退出internalstaticclassProgram{///<summary>///应用程序的主入口点。///</summary>......
  • 金蝶云星空快速二次开发框架
    金蝶云星空快速二次开发框架【VSEP.Zian.Kd.Extend】【VSEP.Zian.Kd.Extend】介绍环境:支持私有云和公有云可配置性强:统一的配置读取方式,类似springboot方式根据指定的账套加载不同的配置文件,框架会自动识别加载不同环境的参数可维护性高:可根据配置相关的WebApi框架实现在线调......
  • 检测电源模块质量,轻松掌握 一步测出电源模块好坏 boshida dcdc acdc单双路输出
    检测电源模块质量,轻松掌握一步测出电源模块好坏boshidadcdcacdc单双路输出要检测电源模块的好坏,可以采取以下步骤:使用多用途测试仪或万用表测量电源模块的输出电压。将测试仪的红色测试笔连接到电源模块的输出正极,黑色测试笔连接到输出负极。根据电源模块的规格,测量输出电压是......
  • AP2813 双路降压恒流驱动 一路内置1A一路外置3A LED储能指示灯线路
    产品描述     AP2813是一款双路降压恒流驱动器,高效率、简单、内置功率管,适用于5-80V输入的高精度降压LED恒流驱动芯片。内置功率管输出功率可达12W,电流1.2A。AP2813一路直亮,另外一路通过MODE1切换全亮,爆闪。AP2813工作频率固定在150KHZ左右,同时内置抖频......
  • 医院安全(不良)事件报告系统源码 支持二次开发
    医疗不良事件报告系统源码旨在建立全面的、统一的医疗不良事件标准分类系统和患者安全术语,使不良事件上报管理更加标准化和科学化。通过借鉴国内外医疗不良事件报告系统的先进经验,根据医疗不良事件的事件类型、处理事件的不同部门,灵活设置上报模板和填报项目,对患者的影响、事后处理......
  • 称重驱动二次开发教程
    通过二次开发可以扩展新的设备型号,以插件的方式快速集成到系统。下面几个步骤快速实现一个简单的电子秤驱动。预备动作,先了解一下系统介绍,文章最下面有下载链接。称重系统免费下载,支持耀华、顶尖等多款设备型号使用插件式开发称重仪表驱动,RS232串口对接各类地磅秤数据实现ERP管......
  • 金蝶云星空-二次开发笔记
    金蝶云星空-二次开发笔记目录零、资料0.1、公共0.2、报表0.3、插件一、概述1.1、平台介绍1.2、部分业务介绍零、资料0.1、公共知识地图:https://vip.kingdee.com/article/392699482837824512?productLineId=1&isKnowledge=2交流社区:https://vip.kingdee.com/search?productI......
  • 解决方案 | AutoCAD二次开发的ProgID一览表(AutoCAD2000 ~ AutoCAD2024)
    1图片版本    2文字版本AutoCAD产品名版本号ProgIDAutoCAD2004R16AutoCAD.Application.16AutoCAD2005R16.1AutoCAD.Application.16.1AutoCAD2006R16.2AutoCAD.Application.16.2AutoCAD2007R17AutoCAD.Appl......
  • 谈谈企业级 Angular 应用的二次开发 - 基于 Angular Component 替换的 Extensibility
    我们知道面向个人用户(toCustomer,简称2C)软件和面向企业级用户(toBusiness,简称2B)的软件,在设计和实现上都存在一些区别,比如个人软件通常注重直观的用户界面和简单易用的设计,其中用户体验是关键,因为个人软件的目标是满足个人用户的需求和偏好。想想我们每天都在刷的抖音和头......
  • 基于个微机器人的二次开发
    简要描述:同意添加好友请求URL:http://域名地址/acceptUser请求方式:POST请求头Headers:Content-Type:application/jsonAuthorization:login接口返回参数:参数名必选类型说明wId是string登录实例标识v1是stringv1(从消息回调中取)v2是stringv2(从消息回调中取)type是int取回调中的scene来源返......