- IIC功能脚切换寄存器
- IIC配置寄存器
MSSPEED[6:1]:IIC总线速度(等待时钟数)
- IIC主机控制寄存器
- 示例代码
#include "STC8.h"
#include "intrins.h"
#define obSDA =P14;
#define obSCL =P15;
#define OBIIC_Wait() while(!(I2CMSST&0x40));\
I2CMSST &= ~0x40
#define OBIIC_Start() I2CMSCR = 0x01; OBIIC_Wait()
#define OBIIC_SendData(Data) I2CTXD = Data; I2CMSCR > = 0x02; OBIIC_Wait()
#define OBIIC_RecvACK() I2CMSCR = 0x03;OBIIC_Wait()
#define OBIIC_SendACK() I2CMSST = 0x00;I2CMSCR = 0x05;OBIIC_Wait()
#define OBIIC_SendNAK() I2CMSST = 0x01;I2CMSCR = 0x05;OBIIC_Wait()
#define OBIIC_Stop() I2CMSCR = 0x06;OBIIC_Wait()
void delay();
extern char OBIIC_RecvData();
在main函数里配置寄存器以启用硬件IIC (iic功能脚可以自己设置,并将P_SW2的最高位置1)
P_SW2=0xb0;
I2CCFG=0xe0;
I2CMSST=0x00;
实例代码下载(暂不提供外网下载)
内网高速下载