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

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

?? iic.lst

?? IIC READ AND WRITE iic器件的讀取 連續讀取和頁讀取
?? LST
字號:
C51 COMPILER V8.08   IIC                                                                   09/30/2008 14:58:07 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE IIC
OBJECT MODULE PLACED IN iic.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE iic.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include   <reg52.h>
   2          #include        "delay.h"
   3          #include        "iic.h"
   4          
   5          /*啟動IIC設備*/
   6          void start(void)
   7          {
   8   1              DelayMs(5);
   9   1              SDA = 1 ;
  10   1              Delay(5);
  11   1              SCL = 1 ;
  12   1              Delay(5);
  13   1              SDA = 0 ;
  14   1              Delay(5);
  15   1              SCL = 0 ;
  16   1              Delay(5);
  17   1      }
  18          
  19          
  20          /*停止IIC設備*/
  21          void stop(void)
  22          {
  23   1              Delay(5);
  24   1              SCL = 0 ;
  25   1              Delay(5);
  26   1              SDA = 0 ;
  27   1              Delay(5);
  28   1              SCL = 1 ;
  29   1              Delay(5);
  30   1              SDA = 1 ;
  31   1              Delay(5);
  32   1              DelayMs(15);
  33   1      }
  34          
  35          /*檢測ack*/
  36          bit testack(void)
  37          {
  38   1              bit AckFlag;
  39   1              Delay(5);
  40   1              SDA = 1;
  41   1              Delay(5);
  42   1              SCL = 1;
  43   1              Delay(5);
  44   1              AckFlag = SDA;
  45   1              SCL = 0;
  46   1              Delay(5);
  47   1              return(AckFlag);
  48   1      }
  49          
  50          /*發送應答信號*/
  51          void sendack(void)
  52          {
  53   1              Delay(5);
  54   1              SDA = 0;
  55   1              Delay(5);
C51 COMPILER V8.08   IIC                                                                   09/30/2008 14:58:07 PAGE 2   

  56   1              SCL = 1;
  57   1              Delay(5);
  58   1              SCL = 0; 
  59   1              Delay(5);
  60   1              SDA = 1;
  61   1              Delay(5);
  62   1      }
  63          /*發送非應答信號*/
  64          void sendNack(void)
  65          {
  66   1              Delay(5);
  67   1              SDA = 1 ;
  68   1              Delay(5);
  69   1              SCL = 1 ;
  70   1              Delay(5);
  71   1              SCL = 0 ;
  72   1              Delay(5);
  73   1      }
  74          
  75          /*寫1個字節的數據*/
  76          void write8bit(unsigned char T_Data)
  77          {
  78   1              unsigned char i ;       
  79   1              for(i = 8; i != 0; i--)
  80   1              {
  81   2                      SDA = (bit)(T_Data & 0x80);
  82   2                      Delay(5);
  83   2                      SCL = 1 ;
  84   2                      Delay(5);
  85   2                      SCL = 0 ;
  86   2                      Delay(5);
  87   2                      T_Data = T_Data << 1 ;
  88   2                      Delay(5);
  89   2              }
  90   1      }
  91          
  92          /*讀1個字節的數據*/
  93          unsigned char read8bit(void)
  94          {
  95   1              unsigned char i = 0 ;
  96   1              unsigned char R_Data = 0x00 ;
  97   1              
  98   1              for(i = 8; i != 0; i--)
  99   1              {
 100   2                      SDA = 1;
 101   2                      Delay(5);
 102   2                      SCL = 0 ;
 103   2                      Delay(5);
 104   2                      Delay(5);
 105   2                      SCL = 1 ;
 106   2                      R_Data = R_Data << 1 ;
 107   2                      R_Data = R_Data |((unsigned char)(SDA)) ;
 108   2                      SCL = 0 ;
 109   2                      Delay(5);
 110   2              }
 111   1              return(R_Data);
 112   1      }
 113          
 114          /*寫1個字節的數據到指定的地址*/
 115          void write_I2C(unsigned char RomAddress,unsigned char T_Data)
 116          {
 117   1              start() ;
C51 COMPILER V8.08   IIC                                                                   09/30/2008 14:58:07 PAGE 3   

 118   1              write8bit(WrDevAddr) ;
 119   1              testack() ;
 120   1              write8bit(RomAddress) ;
 121   1              testack() ;
 122   1              write8bit(T_Data) ;
 123   1              testack() ;
 124   1              stop() ;
 125   1      }
 126          
 127          
 128          /*讀1個字節的數據*/
 129          unsigned char read_I2C(unsigned char RomAddress)
 130          {
 131   1              unsigned char R_Data = 0x00 ;
 132   1              start() ;
 133   1              write8bit(WrDevAddr) ;
 134   1              testack() ;
 135   1              write8bit(RomAddress) ;
 136   1              testack() ;
 137   1              start() ;
 138   1              write8bit(RdDevAddr) ;
 139   1              testack() ;
 140   1              R_Data = read8bit() ;
 141   1              sendNack() ;
 142   1              stop() ;
 143   1              return(R_Data) ;
 144   1      }
 145          
 146          /*指定的地址寫頁-8字節數據*/
 147          void WriteOnePage (unsigned char addr,unsigned char *thedata)    //寫入一頁8個字節到指定開始地址,可以自動
             -翻頁
 148          {
 149   1          unsigned char i;                        //計數器
 150   1          start();                                            //開始總線
 151   1          write8bit(WrDevAddr);               //發送控制數據
 152   1          testack();                                                          //檢查應答信息
 153   1          write8bit(addr);                    //寫入地址
 154   1          testack();
 155   1          for(i=0;i<8;i++)                            //循環寫入第一頁的數據
 156   1          {        
 157   2              write8bit(*thedata);            //寫入數據
 158   2              testack();
 159   2              thedata++;                    //數據指針加1
 160   2          }
 161   1          stop();                                     //停止總線
 162   1      }
 163          
 164          /*指定的地址寫N(N<=8)字節數據*/
 165          void WriteNByte (unsigned char addr,unsigned char *thedata,unsigned char n)    //寫入N個字到指定開始地址
 166          {
 167   1          unsigned char i;                        //計數器
 168   1          start();                                                    //開始總線
 169   1          write8bit(WrDevAddr);                   //發送控制數據
 170   1          testack();                                                                          //檢查應答信息
 171   1          write8bit(addr);                                    //寫入地址
 172   1          testack();
 173   1          for(i=0;i<n;i++)                                            //循環寫入第一頁的數據
 174   1          {        
 175   2              write8bit(*thedata);                            //寫入數據
 176   2              testack();
 177   2              thedata++;                              //數據指針加1
 178   2          }
C51 COMPILER V8.08   IIC                                                                   09/30/2008 14:58:07 PAGE 4   

 179   1          stop();                                                     //停止總線
 180   1      }
 181          
 182          /*指定地址,頁寫n個數據*/
 183          void WritePages(unsigned char addr,unsigned char *thedata,unsigned char n)
 184          {
 185   1              unsigned char page=n/8;
 186   1              unsigned char leave=n%8;
 187   1              unsigned char i;
 188   1              for(i=0;i<page;i++)
 189   1              {
 190   2                      WriteOnePage((addr+8*i),thedata);
 191   2                      thedata=thedata+8;
 192   2              }
 193   1              WriteNByte((addr+8*page),thedata,leave);
 194   1      }
 195          
 196          /*指定地址,讀取8字節,頁讀*/
 197          void ReadoOnePage(unsigned char addr,unsigned char *thedata)            //連續讀取8個字節 頁
 198          {
 199   1              unsigned char i;
 200   1          start();                       
 201   1          write8bit(WrDevAddr);                   
 202   1          testack();
 203   1          write8bit(addr);
 204   1          testack();
 205   1          start();
 206   1          write8bit(RdDevAddr) ;
 207   1          testack();
 208   1          for(i=0;i<7;i++)                            //8字節
 209   1          {        
 210   2              *thedata=read8bit();            //讀取數據
 211   2              sendack();                      //發送應答,表示繼續讀取
 212   2              thedata++;                      //數據指針加1
 213   2          }
 214   1          *thedata=read8bit();                //讀取最后一個數據
 215   1          sendNack();                        //發送非應答,結束讀取
 216   1          stop();                                     //停止總線
 217   1      }
 218          
 219           /*連續讀取N個字節*/
 220          void ReadNByte (unsigned char addr,unsigned char *thedata,unsigned char n)           
 221          {       
 222   1          unsigned char i;
 223   1          start();                       
 224   1          write8bit(WrDevAddr);                   
 225   1          testack();
 226   1          write8bit(addr);
 227   1          testack();
 228   1          start();
 229   1          write8bit(RdDevAddr) ;
 230   1          testack();
 231   1          for(i=0;i<n-1;i++)                          //n字節
 232   1          {   
 233   2              *thedata=read8bit();            //讀取數據
 234   2              sendack();                      //發送應答,表示繼續讀取
 235   2              thedata++;                      //數據指針加1
 236   2          }
 237   1          *thedata=read8bit();                //讀取最后一個數據
 238   1          sendNack();                        //發送非應答,結束讀取
 239   1          stop();     
 240   1      }
