单片机应用开发 IIC应答方式 6-1-4 IIC总线四.pptVIP

  • 6
  • 0
  • 约1.81千字
  • 约 10页
  • 2020-08-29 发布于北京
  • 举报

单片机应用开发 IIC应答方式 6-1-4 IIC总线四.ppt

Application and Development of Microcontroller 《单片机应用开发》课程 主讲教师 刘德新 移动通信技术专业教学资源库 深圳信息职业技术学院电子与通信学院 I2C总线的应用 ( 四) 目录 01 E2PROM的程序 1.E2PROM的程序------开始与结束 EDITED BY LIU DEXIN * 单片机应用开发 void Start() { SDA=1; SCL=1; _nop_( ); _nop_( ); SDA=0; _nop_( ); _nop_( ); SCL=0; } void Stop() { SCL=0; SDA=0; _nop_( ); _nop_( ); SCL=1; _nop_( ); _nop_( ); SDA=1; } 1.E2PROM的程序------主机应答格式 EDITED BY LIU DEXIN * 单片机应用开发 void Ack() { SDA=0; SCL=1; _nop_( ); _nop_( ); SCL=0; SDA=1; } 1.E2PROM的程序------从机应答主机检测格式 EDITED BY LIU DEXIN * 单片机应用开发 bit TestAck() { bit ErrorBit; SDA=1; SCL=1; _nop_( ); _nop_( ); _nop_( ); _nop_( ); ErrorBit=SDA; SCL=0; return(ErrorBit); } 1.E2PROM的程序------非应答格式 EDITED BY LIU DEXIN * 单片机应用开发 void NoAck() { SDA=1; SCL=1; _nop_( ); _nop_( ); SCL=0; } 1.E2PROM的程序------写一个字节 EDITED BY LIU DEXIN * 单片机应用开发 void Write8Bit(unsigned char input) { unsigned char temp; for(temp=8;temp!=0;temp--) { SDA=(bit)(input0x80); SCL=1; _nop_( ); _nop_( ); SCL=0; input=input1; } } 1.E2PROM的程序------读一个字节 EDITED BY LIU DEXIN * 单片机应用开发 unsigned char Read8Bit(void) { unsigned char temp,rbyte=0; for(temp=8;temp!=0;temp--) { SCL=1; rbyte=rbyte1; rbyte=rbyte|((unsigned char)(SDA)); SCL=0; } return(rbyte); } 小结与思考 EDITED BY LIU DEXIIN * 单片机应用开发 怎样完成E2PPROM读写的开始和结束? E2PROM的ACK和No ACK有什么区别? E2PROM读写程序有什么区别? 谢 谢 主讲教师 刘德新 移动通信技术专业教学资源库 深圳信息职业技术学院电子与通信学院

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档