新唐M0求教,I2C从机调不通,需要注意什么?

[复制链接]
3914|5
 楼主| QQisLitter 发表于 2012-1-9 20:00 | 显示全部楼层 |阅读模式
新唐M0求教,I2C从机调不通,特此请教高手,需要注意什么?
forgot 发表于 2012-1-9 20:57 | 显示全部楼层
注意模式还有应答
czdo 发表于 2012-1-9 21:16 | 显示全部楼层
啥情况???楼主能说的详细一点吗?
hsbjb 发表于 2012-1-9 21:43 | 显示全部楼层
什么现象
Ryanhsiung 发表于 2012-1-10 08:36 | 显示全部楼层
LZ为什么调不通就不知道了,以下是我的经验
1、要打开IO相应外设功能,若不打开肯定是不能正常工作
  1. DrvGPIO_InitFunction(E_FUNC_I2C0);       


2、设置地址
    这个要特别注意了,新唐所代表的地址是不含W//R位的。
    例如正常EEPROM中地址为0XA0,我们要设置的地址要设置0X50
  1. DrvI2C_SetAddress( I2C_PORT0,0,Device_Addr>>1,0 );                                            // 设置I2C 地址1,并将广播命令关闭




3、设置为从机模式
  1. DrvI2C_Ctrl(I2C_PORT0, 0, 0, 0, 1);                                                                                               


4、打开I2C功能模块
  1. DrvI2C_EnableInt(I2C_PORT0);                                                                                                                                // 使能I2C_PORT       


5、使能中断
  1. DrvI2C_InstallCallback(I2C_PORT0, I2CFUNC, S_I2C_Callback_Slave);



按我的试一下看看。

本帖子中包含更多资源

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

×
 楼主| QQisLitter 发表于 2012-1-10 10:12 | 显示全部楼层
谢谢LS,地址错了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

20

帖子

0

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