【问题标题】:how can we implement CAN Application Layer(CAL) protocol in iphone/android我们如何在 iphone/android 中实现 CAN 应用层(CAL)协议
【发布时间】:2011-11-29 09:12:21
【问题描述】:

我需要连接一个支持 CANBus 的设备,所以为了与之通信,我需要遵循 CAL,所以任何人都可以帮助我实现 iphone/android 中的 CAN 应用层 (CAL) 协议。 请帮助我没有任何办法解决它

【问题讨论】:

  • 首先你需要一些CAN硬件接口,比如CAN-WLAN网关或CAN-蓝牙适配器等。你打算用什么?
  • 嗨!!! @androider 你有解决方案吗?

标签: android iphone can-bus


【解决方案1】:

“我需要连接一个支持 CANBus 的设备,所以对于 与我需要遵循 CAL 的通信”

该陈述的第二部分不一定遵循第一部分。有很多通过 CAN 总线进行通信的设备和系统不使用正式的更高级别的应用程序框架。

首先,您需要能够从您的应用程序中与 can 总线通信。您提到的 iphone 表明您将瞄准消费类手机,它们都没有 CAN 接口。因此,您需要合并一些适配器硬件(有 USB 适配器,并且 android 至少在 SDK 中具有 USB 硬件访问权限)。

如果您还需要与在 CAN 层之上实现更高级别应用程序框架(如 CANopen)的组件通信,您的选择是:

  1. 从维护的任何组中获取规范 它,并以您选择的语言和框架实现它。这可能是一项巨大的努力。
  2. 购买或查找开源实现。如果您购买了 C 实现的源代码,您可以将其编译到目标架构的共享库中,并以 android 为例,使用 Android NDK 为该共享库编写本机包装器,以将其公开给您的 java代码。如果您可以购买 Java 实现的源代码,您或许可以将其移植到 Android 上。

然后你需要将数据层和应用层粘合在一起,这无论如何都可能是定制开发。

【讨论】:

    【解决方案2】:

    您需要硬件来支持它。我发现 Gwentech 的 GT1026 适用于 can bus to android,但它仅适用于使用 USB 的 Android。

    【讨论】:

      猜你喜欢
      • 2013-02-17
      • 2011-07-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-17
      • 2022-10-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多