TI中文支持网
TI专业的中文技术问题搜集分享网站

hw_types.h的HWREGB宏

ccs debug时,发现宏HWREGB()的作用类似指向char(8-bit)类型的指针,我尝试将该宏替换成(*(volatile unsigned char *)(address)),但从debug结果来看,该修改并未成功(以16-bit进行访问),请问这需要在某些文件定义数据类型吗?

Yale Li:

Hi JIANG HAO,

这个定义本身就是16bits吧?

,

JIANG HAO:

我在debug时,通过观察register(IF1DATA)发现这个宏是按照8bit访问的,这也符合CAN数据包中数据长度(1~8byte)。具体现象表现为:当IF1DATA的offset为0时,往该寄存器的第0个byte写入数据;当IF1DATA的offset为1时,往该寄存器的第1个byte写入数据。读的过程和写类似

,

JIANG HAO:

该宏出现在can.h的CAN_writeDataReg()函数和CAN_readDataReg()函数中

赞(0)
未经允许不得转载:TI中文支持网 » hw_types.h的HWREGB宏
分享到: 更多 (0)