主题中讨论的其他器件:HALCOGEN
大家好、我创建了一个简单的程序来向温度传感器发送消息(我现在不使用 I2C2端口进行确认):
CCS 7.0.0.00042
HALCoGen 04.07.01
void start (void){
unsigned char data[8];
unsigned slave_address;
SLAVE_ADDRESS = 0x48;
unsigned char num_Bytes = 1;
unsigned char num_count = 1;
unsigned char 修饰符= 0x80;
unsigned char set_stop = 1;
sciInit();
i2cInit();
i2cSetOwnAdd (i2cREG1、1);//自有地址
i2cSetSlaveAdd (i2cREG1、SLAVE_ADDRESS);//从地址
i2cSetOwnAdd (i2cREG2、2);//自有地址
i2cSetSlaveAdd (i2cREG2、1);//从地址
操作
{
sciReceive (sciREG1、1、data);//轮询要接收的命令
DATA[0]= DATA[0]|修饰符;
i2cSetCount (i2cREG1、num_count);
i2cSetStart (i2cREG1);
i2cSend (i2cREG1、num_Bytes、data);
如果(SET_STOP = 1) i2cSetStop (i2cREG1);
i2cSetMode (i2cREG1、I2C_MASTER);
}
while (true);
}//结束 main()
这些调用可能不完全符合用户指南、但这是我获得可重复操作的唯一方法。
在初始化值的情况下、我可以通过键盘条目重复发送单字节消息(当传感器命令需要时)。
如果我使用 debug 将 num_Bytes 和 num_count 修改为3、我可以为3字节消息发送一个正确命令字节的字符串-这是将 SET_STOP 设置为1或0的情况。
它似乎已正确终止、但与单命令模式不同、我无法在两行中获得任何进一步命令的活动。
感谢您的任何建议。
谢谢