查看: 2413|回复: 3

mc9s08qe32的IIC busy问题(已解决)

[复制链接]

该用户从未签到

9

主题

23

帖子

0

注册会员

Rank: 2

积分
59
最后登录
1970-1-1
发表于 2013-8-20 06:24:18 | 显示全部楼层 |阅读模式
 我在用QE32的时候,将IIC初始化后,IICS_BUSY位一直被置一。我换了一块板子,上电后有时也会被置一,有时又不会,但只要正常能跑起来了以后就不会出问题了,请问这是怎么回事呢?
IIC有4.7K上拉电阻,测量了线路焊接也没问题。
回复

使用道具 举报

该用户从未签到

3

主题

18

帖子

0

注册会员

Rank: 2

积分
90
最后登录
1970-1-1
发表于 2013-8-20 13:41:26 | 显示全部楼层

RE:mc9s08qe32的IIC busy问题(正解)

qe32是作主还作从?确保上电的时候,别的IIC芯片不要影响IIC总线。
下面是我以前用的IIC 初始化程序,在最后发了一个start 再发一个stop, 把总线复位。请参考。
void Init_IIC(void)
{
/* ### Init_IIC init code */
/* IICC2: GCAEN=0,ADEXT=0,AD10=0,AD9=0,AD8=0 */
IICC2 = 0x00U;
/* IICA: AD7=0,AD6=0,AD5=0,AD4=0,AD3=0,AD2=0,AD1=0 */
IICA = 0x00U;
/* IICF: MULT1=0,MULT0=1,ICR5=0,ICR4=0,ICR3=0,ICR2=0,ICR1=0,ICR0=0 */
IICF = 0x40U;
/* IICS: TCF=1,IAAS=0,BUSY=0,ARBL=1,SRW=0,IICIF=1,RXAK=0 */
IICS = 0x92U; /* Clear the interrupt flags */
/* IICC1: IICEN=1,IICIE=0,MST=0,TX=1,TXAK=0,RSTA=0 */
IICC1 = 0x80U;
/* Reset 24c02 */
i2c_start_condition();
i2c_stop_condition();
回复 支持 反对

使用道具 举报

该用户从未签到

9

主题

23

帖子

0

注册会员

Rank: 2

积分
59
最后登录
1970-1-1
 楼主| 发表于 2013-8-23 15:43:40 | 显示全部楼层

RE:mc9s08qe32的IIC busy问题

谢谢楼上的回复!
我在配置IIC时先把SCL与SDA管脚配置成输出口就好了……
回复 支持 反对

使用道具 举报

该用户从未签到

85

主题

790

帖子

0

金牌会员

Rank: 6Rank: 6

积分
2279
最后登录
1970-1-1
发表于 2013-8-26 10:58:33 | 显示全部楼层

RE:mc9s08qe32的IIC busy问题

好的,感谢你对飞思卡尔产品的关注。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-9-17 12:16 , Processed in 0.176685 second(s), 21 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表