?? twi._c
字號:
/************************************************
文件:TWI.c
用途:TWI操作函數
注意:
創建:2008.1.26
修改:2008.1.26
Copy Right (c) www.avrvi.com AVR與虛擬儀器
************************************************/
#include "..\config.h"
/*************************************************************************
** 函數名稱: i2cstart(void)
** 功能描述: i2c通信開始
** 輸 入:
** 輸出 :
** 全局變量: 無
** 調用模塊:
** 說明:
** 注意:
**************************************************************************/
void i2cstart(void)
{
TWCR = (1<<TWINT) | (1<<TWSTA) | (1<<TWEN);
while (!(TWCR & (1<<TWINT)));
}
/*************************************************************************
** 函數名稱: unsigned char i2cwt(unsigned char data)
** 功能描述: i2c寫數據,返回TWI狀態
** 輸 入:
** 輸 出: TWI狀態
** 全局變量: 無
** 調用模塊:
** 說明:
** 注意:
**************************************************************************/
unsigned char i2cwt(unsigned char data)
{
TWDR = data;
TWCR = (1<<TWINT) | (1<<TWEN);
while (!(TWCR & (1<<TWINT)));
_NOP();
return(TWSR&0b11111000);
}
/*************************************************************************
** 函數名稱: unsigned char i2crd(void)
** 功能描述: i2c讀數據
** 輸 入:
** 輸出 : 讀取的數據
** 全局變量: 無
** 調用模塊:
** 說明:
** 注意:
**************************************************************************/
unsigned char i2crd(void)
{
TWCR= (1<<TWINT) | (1<<TWEA) | (1<<TWEN);
while (!(TWCR & (1<<TWINT)));
return(TWDR);
}
/*************************************************************************
** 函數名稱: i2cstop(void)
** 功能描述: i2c停止
** 輸 入:
** 輸出 :
** 全局變量: 無
** 調用模塊:
** 說明:
** 注意:
**************************************************************************/
void i2cstop(void)
{
TWCR = (1<<TWINT) | (1<<TWSTO) | (1<<TWEN);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -