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

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

?? 24c02.c

?? 數控系統的模擬系統,用SSTC51仿真單片機,仿真數控機床切割,能執行數控機床代碼.
?? C
?? 第 1 頁 / 共 2 頁
字號:
#if 1


	
#include "i2c.h"


/*****************************************************************************

** 函數名稱: IIC_Delay

** 功能描述: I2C時序延時

** 全局變量: 無

** 調用模塊: 無

** 輸入: t:延時量

** 輸出: 無

******************************************************************************/
	     
void IIC_Delay(unsigned char t) 
{
   while(t--);
   
}

/*****************************************************************************

** 函數名稱: I2C_Start

** 功能描述: 啟動I2C總線的函數,當SCL為高電平時使SDA產生一個負跳變

** 全局變量: DELAY_TIME

** 調用模塊: IIC_Delay()

** 輸入: 無

** 輸出: 無

******************************************************************************/
		  
void I2C_Start(void)
{   
   SDA=1;
   SCL=1;
   IIC_Delay(DELAY_TIME);
   SDA=0;
   IIC_Delay(DELAY_TIME);
   SCL=0;
   IIC_Delay(DELAY_TIME);
}

/*****************************************************************************

** 函數名稱: I2C_Stop

** 功能描述: 終止I2C總線,當SCL為高電平時使SDA產生一個正跳變

** 全局變量: DELAY_TIME

** 調用模塊: IIC_Delay()

** 輸入: 無

** 輸出: 無

******************************************************************************/
		  
void I2C_Stop(void)
{
   SDA=0;
   IIC_Delay(DELAY_TIME);
   SCL=1;
   IIC_Delay(DELAY_TIME);
   SDA=1;
   IIC_Delay(DELAY_TIME);
   
}

/*****************************************************************************

** 函數名稱: SEND_0

** 功能描述: 發送0(或應答信號),在SCL為高電平時使SDA信號為低

** 全局變量: DELAY_TIME

** 調用模塊: IIC_Delay()

** 輸入: 無

** 輸出: 無

******************************************************************************/
		  
void SEND_0(void)   
{
   SDA=0;
   IIC_Delay(DELAY_TIME);
   SCL=1;
   IIC_Delay(DELAY_TIME);
   SCL=0;
   IIC_Delay(DELAY_TIME);
}

/*****************************************************************************

** 函數名稱: SEND_1

** 功能描述: 發送1,在SCL為高電平時使SDA信號為高

** 全局變量: DELAY_TIME

** 調用模塊: IIC_Delay()

** 輸入: 無

** 輸出: 無

******************************************************************************/
		  
void SEND_1(void)
{
   SDA=1;
   IIC_Delay(DELAY_TIME);
   SCL=1;
   IIC_Delay(DELAY_TIME);
   SCL=0;
   IIC_Delay(DELAY_TIME);
}

/*****************************************************************************

** 函數名稱: Check_Acknowledge

** 功能描述: 發送完一個字節后檢驗設備的應答信號

** 全局變量: DELAY_TIME

** 調用模塊: IIC_Delay()

** 輸入: 無

** 輸出: bit-當有應答信號時返回1,否則返回0。

******************************************************************************/
		  
bit Check_Acknowledge(void)
{
   bit F0;
   unsigned char Error_time=255;   //因故障接收方無ACK,超時值為255
   SDA=1;
   IIC_Delay(DELAY_TIME);
   SCL=1;
   IIC_Delay(DELAY_TIME);
   F0=SDA;
   while(F0)
   {
	  IIC_Delay(8);
	  F0 = SDA;
      if(--Error_time == 0)
        return FALSE;            //超時無應答,返回
   }
   IIC_Delay(DELAY_TIME);
   SCL=0;
   IIC_Delay(DELAY_TIME);
   if(F0==1)
      return FALSE;
   return TRUE;
}

/*****************************************************************************

** 函數名稱: Send_UnAcknowledge

** 功能描述: 主控器發送停止信號前發送的非應答信號

** 全局變量: DELAY_TIME

** 調用模塊: IIC_Delay()

** 輸入: 無

** 輸出: 無

******************************************************************************/
		 
