Other Parts Discussed in Thread:C2000WARE
自己在把CAN寄存器封装成结构体
修改例程时发现,很多的操作是在操作无效区域??
例如
CAN_IF1CMD 32位 占用0x100 和0x101,CAN_IF1MSK 32位占用0x104 和0x105
0x103 和0x104 未使用,但是在历程中却在使用
HWREGH(ui32Base + CAN_O_IF1CMD + 2) = CAN_IF1CMD_CLRINTPND >> 16;
其他也有就不举例了,请问怎么回事???
user6378804:
看了下手册 CAN_IF1CMD0x100hClrIntPnd 位的说明
1 (Direction = Read): Clears IntPnd bit in the message object.
1 (Direction = Write): This bit is ignored.是100h和102h都是cmd的一个是写入方向一个是读取方向嘛??
某些操作需要在写入方向操作,有些操作需要在读取方向操作??
,
Susan Yang:
user6378804 说:一个是写入方向 一个是读取方向嘛??
是的
user6378804 说:某些操作需要在写入方向操作,有些操作需要在读取方向操作??
是的,您的理解是正确的。建议您参考下 C2000Ware下的can bitfields例程,比较方便理解
C2000Ware_3_04_00_00\device_support\f2837xd\examples\cpu1\can_loopback_bitfields
,
user6378804:
您好,我刚刚看了C2000Ware_3_04_00_00\device_support\f2837xd\headers\include下的F2837xD_can.h和spruhm8i.pdf28377d寄存器手册不对应呀。手册上面CAN_CTL 是0x00CAN_ES是0x04CAN_ERRC是0x08都是32位,中间有2字节是未使用的 ,,而头文件结构体的数据是32位,相邻的??? 您方便的话看看。
,
Susan Yang:
您可以连接上板子具体看一下
,
user6378804:
CAN和USB使用了特殊的寻找方式。
,
Susan Yang:
图片上传失败。请您点击右下角“使用高级编辑器编辑文本”以附件形式上传图片,谢谢
,
user6378804:
,
Susan Yang:
谢谢您的反馈!