⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 668si2c.h

📁 I2C总线模拟方式,位方式,字节方式的asm和C代码
💻 H
字号:
/*
从方式的668硬件I2C,文件名668SI2C.C
使用:使用前要先开中断:总中断EA和I2C中断ES1,其中断入口地址为2BH;
      若是从接收,则循环调用RcvByte()接收字节数据,直至总线结束/重启;
      若是从发送,则循环调用SendByte()发送数据,直至接收到非应答信号;
      为了防止从器件因总线出错而死机,可用定时器实现超时处理。
*/

/*当状态字S1STA为0X60时,是总线对从器件写操作;若为0XA8则是对从器件读操作*/
#define WRSLA    0X60   
#define RDSLA    0XA8

/***************************************************************** 
              设置总线  
函数原型:  void SetBus(unsigned char addr)              
描述:用于设置I2C控制寄存器,包括总线时钟速率及从地址.
      从地址为addr,不接受广播地址.
*****************************************************************/      
 extern  void SetBus(unsigned char addr);






/***************************************************************
                 发送字节数据
函数原型:bit  SendByte(uchar c)
描述:向总线发送数据c,当接收到非应答位时返回0,否则返回1;
***************************************************************/
 extern  bit SendByte(unsigned char c);
 
 
 
 

/***************************************************************
                 接收字节数据
函数原型:bit  RcvByte(uchar *c)
描述:读取总线传来的字节数据并发送应答位,正常接收返回1(此时读入的
数据写入变量c),接收到总线结束信号或重新启动总线信号时返回0(此时不
破坏变量c的数据)。
***************************************************************/ 
 extern  bit RcvByte(unsigned char *c);



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -