当前位置: 首页 > news >正文

Android App CAN通信测试

 CAN 通信

CAN总线协议(Controller Area Network), 控制器局域网总线,是德国BOSCH(博世)公司研发的一种串行通讯协议总线, 它可以使用双绞线来传输信号,是世界上应用最广泛的现场总线之一

10.1. can fd配置

在使用can之前,需要对can进行配置

注意

野火Android SDK中,如果发现can设备树配置和can驱动跟下面图片对不上,请联系技术支持更新。

../../_images/can_dts.png

 

../../_images/can_drv.png

10.2. CAN硬件连接

CAN模块之间接线:CAN_1H接CAN_2H,CAN_1L接CAN2_L

10.3. can通信测试

在Android系统中,同样可以使用can-utils工具进行测试。不过想要通过adb shell进行can测试,需要在Android SDK中自行移植can-utils。

通信测试

 123456789
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
执行adb
adb shell超级用户权限
su更改测试工具权限
chmod 0777 candump
chmod 0777 cansend查询当前网络设备:
ifconfig -aCAN启动:关闭CAN:ip link set can0 downip link set can1 down设置比特率500KHz:ip link set can0 type can bitrate 500000ip link set can1 type can bitrate 500000打印can0信息:ip -details link show can0ip -details link show can1启动CAN:ip link set can0 upip link set can1 upCAN接收:开启打印,等待接收:candump can0 &CAN发送:发送(标准帧,数据帧,ID:123,date:DEADBEEF):cansend can1 123#DEADBEEF

10.4. Android app can通信测试

在Android系统中,想要实现Android app去实现can通信,首先我们介绍一下Android jni

10.4.1. Android jni

Java Native Interface ,即 Java 本地接口 作用:使得 Java 与本地其他类型语言(如 C、C++ )进行交互。 实际的使用中,Java 需要与本地代码进行交互,因为 Java 项目具备跨平台的特点,所以 Java 与本地代码交互的能力非常弱,采用 JNI 特性,增强 Java 与本地代码交互的能力。

10.4.2. Android app 实现can 通信

以 LubanCat-2IO为例,使用的系统为android 11

连线方式如下:

../../_images/can_1.png

安卓界面整体布局如下:

../../_images/can_screen.png

在点击初始化按钮的时候,会先读取波特率,然后用该波特率去初始化2io的can0 和can1 。同时也会读取文本框的内容来决定canX来进行发送信息。 点击下方的send按钮可以将信息发送出去。同时后台会将can接收到的信息显示到文本框中,运行效果如下

../../_images/can_screen2.png

网盘提取码:hslu。

配套apk地址: can_apk

相关文章:

  • elementUI源码学习
  • OpenCV CUDA模块中矩阵操作------归一化与变换操作
  • 反射机制详细说明
  • 2025年渗透测试面试题总结-安恒[实习]安全服务工程师(题目+回答)
  • 遥感图像露天矿区检测数据集VOC+YOLO格式1542张1类别
  • 智能裂变引擎 商业增长利器 —— 专业推客系统耀世而来
  • Sprnig MVC 如何统一异常处理 (Exception Handling)?
  • Java—— 方法引用 : :
  • HANA数据库死锁
  • 2025年渗透测试面试题总结-安恒[社招]售前工程师(题目+回答)
  • Flink SQL、Hudi 、Doris在数据上的组合应用
  • 【数据结构】二分查找-LeftRightmost
  • AWS Elastic Beanstalk控制台部署Spring极简工程(LB版)
  • 若依框架的Excel导出功能
  • 前端流行框架Vue3教程:18. _组件数据传递
  • LIIGO ❤️ RUST 12 YEARS
  • git相关配置
  • EJS教程
  • Pyhton训练营打卡Day27
  • 03、基础入门-SpringBoot的大时代背景
  • 全球排名前十网站/免费seo网站诊断
  • 电子商务网站开发技术有哪些/竞价托管一般要多少钱
  • 交通局网站建设整改/加强服务保障满足群众急需m
  • 东台做网站的/海外网站
  • 做3dmax展示的网站/aso优化教程
  • 网站图片模板/aso安卓优化