void Send_UnAcknowledge(void)
{  
	 SDA=1;
     IIC_Delay(DELAY_TIME);
	 SCL=1;
	 IIC_Delay(DELAY_TIME);
	 SCL=0;
	 IIC_Delay(DELAY_TIME);
}

/*****************************************************************************

** 函數名稱: WriteI2CByte

** 功能描述: 向I2C總線寫一個字節

** 全局變量: DELAY_TIME,SEND_1(),SEND_0(),

** 調用模塊: IIC_Delay()

** 輸入: b:要發送的數據 

** 輸出: 無

******************************************************************************/
		  
void WriteI2CByte(unsigned char Byte)//reentrant
{
   unsigned char i;
   for(i=0;i<8;i++)
   {   
   		if((Byte << i) & 0x80)
         	SEND_1();
       	else
         	SEND_0();
   }
}

/*****************************************************************************

** 函數名稱: ReadI2CByte

** 功能描述: 從I2C總線讀一個字節

** 全局變量: DELAY_TIME

** 調用模塊: IIC_Delay()

** 輸入: 無

** 輸出: char-從I2C總線讀出的數據.

******************************************************************************/
          
unsigned char ReadI2CByte(void)//reentrant
{
   bit F0;
   unsigned char Byte=0,i;
   for(i=0; i<8; i++)
   {
      SDA=1;             /*釋放總線*/
      IIC_Delay(DELAY_TIME);
      SCL=0;             //置時鐘線為低,準備接收數據
      IIC_Delay(DELAY_TIME);
      SCL=1;             /*接受數據*/
      IIC_Delay(DELAY_TIME);
      F0=SDA;
      IIC_Delay(DELAY_TIME);
      SCL=0;
      if(F0 == 1)
      {
         Byte <<= 1;
         Byte |= 0x01;
      }
      else
       Byte <<= 1;
   }
   return Byte;
}

/*****************以下為讀寫24c04的函數**************************************/

/*****************************************************************************

** 函數名稱: Write_One_Byte

** 功能描述: write a byte to memory

** 全局變量: 無

** 調用模塊: IIC_Delay(),I2C_Start(),I2C_Stop(),WriteI2CByte(unsigned char b)
             Check_Acknowledge()
             
** 輸入: addr:寫入地址,thedata:要寫入的數據

** 輸出: bit-當寫入正確時反回1,否則返回0。

******************************************************************************/
	  
bit Write_One_Byte(unsigned char addr,unsigned char thedata)
{
   bit acktemp=1;
   I2C_Start();
   WriteI2CByte(SLAW);        /*write the SLAW*/
   acktemp = Check_Acknowledge();
   if(!acktemp)
   {  
      	I2C_Stop();
		return(FALSE);
   }
   WriteI2CByte(addr);           /*write memory address*/
   acktemp = Check_Acknowledge();
   if(!acktemp)
   {  
      	I2C_Stop();
		return(FALSE);
   }
   WriteI2CByte(thedata);        /*the data*/
   acktemp=Check_Acknowledge();
   if(!acktemp)
   {  
      	I2C_Stop();
		return(FALSE);
   }
   I2C_Stop();
   IIC_Delay(8);
   return(TRUE);
}

/*****************************************************************************

** 函數名稱: Write_A_Page

** 功能描述: write a page to AT24c04

** 全局變量: 無

** 調用模塊: IIC_Delay(),I2C_Start(),I2C_Stop(),WriteI2CByte(unsigned char b)
             Check_Acknowledge()
             
** 輸入: *buffer:寫入數據緩沖首地址,addr:寫入頁首地址

** 輸出: bit-當寫入正確時反回1,否則返回0。

******************************************************************************/
	  
bit Write_A_Page(unsigned char *buffer,unsigned char addr)
{
   bit acktemp=1;
   unsigned char i;
   I2C_Start();
   WriteI2CByte(SLAW);        /*write the SLAW*/
   acktemp=Check_Acknowledge();
   if(!acktemp)
   {  
      I2C_Stop();
	  return(FALSE);
   }
   WriteI2CByte(addr);          /*write memory address*/
   acktemp=Check_Acknowledge();
	 if(!acktemp)
	 {  
      	I2C_Stop();
		return(FALSE);
	 }
   for(i=0;i<Page_Word;i++)
   {
      WriteI2CByte(*buffer);
			buffer++;
      if(!Check_Acknowledge())
      {  
         I2C_Stop();
		 return(FALSE);
      }
	 
   }

   I2C_Stop();
   for(i=0;i<10;i++)
   {  
      	IIC_Delay(200);         //IIC_Delay 10mS
   }
   return(TRUE);

}

