资源简介
51单片机的I2C模拟通信驱动
void I2CStart();//开始
void I2CStop();//停止
bit I2CWrite(uint8 date);//写操作
uint8 I2CReadNAK();//读操作NACK
uint8 I2CReadACK();//读操作ACK

代码片段和文件信息
#include “I2C.h“
#define I2CDelay() {_nop_();_nop_();_nop_();_nop_();}
void I2CStart()
{
I2C_SCL = 1;
I2C_SDA = 1;
I2CDelay();
I2C_SDA = 0;
I2CDelay();
I2C_SCL = 0;
}
void I2CStop()
{
I2C_SCL = 0;
I2C_SDA = 0;
I2CDelay();
I2C_SCL = 1;
I2CDelay();
I2C_SDA = 1;
I2CDelay();
}
bit I2CWrite(uint8 date)
{
uint8 mark;
bit ack;
for(mark = 0x80;mark != 0;mark >>=1)
{
if((mark&date)==0)
I2C_SDA = 0;
else
I2C_SDA = 1;
I2CDelay();
I2C_SCL = 1;
I2CDelay();
I2C_SCL = 0;
}
I2C_SDA = 1;
I2CDelay();
I2C_SCL = 1;
ack = I2C_SDA;
I2CDelay();
I2C_SCL = 0;
return (~ack);
}
uint8 I2CReadNAK()
{
uint8 mask;
uint8 dat;
I2C_SDA = 1;
for(mask = 0x80;mask != 0;mask >>= 1)
{
I2CDelay();
I2C_SCL = 1;
if(I2C_SDA == 0)
dat &= ~mask;
else
dat |= mask;
I2CDelay();
I2C_SCL = 0;
}
I2C_SDA = 1;
I2CDelay();
I2C_SCL = 1;
I2CDelay();
I2C_SCL = 0;
return dat;
}
uint8 I2CReadACK()
{
uint8 mask;
uint8 dat;
I2C_SDA = 1;
for(mask = 0x80;mask != 0;mask >>= 1)
{
I2CDelay();
I2C_SCL = 1;
if(I2C_SDA == 0)
dat &= (~mask);
else
dat |= mask;
I2CDelay();
I2C_SCL = 0;
}
I2C_SDA = 0;
I2CDelay();
I2C_SCL = 1;
I2CDelay();
I2C_SCL = 0;
return dat;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1327 2014-11-09 12:29 I2C.c
文件 267 2014-11-07 16:48 I2C.h
文件 115 2014-11-07 16:48 driver.h
----------- --------- ---------- ----- ----
1709 3
- 上一篇:Qt通过线性插值和矢量线性插值实现图形动画
- 下一篇:短信敏感词检测工具
相关资源
- 51单片机通信采样proteus仿真方波转化
- 基于MCS_51单片机的工业屏柜散热方案
- MCS_51单片机与8255A的接口设计
- 51单片机PWM程序,占空比、周期可调整
- 51单片机多功能自行车测速仪
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 51单片机基于protues的几个仿真实例
- 51单片机PCB设计图
- PC -- 单片机的串口数据传输系统设计
- 51单片机控制舵机程序
- 51单片机读取温度数据存储到SD卡中并
- 【单片机】51单片机数码管显示万年历
- C51单片机汇编指令查询、学习工具集
- 基于8051单片机的红外接收程序
- 51单片机频率计(很简单)
- 基于51单片机的智能温控器
- 基于51单片机的16*16点阵动态显示
- 基于51单片机的模数转换与数模转换
- 51单片机中使用ucos ii的优缺点转
- 51单片机中使用ucos ii的优缺点
- 8051单片机教程第二十七课:单片机几
- 8051单片机教程第二十六课:矩阵式键
- 适用于STC单片机和51单片机的SX1262驱动
- 基于51单片机的计算器(C51编写,有
- 51单片机大量源码
- 基于51单片机的交通信号灯程序
- GSM监控系统51单片机设计
- 51单片机定时器/计数器的结构和原理
评论
共有 条评论