C51 COMPILER V8.08   IIC                                                                   09/30/2008 14:58:07 PAGE 5   



MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    768    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      38
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----       1
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美日韩亚州综合 | 日本不卡视频在线观看| 亚洲一区二区视频在线| 日韩不卡手机在线v区| 成人sese在线| 久久久www成人免费毛片麻豆 | 国产成人aaa| 高清不卡在线观看| 国产精品久久久久国产精品日日| 日韩精品欧美成人高清一区二区| 欧美精品九九99久久| 亚洲午夜久久久久久久久电影院| 肉色丝袜一区二区| 日本亚洲天堂网| 91香蕉国产在线观看软件| 欧美日韩久久久一区| 欧美精品v国产精品v日韩精品| 久久久综合视频| 亚洲国产裸拍裸体视频在线观看乱了| 国产又黄又大久久| 欧美日韩免费电影| 国产亚洲欧美激情| 日韩和欧美一区二区三区| 99视频精品在线| 久久综合久久综合久久| 亚洲高清免费观看高清完整版在线观看| 久久精品国产**网站演员| 色噜噜偷拍精品综合在线| 久久久三级国产网站| 天天综合网 天天综合色| 成人黄页毛片网站| 日韩午夜av一区| 视频一区中文字幕| 欧美三日本三级三级在线播放| 欧美激情一区二区三区不卡| 日本不卡一二三区黄网| 不卡一区在线观看| 26uuu欧美| 麻豆国产精品视频| 欧美一区二区三区日韩| 亚洲午夜久久久久久久久电影网| 99久久精品免费看| 中文字幕日本不卡| 国产一区二区福利视频| 精品捆绑美女sm三区| 日韩成人一级片| 7777精品伊人久久久大香线蕉的 | 制服丝袜激情欧洲亚洲| 亚洲自拍偷拍综合| 在线视频综合导航| 久久久高清一区二区三区| 国产一区二区三区高清播放| 日韩精品一区二区三区视频 | 2023国产精品| 亚洲一区二区在线播放相泽| 久久久亚洲国产美女国产盗摄| 在线电影一区二区三区| 欧美日韩视频专区在线播放| 97国产一区二区| 欧美日韩第一区日日骚| 日韩欧美视频在线| 欧美色男人天堂| 性做久久久久久| 蜜桃av一区二区| 欧美一区二区三区四区久久| 美女视频一区二区三区| 欧美日韩精品综合在线| 日韩精品一二三| 国产色综合久久| 处破女av一区二区| 一区二区在线看| 正在播放亚洲一区| 国产不卡高清在线观看视频| 久久嫩草精品久久久久| 91免费国产视频网站| 一区二区三区欧美| 欧美一区二区视频在线观看2020| 久久国产剧场电影| 综合激情成人伊人| 日韩精品中文字幕一区二区三区 | 国产夫妻精品视频| 亚洲国产精品久久不卡毛片| 欧美国产欧美亚州国产日韩mv天天看完整| 色久优优欧美色久优优| 国产精品亚洲一区二区三区在线 | 亚洲同性gay激情无套| 日韩精品资源二区在线| 欧美三级日韩三级| 99在线精品免费| 国产精品亚洲视频| 免费在线一区观看| 午夜视频一区在线观看| 亚洲欧美激情插| 中文字幕av资源一区| 精品乱人伦小说| 69av一区二区三区| 欧洲亚洲精品在线| 91色在线porny| 99久久亚洲一区二区三区青草| 久久精品免费观看| 秋霞成人午夜伦在线观看| 亚洲一区成人在线| 亚洲自拍另类综合| 亚洲影院理伦片| 亚洲视频1区2区| 亚洲精品在线免费播放| 91精品国产高清一区二区三区 | 欧美丰满一区二区免费视频| 亚洲亚洲人成综合网络| 精品视频资源站| 日本电影欧美片| 一区二区在线免费观看| 亚洲猫色日本管| 一区二区三区国产精品| 亚洲欧美激情小说另类| 亚洲欧美另类久久久精品| 国产精品―色哟哟| 亚洲天堂免费看| 亚洲精品国产a久久久久久| 亚洲欧洲制服丝袜| 亚洲天堂2014| 亚洲日本在线a| 亚洲一区二区视频| 五月激情综合婷婷| 久久99最新地址| 成人手机电影网| 91久久精品一区二区| 欧美亚洲日本一区| 91精品国产综合久久久蜜臀图片 | 成人av在线一区二区| 色综合一个色综合亚洲| 欧美日韩国产一级片| 欧美videos大乳护士334| 久久精品人人做人人综合| 国产精品美女视频| 亚洲第一久久影院| 激情图区综合网| 99久久久无码国产精品| 欧美性色黄大片手机版| 91精品在线麻豆| 国产精品久久久久aaaa| 一区二区三区四区激情| 蜜桃视频在线一区| 国产高清不卡一区二区| 一本一道久久a久久精品综合蜜臀| 欧美日韩一区高清| 久久综合一区二区| 亚洲国产成人91porn| 国内精品视频一区二区三区八戒| 99久久久国产精品免费蜜臀| 欧美私模裸体表演在线观看| 欧美日韩国产高清一区二区 | 亚洲福利视频三区| 91福利视频久久久久| 亚洲精品老司机| 蜜桃在线一区二区三区| 国产精品一二三四五| 色婷婷av一区| 精品欧美一区二区三区精品久久 | 99久久精品99国产精品| 一区二区在线电影| 欧洲一区在线电影| 久久久精品国产免费观看同学| 国产精品精品国产色婷婷| 免费精品视频最新在线| 国产高清在线观看免费不卡| 在线播放亚洲一区| 国产精品久久久爽爽爽麻豆色哟哟| 亚洲一区二区三区在线看| 国产真实乱子伦精品视频| 国产亚洲欧美日韩在线一区| 在线亚洲一区观看| 色女孩综合影院| 久久一区二区三区四区| 一区二区成人在线视频| 国产一区二区美女| 欧美肥大bbwbbw高潮| 亚洲女人的天堂| 成人av在线一区二区三区| 精品国产免费人成在线观看| 五月婷婷综合网| 欧美三级电影网| 一区二区三区加勒比av| 91女厕偷拍女厕偷拍高清| 国产亚洲1区2区3区| 另类欧美日韩国产在线| 欧美日韩黄色影视| 亚洲一区av在线| 欧美亚一区二区| 夜夜夜精品看看| 色呦呦日韩精品| 亚洲精品亚洲人成人网在线播放| 成人午夜在线免费| 久久五月婷婷丁香社区| 激情综合网av| 久久久综合精品| 国产成a人无v码亚洲福利| 久久精品欧美一区二区三区麻豆| 激情综合亚洲精品| 国产日韩精品视频一区|