[CAN-bus/DeviceNet] 大家好,有关CAN的一些问题!

[复制链接]
2770|6
 楼主| sixgett 发表于 2012-5-4 16:54 | 显示全部楼层 |阅读模式
我用stm32上边的CAN控制器进行通信,我想问问就是这个是怎么通信的,在上位机和stm32之间采用PC82C250进行连接,我用stm32的ADC采集回来的数据放在对应的存储器中,存贮器的地址0x4001244C,假如说采集转换了10个ADC的值,产生了20个二进制的数,我们现在存到首地址为0x4001244C的数据寄存器中,然后要用stm32和上位机进行数据通信,这个是怎么通信呢?关于这个存在ADC寄存器中的数据时怎么弄到stm32的发送邮箱寄存器的呢?而且转换为的二进制是12位的,这就要用到发送邮箱的高/低数据寄存器。还有就是我只是用stm32板子上的adc1,只用八路模拟通道,对于这个can总线的ID是怎么分配的啊??看书上边说ID是在标识符中定义的,也就是逻辑地址和优先级都要出现在11bits中,是不是我直接将上述转换完的ADC的数据寄存器地址写进11为标准标识符里边去呢?对应的11bits前八位就写成4001244c,然后再定义优先级,所谓的ID也就是这个吧?还是有什么别的说法?大家们好好帮我看看吧!
 楼主| sixgett 发表于 2012-5-4 17:31 | 显示全部楼层
木有侠士么?帮我看看哦!
 楼主| sixgett 发表于 2012-5-5 14:45 | 显示全部楼层
。。。。
nextkey 发表于 2012-5-5 17:41 | 显示全部楼层
建议看下CAN的标准,搞清CAN的ID是什么?
每包CAN可传8字节数据;另你的上位机是什么,应该也是一个CAN设备吧,双CAN对接?
lifangying 发表于 2012-5-5 17:57 | 显示全部楼层
ID类似于485通信中的地址。分为两种,一为11位,一为29位;数据在1-8字节之间可设。
 楼主| sixgett 发表于 2012-5-7 10:49 | 显示全部楼层
我的上位机也是CAN设备,我就想知道,这个STM32ADC采集回来的数据被存到ADC_dr中,然后要实现CAN的通讯,can通讯就是要将采集得到的数字量传送到上位机,这个数字量是12位二进制,怎么传送呢?要怎么操作啊?
青山电子 发表于 2012-5-12 07:18 | 显示全部楼层
id可以自己定义的,类似IP地址。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:默默努力,来之不易!

0

主题

214

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部