亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ic.c

?? IC 讀寫功能 代碼僅供參照 針對加密卡的功能讀寫程序
?? C
字號:
    #include "I2C.h"

void I2C_Initial( void )
{
    P1DIR |= BIT2;		//將SCL管腳(P1.2)設置為輸出管腳
    I2C_Set_sck_low();
    I2C_STOP();
    Delay_ms(10);
    return;
}
void I2C_Set_sda_high( void )
{
    P1DIR |= SDA;		//將SDA設置為輸出模式
    P1OUT |= SDA;		//SDA管腳輸出為高電平

    _NOP();
    _NOP();
    return;
}
void I2C_Set_sda_low ( void )
{
    P1DIR |= SDA;		//將SDA設置為輸出模式
    P1OUT &= ~(SDA);		//SDA管腳輸出為低電平

    _NOP();
    _NOP();
    return;
}
void I2C_Set_sck_high( void )
{
    P1DIR |= SCL;		//將SCL設置為輸出模式
    P1OUT |= SCL;		//SCL管腳輸出為高電平

    _NOP();
    _NOP();
    return;
}
void I2C_Set_sck_low ( void )
{
    P1DIR |= SCL;		//將SCL設置為輸出模式
    P1OUT &= ~(SCL);		//SCL管腳輸出為低電平

    _NOP();
    _NOP();
    return;
}
int  I2C_GetACK(void)
{
    int nTemp = 0;
    int j;

    _NOP();
    _NOP();
    I2C_Set_sck_low();
    for(j = 30;j > 0;j--);
    P1DIR &= ~(SDA);		//將SDA設置為輸入方向
    //I2C_Set_sda_high();
    I2C_Set_sck_high();

    for(j = 30;j > 0;j--);
    nTemp = (int)(P1IN & SDA);	//獲得數據

    I2C_Set_sck_low();

    return (nTemp & SDA);
}
void I2C_SetACK(void)
{
    I2C_Set_sck_low();
    I2C_Set_sda_low();
    I2C_Set_sck_high();
    I2C_Set_sck_low();
    return;
}
void I2C_SetNAk(void)
{
    I2C_Set_sck_low();
    I2C_Set_sda_high();
    I2C_Set_sck_high();
    I2C_Set_sck_low();
    return;
}
void I2C_START(void)
{
    int i;

    I2C_Set_sda_high();
    for(i = 5;i > 0;i--);
    I2C_Set_sck_high();
    for(i = 5;i > 0;i--);
    I2C_Set_sda_low();
    for(i = 5;i > 0;i--);
    I2C_Set_sck_low();
    return;
}
void I2C_STOP(void)
{
    int i;

    I2C_Set_sda_low();
    for(i = 5;i > 0;i--);
    I2C_Set_sck_low();
    for(i = 5;i > 0;i--);
    I2C_Set_sck_high();
    for(i = 5;i > 0;i--);
    I2C_Set_sda_high();
    for(i = 5;i > 0;i--);
    I2C_Set_sck_low();
    Delay_ms(10);		//延遲一點時間

    return;
}
void I2C_TxByte(int nValue)
{
    int i;
    int j;

    for(i = 0;i < 8;i++)
    {
    	if(nValue & 0x80)
    	    I2C_Set_sda_high();
    	else
    	    I2C_Set_sda_low();
    	for(j = 30;j > 0;j--);
    	I2C_Set_sck_high();
    	nValue <<= 1;
    	for(j = 30;j > 0;j--);
    	I2C_Set_sck_low();
    }

    return;
}
/////////////////////////////////////////////
// 接收是從 LSB 到 MSB 的順序
int  I2C_RxByte(void)
{
    int nTemp = 0;
    int i;
    int j;

    I2C_Set_sda_high();

    P1DIR &= ~(SDA);			//將SDA管腳設置為輸入方向
    _NOP();
    _NOP();
    _NOP();
    _NOP();
    for(i = 0;i < 8;i++)
    {
    	I2C_Set_sck_high();
    	
    	if(P1IN & SDA)
    	{
    	    nTemp |= (0x01 << i);
    	}
    	for(j = 30;j > 0;j--);
    	I2C_Set_sck_low();
    }

    return nTemp;
}
int WriteSingleByte(char nAddr,char nValue)
{
	int nTemp = 0xA0;//寫命令
	// 啟動數據總線
	I2C_START();
	// 發送控制字節
	I2C_TxByte(nTemp);
	// 等待 ACK
	nTemp = I2C_GetACK();
	if(nTemp & BIT3) return 0;

	// 發送地址字節
	I2C_TxByte(nAddr);
	// 等待 ACK
	nTemp = I2C_GetACK();
	if(nTemp & BIT3) return 0;

	// 發送數據字節
	I2C_TxByte(nValue);
	// 等待 ACK
	nTemp = I2C_GetACK();
	if(nTemp & BIT3) return 0;

	// 停止總線
	I2C_STOP();				
    return (nTemp & SDA);
}
int PageWrite(char nAddr,char pBuf[])
{
	int i;
	int nTemp = 0xA0;//寫命令
	// 啟動數據總線
	I2C_START();
	// 發送控制字節
	I2C_TxByte(nTemp);
	// 等待 ACK
	nTemp = I2C_GetACK();
	if(nTemp & BIT3) return 0;

	// 發送地址字節
	I2C_TxByte(nAddr);
	// 等待 ACK
	nTemp = I2C_GetACK();
	if(nTemp & BIT3) return 0;

	// 發送數據字節
	for(i = 0; i < 8;i++)
	{
		I2C_TxByte(pBuf[0]);
		// 等待 ACK
		nTemp = I2C_GetACK();
		if(nTemp & BIT3) return 0;
	}
	
	// 停止總線
	I2C_STOP();				
    return (nTemp & SDA);
}
int ReadRandom(char nAddr, char *nValue)
{
	//寫命令
	int nTemp = 0xA0;
	// 啟動數據總線
	I2C_START();
	// 發送控制字節
	I2C_TxByte(nTemp);
	// 等待 ACK
	nTemp = I2C_GetACK();
	if(nTemp & BIT3) return 0;

	// 發送地址字節
	I2C_TxByte(nAddr);
	// 等待 ACK
	nTemp = I2C_GetACK();
	if(nTemp & BIT3) return 0;

	// 啟動數據總線
	I2C_START();
	// 發送控制字節
	nTemp = 0xA1;
	I2C_TxByte(nTemp);
	// 等待 ACK
	nTemp = I2C_GetACK();
	if(nTemp & BIT3) return 0;

	//讀取數據
    *nValue = I2C_RxByte();

	// 停止總線
	I2C_STOP();
	//成功返回
	return 1;
}
int ReadSeq(char nAddr, char nValue[], int nLen)
{
	int i;
	//寫命令
	int nTemp = 0xA0;
	// 啟動數據總線
	I2C_START();
	// 發送控制字節
	I2C_TxByte(nTemp);
	// 等待 ACK
	nTemp = I2C_GetACK();
	if(nTemp & BIT3) return 0;

	// 發送地址字節
	I2C_TxByte(nAddr);
	// 等待 ACK
	nTemp = I2C_GetACK();
	if(nTemp & BIT3) return 0;

	// 啟動數據總線
	I2C_START();
	// 發送控制字節
	nTemp = 0xA1;
	I2C_TxByte(nTemp);
	// 等待 ACK
	nTemp = I2C_GetACK();
	if(nTemp & BIT3) return 0;

	//讀取數據
	for(i = 0; i < nLen; i++)
	{
		//讀一個字節數據
		nValue[i] = I2C_RxByte();
		//發送ACK
		I2C_SetACK();
	}

	// 停止總線
	I2C_STOP();
	//成功返回
	return 1;
}
void Delay_ms(unsigned long nValue)//毫秒為單位,8MHz為主時鐘
{
    unsigned long nCount;
    int i;
    unsigned long j;
    nCount = 2667;
    for(i = nValue;i > 0;i--)
    {
    	for(j = nCount;j > 0;j--);
    }
    return;
}
void Delay_us(unsigned long nValue)//微秒為單位,8MHz為主時鐘
{
    int nCount;
    int i;
    int j;
    nCount = 3;
    for(i = nValue;i > 0;i--)
    {
    	for(j = nCount;j > 0;j--);
    }
    return;
}
void Init_CLK(void)
{
    unsigned int i;
    BCSCTL1 = 0X00;	//將寄存器的內容清零
					//XT2震蕩器開啟
					//LFTX1工作在低頻模式
					//ACLK的分頻因子為1
					
    do
    {
		// 清除OSCFault標志
	    IFG1 &= ~OFIFG;
	    for (i = 0x20; i > 0; i--);
    }
    while ((IFG1 & OFIFG) == OFIFG);// 如果OSCFault =1
					
	//將寄存器的內容清零
    BCSCTL2 = 0X00;		
	//MCLK的時鐘源為TX2CLK,分頻因子為1
    BCSCTL2 += SELM1;	
	//SMCLK的時鐘源為TX2CLK,分頻因子為1
    BCSCTL2 += SELS;	
}
void main(void)
{
	char pTime[7];
	int i;
	int nTemp;
	//初始化時鐘
    Init_CLK();
    //初始化I2C
    I2C_Initial();

	return ;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产在线不卡一区| 972aa.com艺术欧美| 欧美韩日一区二区三区| 欧美性xxxxxxxx| 国产精品自在欧美一区| 亚洲综合丁香婷婷六月香| 久久综合久色欧美综合狠狠| 91黄色免费看| 国产成人午夜片在线观看高清观看| 尤物av一区二区| 国产亚洲精品福利| 欧美一区二区观看视频| 一本一道久久a久久精品| 韩国理伦片一区二区三区在线播放| 亚洲情趣在线观看| 国产精品美女久久久久久久网站| 日韩女优制服丝袜电影| 欧美日本一道本在线视频| 97se亚洲国产综合自在线| 国产成人精品亚洲777人妖| 日韩**一区毛片| 亚洲国产va精品久久久不卡综合 | 欧美一区二区三区免费| 色94色欧美sute亚洲线路二| 国产不卡视频在线播放| 久久狠狠亚洲综合| 日韩福利视频导航| 五月婷婷色综合| 亚洲午夜免费电影| 亚洲黄色片在线观看| 国产精品国产三级国产aⅴ原创 | 欧美男生操女生| 在线欧美一区二区| 99精品一区二区| av动漫一区二区| 成人av资源在线| 99久久99久久精品免费观看| 成人国产精品免费观看动漫| 国产iv一区二区三区| 国产精品综合一区二区三区| 国产精品一区二区黑丝| 国产福利精品一区| 国产成人精品影视| 国产精品综合久久| 国产成人精品一区二区三区四区 | 成人综合日日夜夜| 99久久精品国产毛片| 色偷偷成人一区二区三区91| 色婷婷国产精品| 欧美日韩高清影院| 欧美一区二区网站| 亚洲精品在线观| 国产婷婷色一区二区三区四区| 欧美激情在线看| 国产精品乱码人人做人人爱| 最好看的中文字幕久久| 亚洲精品五月天| 日韩综合在线视频| 美女视频网站久久| 高清不卡在线观看av| 成人app下载| 欧美日韩日日夜夜| 欧美一级xxx| 久久久精品免费网站| 亚洲欧洲性图库| 亚洲一区二区三区四区五区中文| 日韩影院在线观看| 国产毛片精品视频| 色综合天天综合网国产成人综合天| 色婷婷精品大在线视频 | 欧美日韩在线亚洲一区蜜芽| 91精品国产入口| 久久久久久日产精品| 国产精品美女久久久久av爽李琼| 亚洲综合网站在线观看| 美腿丝袜亚洲三区| 丁香婷婷综合五月| 欧美日韩国产影片| 日本一区二区免费在线| 亚洲图片自拍偷拍| 国产精品一区2区| 欧美少妇bbb| 国产日韩欧美a| 亚洲图片欧美视频| 国产成人精品网址| 欧美放荡的少妇| 国产欧美日韩一区二区三区在线观看| 亚洲欧美电影院| 免费一级欧美片在线观看| 成人黄色在线视频| 在线成人午夜影院| 亚洲同性同志一二三专区| 日韩—二三区免费观看av| 99久久精品费精品国产一区二区| 欧美一区二区三区电影| 亚洲美女视频在线观看| 国产成人免费视频网站| 7777女厕盗摄久久久| 亚洲天堂精品视频| 国产一区二区久久| 欧美电影在哪看比较好| 综合久久久久久| 国产最新精品免费| 宅男噜噜噜66一区二区66| 国产精品伦理一区二区| 国产一区二区三区国产| 欧美高清性hdvideosex| 亚洲婷婷综合久久一本伊一区| 久久精品国产秦先生| 欧美日韩免费在线视频| 亚洲精品日日夜夜| 成人精品一区二区三区中文字幕| 欧美一级黄色片| 亚洲成人免费视| 色婷婷一区二区| 中国色在线观看另类| 国产一区二区调教| 91精品黄色片免费大全| 亚洲影视在线观看| 99re这里都是精品| 亚洲欧洲一区二区三区| 成人理论电影网| 欧美极品美女视频| 国产剧情在线观看一区二区| 日韩一级免费观看| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美三级三级三级爽爽爽| 一区二区三区精品在线| 色狠狠桃花综合| 亚洲人123区| 91精彩视频在线观看| 一区二区免费看| 北岛玲一区二区三区四区| 中文字幕免费不卡在线| 国产精品一区二区黑丝| 久久久久国产精品人| 国产精品一区二区x88av| 国产日韩精品一区二区三区| 国产精品77777竹菊影视小说| 亚洲精品在线网站| 成人午夜免费av| 一区视频在线播放| 欧美丝袜丝交足nylons| 日日夜夜免费精品| 精品嫩草影院久久| 国产精品99久久久久| 国产精品不卡在线| 97精品电影院| 亚洲一区二区三区四区在线观看 | 亚洲免费观看在线观看| av在线不卡电影| 亚洲欧美日韩国产一区二区三区 | 亚洲成a人片在线不卡一二三区| 欧美色综合网站| 蜜臂av日日欢夜夜爽一区| 精品国产伦一区二区三区观看方式 | 亚洲一区影音先锋| 欧美精品一二三四| 久久99精品国产麻豆婷婷| 精品久久久久久久久久久久久久久 | 亚洲影院免费观看| 91精品国产综合久久精品app| 免费成人在线影院| 亚洲国产精品成人综合| 色噜噜狠狠成人网p站| 午夜伦欧美伦电影理论片| 久久新电视剧免费观看| av在线播放不卡| 日本三级韩国三级欧美三级| 久久综合久久综合久久| 色94色欧美sute亚洲线路一ni| 偷拍一区二区三区| 国产视频一区二区在线| 在线视频一区二区三| 久久国产欧美日韩精品| 中文字幕制服丝袜一区二区三区| 欧美亚洲另类激情小说| 久久99国产精品久久| 亚洲人成网站色在线观看| 日韩区在线观看| 99在线精品视频| 久久精品国产99国产精品| 中文字幕日本不卡| 日韩欧美www| 欧洲一区二区av| 国产精品99久久久久久似苏梦涵 | 粉嫩欧美一区二区三区高清影视| 亚洲一区二区精品3399| 久久久久97国产精华液好用吗| 在线看不卡av| 国产成人免费高清| 老司机免费视频一区二区| 有码一区二区三区| 亚洲国产精品v| 欧美xxxx老人做受| 欧美影院精品一区| 成人av在线播放网址| 美女视频免费一区| 午夜电影久久久| 亚洲三级小视频|