打印

NXP2103的I2C模块为何不正常?

[复制链接]
1319|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ningling_21|  楼主 | 2012-2-8 22:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
I2c, NXP, ST, se, pc
初始化NXP2103的I2C模块,程序如下:

uchar  Init_i2c(void)
{
    uchar i2c_stat;
       i2c_stat=4;
       I2C0CONSET =0X40;        //使能为主发送器模式
       I2C0CONCLR =0X2C;
       I2C0SCLL    =(F_pclk/fi2c+1)/2;
       I2C0SCLH    =(F_pclk/fi2c)/2;   
      
       while((I2C0STAT&0x08)==0x00);  //等待中断
      
       I2C0DAT =0Xa0;
       I2C0CONSET &=~0x08;            //清除中断标志位
       //开始发送数据
      
       i2c_stat=0;
       if(I2C0STAT==0x18)
       {
          i2c_stat=1;
       }
       else if(I2C0STAT==0x20)
       {
          i2c_stat=2;
       }
       else if(I2C0STAT==0x38)
       {
          i2c_stat=3;
       }
       else if(I2C0STAT==0xf8)
       {
          i2c_stat=4;
       }
       return i2c_stat;
}

结果:I2C0STAT的值总是0XF8,这是为何?

相关帖子

沙发
jjjyufan| | 2012-2-9 17:43 | 只看该作者
先查下上拉电阻 用的多大阻值?

使用特权

评论回复
板凳
ningling_21|  楼主 | 2012-2-10 11:21 | 只看该作者
用的是5.1K的上拉电阻

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5013

主题

17741

帖子

51

粉丝