• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

QT 自研上位机 和 STM32F4xx下位机联调>>>can通信测试-基础样例-联合文章

武飞扬头像
好奇龙猫
帮助2

1、概述

之前做个qt的上位机软件,现在有了qt下位机软件,是使用STM32,有了这两项,相当我们凑够了步数,可做做一期联合文章,完全可以联合调试,并且在写can的下位机是,当时就有了这个联合文章想法。

2、实验环境

实验环境还是挺重要的,因为有时候,在你电脑上能运行的东西,在别人的电脑就不一定能运行,这一部分的原因就可能是实验版本不一样。
QT软件版本:qt 5.14.2
学新通

硬件其实下位机调通了,F1和F4无所谓的。

(1)软件环境:STM32cubeIDE 1.8.0
(2)硬件芯片:STM32F103VET6(野火:指南者)
(3)硬件芯片:STM32F407ZET6(正点原子:探索者)
其它硬件配件:j-link,can卡,PC,串口转换器。
说明:上下位机链接桥梁,依靠can卡
如图下图,本次硬件。
学新通

3、联合文章

(1)对于上位机,可以参照如下例子

样例文章,参照哪个都行:
【QT5:CAN卡通信的上位机-代码练习-收发数据 布局 引用外部库 基础样例(1)】

【QT5:CAN卡通信的上位机-加入示波器-界面优化与修饰 解析功能编写 进阶样例(2)】

(2)对于下位机,可以参照如下例子

样例文章,:
一个是循环发送接收文章。
【CAN卡通信的下位机-STM32cubeIDE-hal库 STMF1xx和STMF4xx 数据发送和接收 轮询接收方式 基础样例(1)】

一个是中断F4发送接收文章。
【CAN卡通信的下位机-STM32cubeIDE-hal库 STMF4xx 数据发送和接收 中断接收方式 基础样例(2)】

4、QT上位机部分

虽然之前就做个QT相关实验,但是我们无论拿到的是他人的代码,还是自己的代码,最好都验证一下,保证代码本身没有问题,否则联调时,不通,怀疑来怀疑去的,最后自己的一个点没注意到,损失的是自己。

第一步:QT代码下载编译。

将代码下载下来后,直接运行。
如下图所示
学新通

第二步:QT代码验证。

插入can卡usb后,选择自发自收模式。
学新通

点击软件自动发送消息。
学新通

由此,QT软件部分就验证完毕了。

5、STM32下位机部分

虽然之前就做个STM32相关实验,但是我们无论拿到的是他人的代码,还是自己的代码,最好都验证一下,保证代码本身没有问题,否则联调时,不通,怀疑来怀疑去的,最后自己的一个点没注意到,损失的是自己。

第一步:STM32代码验证。

这里使用STM32F4代码举例,将代码下载下来,后点击编译。
学新通
可以看到报了一个错误,多打了一个字母,那么去掉后,可以了。
学新通

第二步:更改下载器与串口转换器。

(1)我本次使用的j-link,没有使用ST-link,需要设置下。
学新通
(2)更加转换器型号不同,接的方式可能不同,但是接在STM32引脚如下。

PA11 --- can_rx---  
PA12 --- can_tx--- 
PA9 --- USART1_TX---
PA10 --- USART1_RX--- //可以不接
GND  --- GND ----//共地细节 别忘了

下载后,使用can软件-验证结果

使用can卡带的软件,可以看到是收到信息,发出后串口也打印了信息.
学新通

6、联合调试

完成以上测试,那么就可以联调了。其实整个硬件通路已经搭建好了,在测试STM32代码时,完事了,只需要关闭“can软件”,运行QT程序就可以了。如下图。
学新通

细节部分

(1)上传的F4代码编译后,会报错。

这块确实不小心多打了一个字母,已经更正,如还是会报错,那么自己手打改下吧。
学新通

总结

感觉最简单的,也需要一步一步调试出来。
自此,can相关也可以告一个段落了。

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgcaagc
系列文章
更多 icon
同类精品
更多 icon
继续加载