/*****************************************************************************

** 函數名稱: Read_One_Byte

** 功能描述: read a byte from memory

** 全局變量: 無

** 調用模塊: IIC_Delay(),I2C_Start(),I2C_Stop(),WriteI2CByte(unsigned char b)
             Check_Acknowledge(),Send_UnAcknowledge()
             
** 輸入: addr:讀入地址

** 輸出: char-當讀出正確時反回讀出值,否則返回0xff。

******************************************************************************/
	  
unsigned char Read_One_Byte(unsigned char addr)
{         
   bit acktemp=1;
   unsigned char mydata;
   I2C_Start();
   WriteI2CByte(SLAW);         /*write the SLAW*/
   acktemp=Check_Acknowledge();
   if(!acktemp)
   {  
      	I2C_Stop();
		return(0xff);
   }
   WriteI2CByte(addr);         /*write memory address*/
   acktemp=Check_Acknowledge();
   if(!acktemp)
   {  
      	I2C_Stop();
		return(0xff);
   }
   I2C_Start();
   WriteI2CByte(SLAR);        /*write the SLAR*/
   acktemp=Check_Acknowledge();
   if(!acktemp)
   {  
      	I2C_Stop();
		return(0xff);
   }
   mydata=ReadI2CByte();
   Send_UnAcknowledge();
   I2C_Stop();
   return mydata;
}

