1664|0

2015

帖子

0

TA的资源

纯净的硅(中级)

楼主
 

c2000 I2C读取寄存器帧格式参考例程 [复制链接]

8位Byte的读方法可以参考以下代码:

  1. unsigned char I2C_Read_Byte(void)  
  2. {  
  3.     int t,rxData;  
  4.     unsigned char receive;  
  5.     SDA_Input();  
  6.     for(t=0;t<8;t++)  
  7.     {  
  8.         SCL_Low();   // Clear the SCL  
  9.         Delay(I2CDelay);  
  10.          SCL_High();   // Set the SCL  
  11.          receive<<=1;  
  12.          rxData = SDA_Data_Register ;  
  13.          if(rxData)  
  14.          {  
  15.              receive++;  
  16.          }  
  17.          Delay(I2CDelay);  
  18.      }  
  19.      return receive; 
  20. }

          寄存器的读方法可以参考以下代码:

 

  1. unsigned char I2C_Read_Register(unsigned char Device_Write,unsigned char Device_Read, unsigned char Register)  
  2. {  
  3.     unsigned char ReadData;  
  4.     I2C_Start();  
  5.     I2C_Send_Byte(Device_Write); //Send the device address  
  6.     I2C_Wait_Ack();             //Wait for the ack signal  
  7.     I2C_Send_Byte(Register);    //Send the register address  
  8.     I2C_Wait_Ack();             //Wait for the ack signal  
  9.     I2C_Start();  
  10.     I2C_Send_Byte(Device_Read); //Send register value  
  11.     I2C_Wait_Ack();  
  12.     SDA_High();                  // Set the SDA  
  13.     ReadData = I2C_Read_Byte();  
  14.     I2C_NAck();  
  15.     Delay(1);  
  16.     I2C_Finish();  
  17.     return ReadData; 
  18. }  
 
点赞 关注

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表
  缈昏瘧锛