📄 twi._h
字号:
#ifndef _TWI_H_
#define _TWI_H_
/*******主状态定义*******/
#define START 0X08
#define TWI_REP_START 0X10
#define TWI_ARB_LOST 0X38
/********* 写状态定义*************/
#define SLA_W_ACK 0X18
#define SLA_W_NACK 0X20
#define DATA_W_ACK 0X28
#define DATA_W_NACK 0X30
/********读状态定义********/
#define SLA_R_ACK 0X40
#define SLA_R_NACK 0X48
#define DATA_R_ACK 0X50
#define DATA_R_NACK 0X58
#define Start() (TWCR=(1<<TWINT)|(1<<TWSTA)|(1<<TWEN)) //产生START信号
#define Stop() (TWCR=(1<<TWINT)|(1<<TWSTO)|(1<<TWEN)) //产生STOP信号
#define Wait() while(!(TWCR&(1<<TWINT))) //等待当前操作完成
#define TestACK() (TWSR&0xF8) //取出状态码
#define SetACK() (TWCR|=(1<<TWEA)) //产生ACK
#define Writebyte(twi_d) {TWDR=(twi_d);TWCR=(1<<TWINT)|(1<<TWEN);} //发送一个字节(twi_d为写入的数据)
#define Readbyte(twi_d) {twi_d=TWDR;TWCR=(1<<TWINT)|(1<<TWEN);}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -