问答

汇集网友智慧,解决技术难题

21ic问答首页 - 多个相同的产品模块用lin通信,如何区分id?

LIN通信 TMS TMS320 tms320f28 tms320f28035

多个相同的产品模块用lin通信,如何区分id?

070315292021-01-21
我在做一个非汽车电子的产品应用,用的TMS320F28035
其结构是一个主控下面挂载了16个 相同的产品模块。产品通信方式我选择了lin通信协议。
有一个问题是,当模块组装时候如何给这16个模块设置不同的id,我想过在模块上加拨码开关,但这样操作太麻烦,要拆壳子。有没有什么好的方式。
有经验的朋友给个建议,提前感谢
回答 +关注 17
1497人浏览 4人回答问题 分享 举报
4 个回答
  • 791314247 发表于 2021-1-22 14:35
    不动硬件的话就从软件方面入手,每个模块设定一个固定地址,通讯的时候先握手确定地址 ...

    有考虑,还需要细节考虑
  • chunyang 发表于 2021-1-22 17:17
    在软件写入时分配一个唯一ID,然后根据ID分配地址。用硬件拨码最简单,但成本高,纯软件方式成本低,但麻烦 ...

    我一直找不到更好的方式,
    我假设有这么一种情况,就是在维修时候,如果坏了一个,比如10号,坏掉了,那就必须新的模块id还得是10号,否则会引起来错误,如果不考虑硬件造作的不方便,只能在软件上做判断处理了,但具体的方式我还没有落实到细节
    chunyang 2021-1-26 16:15 回复TA
    另外一个相对简单一些的办法是做一台手持式配置设备,人工给新设备分配ID,通过专门的内部接口或通过通讯接口用专门的指令实现。 
    chunyang 2021-1-26 16:13 回复TA
    如果不嫌麻烦,可以用自动匹配算法,根据ID和协议来自动分配,只是分配算法有一定难度,有不少工艺细节需考虑。 
  • 在软件写入时分配一个唯一ID,然后根据ID分配地址。用硬件拨码最简单,但成本高,纯软件方式成本低,但麻烦。
  • 不动硬件的话就从软件方面入手,每个模块设定一个固定地址,通讯的时候先握手确定地址

您需要登录后才可以回复 登录 | 注册