Avem/libs/include/i2c.h

34 lines
582 B
C
Raw Normal View History

2016-08-10 23:43:20 +08:00
2016-11-20 16:05:16 +08:00
#ifndef I2C_H
#define I2C_H
2016-08-10 23:43:20 +08:00
2016-09-24 21:31:38 +08:00
#define SCL_PINNUM 15
2016-11-29 16:03:17 +08:00
#define SDA_PINNUM 14
2016-09-24 21:31:38 +08:00
#define SCL BIT_ADDR((GPIOB_BASE+12), SCL_PINNUM)
#define SDA BIT_ADDR((GPIOB_BASE+12), SDA_PINNUM)
//#define AD0 BIT_ADDR((GPIOC_BASE+12), 6)
2016-08-10 23:43:20 +08:00
#define GPIOB_IDR_Addr (GPIOB_BASE + 8)
2016-09-24 21:31:38 +08:00
#define READ_SDA BIT_ADDR(GPIOB_IDR_Addr, SDA_PINNUM)
2016-08-10 23:43:20 +08:00
#define IIC_DELAY() {delay_us(1);}
void delay_us(volatile unsigned int nus);
void IIC_init();
void IIC_Start();
void IIC_Stop();
void IIC_Ack(unsigned char ack);
unsigned char IIC_Wait_Ack();
void IIC_Send(unsigned char dat);
unsigned char IIC_Read();
#endif