MSP430F5529 硬件IIC通信 SCL引脚输出为低电平?

[复制链接]
6419|45
 楼主| rui199009 发表于 2015-5-28 10:31 | 显示全部楼层
dirtwillfly 发表于 2015-5-28 09:09
把adxl345硬件拆掉后,重新试试

没有看到您的回复。
luofeng2g 发表于 2015-5-28 10:48 | 显示全部楼层
rui199009 发表于 2015-5-28 09:17
恩,是的,示波器测不到信号。

这个mcu有没有其他的i2c模块?可以试试其他是否正常
 楼主| rui199009 发表于 2015-5-28 11:05 | 显示全部楼层
luofeng2g 发表于 2015-5-28 10:48
这个mcu有没有其他的i2c模块?可以试试其他是否正常

MSP430F5529一共有两个IIC,分别是UCB0和UCB1两个,这两个IIC分别和SPI0和SPI1的SDA和SCL复用引脚。但是测试之后在发送模式下,还是没有时钟信号。从官方数据手册的来看应该设置为外设模式就应该可以使用IIC了,不知道是不是还有什么没有配置。
西门扫雪 发表于 2015-5-28 11:43 | 显示全部楼层
楼主,官方代码从哪里能下载呢?
 楼主| rui199009 发表于 2015-5-28 11:53 | 显示全部楼层
F5529的官方代码,希望网友给力。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
luofeng2g 发表于 2015-5-28 12:14 | 显示全部楼层
rui199009 发表于 2015-5-28 11:05
MSP430F5529一共有两个IIC,分别是UCB0和UCB1两个,这两个IIC分别和SPI0和SPI1的SDA和SCL复用引脚。但是 ...

两个模块都不行?那估计是你程序有问题
追逐浪花 发表于 2015-5-28 13:23 | 显示全部楼层
rui199009 发表于 2015-5-28 11:53
F5529的官方代码,希望网友给力。

那2410这些代码去哪里下载呢?
lvyunhua 发表于 2015-5-28 13:44 | 显示全部楼层
引脚接对了没有啊,引脚有没有上拉电阻。
dirtwillfly 发表于 2015-5-28 14:12 | 显示全部楼层
西门扫雪 发表于 2015-5-28 11:43
楼主,官方代码从哪里能下载呢?

430ware里就有
 楼主| rui199009 发表于 2015-5-28 16:52 | 显示全部楼层
luofeng2g 发表于 2015-5-28 12:14
两个模块都不行?那估计是你程序有问题

暂时找到了问题,mspf5529需要和adxl连接在一起才行。看起来应该是由adxl把5529的scl和sda拉高,才能是的scl和sda有信号。
 楼主| rui199009 发表于 2015-5-28 16:53 | 显示全部楼层
追逐浪花 发表于 2015-5-28 13:23
那2410这些代码去哪里下载呢?

抱歉这个没有代码没有。
 楼主| rui199009 发表于 2015-5-28 16:54 | 显示全部楼层
lvyunhua 发表于 2015-5-28 13:44
引脚接对了没有啊,引脚有没有上拉电阻。

引脚是对的,现在找到问题了,需要adxl给5529的scl和sda上拉才能用示波器看到信号。但是返回的数据不对,正在修改中。
lvyunhua 发表于 2015-5-28 18:36 | 显示全部楼层
器件读写地址正确吗》?
玛尼玛尼哄 发表于 2015-5-30 10:21 | 显示全部楼层
UCB0CTL1 |= UCTXSTT;                    // I2C start condition
    while(UCB0CTL1 & UCTXSTT);              // Start condition sent?
    UCB0CTL1 |= UCTXSTP;                    // I2C stop condition
IIC这个发送接收很好用,不知道挂很多设备时候怎么做。
 楼主| rui199009 发表于 2015-6-2 20:52 | 显示全部楼层
lvyunhua 发表于 2015-5-28 18:36
器件读写地址正确吗》?

嗯对的,我模拟IIC时写的就是这个。现在就先用模拟来做了。
 楼主| rui199009 发表于 2015-6-2 20:53 | 显示全部楼层
玛尼玛尼哄 发表于 2015-5-30 10:21
UCB0CTL1 |= UCTXSTT;                    // I2C start condition
    while(UCB0CTL1 & UCTXSTT);       ...

不同设备的器件地址应该是不一样的,同一种设备接多个就不太清楚了。
Thor9 发表于 2015-6-7 20:51 | 显示全部楼层
学习了
玛尼玛尼哄 发表于 2015-6-15 14:04 | 显示全部楼层
好多协议都是接一个比较好搞,接多个,就麻烦了,还要考虑各种算法。
angerbird 发表于 2015-6-15 19:37 | 显示全部楼层
// USCI_B0 Data ISR
#if defined(__TI_COMPILER_VERSION__) || defined(__IAR_SYSTEMS_ICC__)
#pragma vector = USCI_B0_VECTOR
__interrupt void USCI_B0_ISR(void)
#elif defined(__GNUC__)
void __attribute__ ((interrupt(USCI_B0_VECTOR))) USCI_B0_ISR (void)
#else
#error Compiler not supported!
#endif

请教高手程序中往往有这样的定义的是什么意思的?
tongbu2015 发表于 2015-6-20 14:47 | 显示全部楼层
rui199009 发表于 2015-5-27 15:58
官方代码
//******************************************************************************
//  MSP430 ...

这个程序需要多研究下的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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