/*****************************************************************************

** 函數名稱: Read_N_Bytes

** 功能描述: read N bytes from memory N<16

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品乱码久久久久久| 在线观看亚洲a| 99久久精品国产麻豆演员表| 成人免费毛片a| 95精品视频在线| 欧美日韩一区不卡| 精品1区2区在线观看| 国产精品美女久久福利网站| 亚洲日本丝袜连裤袜办公室| 天堂成人国产精品一区| 久久国产综合精品| 97精品国产97久久久久久久久久久久| 欧美丝袜自拍制服另类| 欧美一区二区久久| 中文字幕 久热精品 视频在线| 亚洲国产成人高清精品| 国产91精品欧美| 欧美成人一区二区三区片免费| 国产精品青草综合久久久久99| 亚洲午夜三级在线| 成人av午夜电影| 亚洲精品在线观看网站| 精品国产一区二区三区不卡 | 波多野洁衣一区| 日韩欧美在线1卡| 亚洲va欧美va天堂v国产综合| youjizz国产精品| 国产欧美一区二区精品久导航| 亚洲国产成人91porn| 91丨porny丨最新| 一区视频在线播放| 成人动漫视频在线| 中文字幕综合网| 99天天综合性| 亚洲免费观看高清完整版在线| 不卡区在线中文字幕| 欧美激情中文字幕一区二区| 国产成人在线免费观看| 日本一区二区三区在线观看| 国内精品伊人久久久久av影院 | 亚洲欧美另类综合偷拍| 在线影视一区二区三区| 一区二区三区四区中文字幕| 色婷婷亚洲综合| 亚洲午夜久久久久中文字幕久| 91福利精品第一导航| 视频一区二区三区入口| 日韩丝袜情趣美女图片| 精品一区二区三区不卡| 亚洲欧洲国产日韩| 欧美精品久久久久久久多人混战| 日韩精品免费专区| 成人欧美一区二区三区| 欧美视频中文字幕| 国产一区二区三区免费在线观看| 国产女同性恋一区二区| 日本道色综合久久| 狠狠色狠狠色综合系列| 亚洲综合一区二区三区| 26uuu国产日韩综合| 色综合色综合色综合| 久久精品国产99国产| 亚洲视频图片小说| 欧美一区二区三区系列电影| 国产成人精品aa毛片| 天天色天天爱天天射综合| 国产精品区一区二区三| 欧美精品一区二区三区一线天视频 | 日韩综合一区二区| 中文字幕中文字幕在线一区| 日韩欧美在线观看一区二区三区| av成人老司机| 国产.欧美.日韩| 国产麻豆视频一区| 国产伦精品一区二区三区视频青涩| 亚洲福中文字幕伊人影院| 一区二区三区四区在线免费观看| 国产精品久久久久aaaa樱花| 久久久久久久综合日本| 久久亚洲精华国产精华液| 日韩欧美一级精品久久| 日韩女优视频免费观看| 久久日一线二线三线suv| 久久毛片高清国产| 亚洲欧美在线高清| 亚洲成人免费观看| 亚洲午夜电影在线观看| 视频一区欧美日韩| 麻豆国产欧美日韩综合精品二区| 开心九九激情九九欧美日韩精美视频电影 | 婷婷中文字幕综合| 国产高清不卡二三区| 91免费视频大全| 在线成人免费视频| 国产欧美日韩激情| 亚洲国产毛片aaaaa无费看| 五月天激情综合| 国产成人av福利| 欧美中文字幕一区| 久久久久久久久99精品| 一区二区三区精品视频| 麻豆成人免费电影| 欧日韩精品视频| 久久久蜜臀国产一区二区| 亚洲成人午夜电影| av高清不卡在线| 久久蜜桃香蕉精品一区二区三区| 亚洲男人的天堂网| 国产成人h网站| 久久久欧美精品sm网站| 日本va欧美va精品| 色婷婷av一区二区三区大白胸| 欧美成人欧美edvon| 亚洲国产一区视频| 99热国产精品| 亚洲人成人一区二区在线观看| 国产精品一色哟哟哟| 欧美日韩精品一区二区在线播放| 欧美—级在线免费片| 免播放器亚洲一区| 欧美午夜片在线观看| 久久精品视频免费观看| 日本少妇一区二区| 在线观看91视频| 综合久久久久综合| 韩国三级中文字幕hd久久精品| 欧美三级视频在线播放| 久久久久久久久一| 综合分类小说区另类春色亚洲小说欧美| 精品亚洲国内自在自线福利| 91精品国产免费久久综合| 一区二区三区在线视频观看| 成人美女视频在线看| 欧美激情一区二区三区四区| 国产一区二区三区免费| 国产亚洲午夜高清国产拍精品| 奇米影视一区二区三区| 成人一区二区视频| 亚洲国产一区二区视频| 欧美性大战久久久| 亚洲成人午夜影院| 日韩精品中文字幕一区二区三区| 激情综合网激情| 国产精品久久久久久久久动漫| 成人网在线播放| 亚洲国产精品久久久久婷婷884| 欧美大度的电影原声| 极品少妇一区二区三区精品视频| 欧美videossexotv100| 国产一二三精品| 亚洲国产精品久久艾草纯爱 | 久久―日本道色综合久久| 丁香激情综合国产| 一级做a爱片久久| 欧美国产成人在线| 欧美久久一二区| 国产麻豆一精品一av一免费| 国产精品二三区| 欧美videofree性高清杂交| 9久草视频在线视频精品| 丝袜脚交一区二区| 久久久精品国产免大香伊| 日韩精品资源二区在线| 欧美中文字幕一区二区三区 | 欧美日韩视频在线观看一区二区三区| 视频一区二区三区在线| 亚洲精品videosex极品| 久久综合色婷婷| 欧美人牲a欧美精品| 在线观看国产精品网站| 色呦呦国产精品| 在线观看三级视频欧美| 91视频免费观看| 国产999精品久久久久久| 日韩码欧中文字| 一个色妞综合视频在线观看| 国产欧美精品日韩区二区麻豆天美| 欧美电视剧在线观看完整版| 色婷婷亚洲精品| 日韩一二三四区| 欧美高清精品3d| 欧美一区二区美女| 国产免费成人在线视频| 自拍偷拍国产精品| 亚洲日本va午夜在线影院| 最新久久zyz资源站| 亚洲欧美日韩电影| 亚洲高清免费在线| 免费欧美高清视频| 国产91丝袜在线播放九色| 91网站最新地址| 欧美精品乱码久久久久久按摩| 日韩欧美中文一区| 亚洲一区在线观看视频| 日韩精品久久理论片| 国产一区二区女| 欧美人体做爰大胆视频| 国产亚洲精品免费| 亚洲综合色噜噜狠狠| 午夜在线成人av|