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

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

?? iic.lst

?? 俄羅斯方塊的源代碼雅俗文件
?? LST
字號:
C51 COMPILER V7.50   IIC                                                                   11/14/2007 11:29:07 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE IIC
OBJECT MODULE PLACED IN iic.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE iic.c OPTIMIZE(6,SPEED) BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*
   2          本項目專門為本站的51 PIC AVR 多功能學習開發板而寫,僅供參考,請勿做商業用途,歡迎轉載但要保留本站信息
   3                                            志博電子專注于8位單片機開發板設計和教學  
   4                                                讓人耳目一心的經濟又豪華型開發板
   5                                                          性價比最高 
   6                                                           僅售378! 
   7          歡迎訪問我們的網站 www.elecmcu.com                                              
   8          */
   9          #define IIC_READ 0XA1    //定義讀指令
  10          #define IIC_WRITE 0XA0   //定義寫指令
  11          #define NOP _nop_()
  12          #define uchar unsigned char
  13          #define uint  unsigned int
  14          #include "reg52.h"
  15          #define IIC_READ 0XA1    //定義讀指令
  16          #define IIC_WRITE 0XA0   //定義寫指令
  17          #define NOP _nop_()
  18          uchar readbyteseq(uint add,uchar *ptr,uint readlen);
  19          uchar writebyteseq(uint add,uchar *ptr,uint writelen);
  20          void delay10ms(void);
  21          //#define SDA INT0
  22          //#define SCL T0
  23          //==============================
  24          uchar xdata buff[2000]; //save the byte read out  form iic device in test operation
  25          uchar xdata readbuff[232];//測試數組,暫存寫入讀出數據
  26          //uchar writebuff[32];
  27          //===============================
  28          sbit SDA=P3^5;//P2^7; //THE SDA BIT IS PORT 2 BIT 7
  29          sbit SCL=P3^4;//P2^6; //THE SCL BIT IS PORT 2 BIT 6
  30          sbit SEN=P3^3;//P2^6; //THE SCL BIT IS PORT 2 BIT 6
  31          sbit STE=P3^2;//P2^6; //THE SCL BIT IS PORT 2 BIT 6
  32          uchar bdata bbyte;//定義位操作用數組,采用此方法可提高位操作速度
  33          sbit a0=bbyte^0;
  34          sbit a1=bbyte^1;
  35          sbit a2=bbyte^2;
  36          sbit a3=bbyte^3;
  37          sbit a4=bbyte^4;
  38          sbit a5=bbyte^5;
  39          sbit a6=bbyte^6;
  40          sbit a7=bbyte^7;
  41          //========================================
  42          bit IFACK; //record the SDA state to confirn if ACK has happened 
  43          bit NO_ACK; //no ack flag
  44          bit BUS_FAULT; //bus fault flag
  45          //========================================
  46          void start(void)
  47          {
  48   1       SCL=0;
  49   1       SDA=1;
  50   1       SCL=1;
  51   1       SDA=0;
  52   1       SCL=0;
  53   1      }
  54          //=======================================
  55          //FUNCTION:ROUTES TO PROVIDE A STOP SIGNAL
C51 COMPILER V7.50   IIC                                                                   11/14/2007 11:29:07 PAGE 2   

  56          void stop(void)
  57          {
  58   1       SCL=0;
  59   1       SDA=0;
  60   1       SCL=1;
  61   1       SDA=1;
  62   1       SCL=0;
  63   1      }
  64          //=====================================
  65          //FUNCTION:ROUTES TO PROVIDE ACK SINGAL
  66          void ack(void)
  67          {
  68   1       SCL=0;
  69   1       SDA=0;
  70   1       SCL=1;
  71   1       SCL=0;
  72   1      }
  73          //=====================================
  74          //FUNCTION:ROUTES TO RELEASE THE SDA TO RECEIVE A ACK SIGNAL 
  75          //              OR TO PROVIDE A NO_ACK SIGNAL
  76          //type=1等待應答信號
  77          //type=0 產生無應答信號
  78          void nack(uchar type)
  79          {
  80   1      SCL=0;
  81   1      SDA=1;
  82   1      SCL=1;
  83   1      IFACK=SDA;
  84   1      SCL=0;
  85   1       if(type)
  86   1       {
  87   2        if(IFACK)//如果無應答信號,則置標志位NO_ACK,程序中止
  88   2        { 
  89   3         NO_ACK=1;//用戶可以加入自己的異常處理程序
  90   3         //while(1);
  91   3        }
  92   2        else NO_ACK=0;
  93   2       }
  94   1      }
  95          //=======================================================
  96          //FUNCTION:THE IIC DEVICE SHIFT OUT A BYTE  TO THE MASTER
  97          uchar  inbyte(void) {//從IIC器件中讀出數據
  98   1       SDA=1;
  99   1       SCL=1;
 100   1       a7=SDA;
 101   1       SCL=0;
 102   1       SCL=1;
 103   1       a6=SDA;
 104   1       SCL=0;
 105   1       SCL=1;
 106   1       a5=SDA;
 107   1       SCL=0;
 108   1       SCL=1;
 109   1       a4=SDA;
 110   1       SCL=0;
 111   1       SCL=1;
 112   1       a3=SDA;
 113   1       SCL=0;
 114   1       SCL=1;
 115   1       a2=SDA;
 116   1       SCL=0;
 117   1       SCL=1;
C51 COMPILER V7.50   IIC                                                                   11/14/2007 11:29:07 PAGE 3   

 118   1       a1=SDA;
 119   1       SCL=0;
 120   1       SCL=1;
 121   1       a0=SDA;
 122   1       SCL=0;
 123   1       return(bbyte);
 124   1      }
 125          //=======================================================
 126          //FUNCTION:THE IIC DEVICE SHIFT IN A BYTE FROM THE MASTER 
 127          void outbyte(uchar outdata) {//將數據寫放IIC器件
 128   1       bbyte=outdata;
 129   1       SDA=a7;
 130   1       SCL=1;
 131   1       SCL=0;
 132   1       SDA=a6;
 133   1       SCL=1;
 134   1       SCL=0;
 135   1       SDA=a5;
 136   1       SCL=1;
 137   1       SCL=0;
 138   1       SDA=a4;
 139   1       SCL=1;
 140   1       SCL=0;
 141   1       SDA=a3;
 142   1       SCL=1;
 143   1       SCL=0;
 144   1       SDA=a2;
 145   1       SCL=1;
 146   1       SCL=0;
 147   1       SDA=a1;
 148   1       SCL=1;
 149   1       SCL=0;
 150   1       SDA=a0;
 151   1       SCL=1;
 152   1       SCL=0;
 153   1      }
 154          /*
 155          //======================================================
 156          //FUNCTION:BYTE WRITE.  'add'     THE WRITE ADDRESS, 'wbyte'   THE DATA WANT TO WRITE
 157          void writebyte(uint add,uchar wbyte)//add為寫入地址,wbyte為寫入數據
 158          {
 159           uchar temph,templ;
 160           temph=(uchar)(add/256);
 161           templ=(uchar)(add%256);
 162           if(!STE)
 163           return;
 164           SEN=0;
 165           if(!STE)
 166           {
 167           SEN=1;
 168           SCL=1;
 169           SDA=1;
 170           return;
 171           }
 172           start();    //開始信號
 173           outbyte(IIC_WRITE|(temph<<1));   //寫命令
 174           nack(1);   //等待應答
 175           outbyte(templ);  //寫地址
 176           nack(1);
 177           outbyte(wbyte);   //寫數據
 178           nack(1);   //等待應答
 179           stop();    //停止信號
C51 COMPILER V7.50   IIC                                                                   11/14/2007 11:29:07 PAGE 4   

 180           SCL=1;
 181           SDA=1;
 182           SEN=1;
 183          }
 184          //=====================================================
 185          //FUNCTION:RANDOM READ.'add' IS THE ADDRESS WANT TO READ
 186          uchar readbyte (uint add)//add為讀地址
 187          {
 188          uchar temp,temph,templ; 
 189           temph=(uchar)(add/256);
 190           templ=(uchar)(add%256);
 191           if(!STE)
 192           return 0XFF;
 193           SEN=0;
 194           if(!STE)
 195           {
 196            SCL=1;
 197           SDA=1;
 198           SEN=1;
 199           return 0XFF;
 200           }
 201           start();   //開始信號
 202           outbyte(IIC_WRITE|(temph<<1));   //寫命令
 203           nack(1);   //等待應答
 204           outbyte(templ);  //寫地址
 205           nack(1);
 206           start();   //開始信號
 207           outbyte(IIC_READ|(temph<<1));   //讀命令
 208           nack(1);   //等待應答
 209           temp=inbyte();   //讀數據
 210           nack(0);   //無應答
 211           stop();    //停止信號
 212           SEN=1;
 213           SCL=1;
 214           SDA=1;
 215           return(temp);
 216          }
 217          */
 218          //=================================================
 219          //連寫函數
 220          //add為讀起始地址,ptr數據保存指針,writelen為寫入數據長度
 221          uchar writebyteseq(uint add,uchar *ptr,uint writelen)
 222          {
 223   1       //uchar temp;
 224   1       data uchar temph,templ;
 225   1      data uint i;
 226   1       temph=(uchar)(add/256);
 227   1       templ=(uchar)(add%256);
 228   1        if(!STE)
 229   1       return 0XFF;
 230   1       SEN=0;
 231   1       if(!STE)
 232   1       {
 233   2        SCL=1;
 234   2       SDA=1;
 235   2       SEN=1;
 236   2       return 0XFF;
 237   2       }
 238   1       start();   
 239   1       outbyte(IIC_WRITE|(temph<<1));  
 240   1       nack(1);  
 241   1       outbyte(templ);
C51 COMPILER V7.50   IIC                                                                   11/14/2007 11:29:07 PAGE 5   

 242   1       nack(1);
 243   1       for(i=0;i<writelen;i++)
 244   1       {
 245   2        outbyte(*(ptr+i));    
 246   2        SCL=0;
 247   2      SDA=1;
 248   2      SCL=1;
 249   2      SCL=0;
 250   2        //nack(1);
 251   2       }
 252   1      
 253   1       stop(); 
 254   1         SCL=1;
 255   1       SDA=1;
 256   1       SEN=1;
 257   1        return 0;
 258   1      }
 259          //=================================================
 260          //連讀函數
 261          //add為讀起始地址,ptr數據保存指針,writelen為讀出數據長度
 262          uchar readbyteseq(uint add,uchar *ptr,uint readlen)
 263          {
 264   1      
 265   1      xdata uchar temph,templ;
 266   1       uint i;
 267   1      
 268   1       temph=(uchar)(add/256);
 269   1       templ=(uchar)(add%256);
 270   1         if(!STE)
 271   1         {
 272   2           SCL=1;
 273   2       SDA=1;
 274   2       SEN=1;
 275   2       return 0XFF;
 276   2       }
 277   1       SEN=0;
 278   1       if(!STE)
 279   1       {
 280   2        SCL=1;
 281   2       SDA=1;
 282   2       SEN=1;
 283   2       return 0XFF;
 284   2       }
 285   1       start();
 286   1       outbyte(IIC_WRITE|(temph<<1));
 287   1       nack(1);
 288   1       outbyte(templ);
 289   1       nack(1);
 290   1       start();
 291   1       outbyte(IIC_READ|(temph<<1));
 292   1       nack(1);
 293   1       for(i=0;i<readlen-1;i++)
 294   1       {
 295   2        *(ptr+i)=inbyte();
 296   2        ack();
 297   2        
 298   2       }
 299   1       *(ptr+readlen-1)=inbyte();
 300   1       nack(0);
 301   1       stop();
 302   1         SCL=1;
 303   1       SDA=1;
C51 COMPILER V7.50   IIC                                                                   11/14/2007 11:29:07 PAGE 6   

 304   1       SEN=1;
 305   1       return 0;
 306   1      }
 307          
 308          
 309          void delay10ms(void)
 310          {
 311   1      xdata int i;
 312   1      for(i=0;i<1000;i++)
 313   1      ;
 314   1      }
 315          
 316          
 317          
 318          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    517    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   2232       4
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      1      14
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      3    ----
END OF MODULE INFORMATION.


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

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美aⅴ...| 麻豆视频一区二区| 午夜精品视频在线观看| 久久激情五月激情| 91猫先生在线| 久久久久九九视频| 亚洲国产毛片aaaaa无费看 | 国产精品婷婷午夜在线观看| 一区二区三区久久| 国产成人免费视| 欧美一区二区精美| 亚洲国产一区二区三区青草影视| 狠狠色综合色综合网络| 欧美日韩一区二区三区在线看| 久久影院电视剧免费观看| 亚洲成人在线免费| 色老头久久综合| 中文字幕免费一区| 国产一区二区剧情av在线| 欧美日韩亚洲综合一区| 亚洲三级久久久| 成人在线综合网| 久久综合九色综合欧美就去吻| 亚洲成av人片一区二区三区| 色偷偷88欧美精品久久久| 国产精品系列在线| 国产精品一区二区x88av| 欧美xxxxxxxx| 免费观看一级特黄欧美大片| 欧美精品粉嫩高潮一区二区| 亚洲国产精品久久久久秋霞影院| 波多野结衣中文字幕一区二区三区| 26uuu国产电影一区二区| 精品中文字幕一区二区小辣椒| 欧美电影一区二区三区| 午夜不卡av在线| 在线播放一区二区三区| 日韩主播视频在线| 日韩亚洲欧美综合| 日韩av在线发布| 6080午夜不卡| 另类成人小视频在线| 欧美xfplay| 国产麻豆视频一区| 国产女主播一区| 波多野结衣中文字幕一区| 亚洲欧美综合色| 日本丶国产丶欧美色综合| 一区二区国产视频| 日韩一级黄色片| 高清在线不卡av| 中文字幕综合网| 欧美三级三级三级| 久久精品国产澳门| 国产精品乱码久久久久久| av动漫一区二区| 亚欧色一区w666天堂| 日韩一区二区三区精品视频 | 欧美日韩激情在线| 经典三级一区二区| 国产精品福利一区| 欧美吞精做爰啪啪高潮| 久久国产婷婷国产香蕉| 国产精品私房写真福利视频| 91蜜桃视频在线| 日韩国产精品久久久久久亚洲| 亚洲精品一区二区三区四区高清| 粉嫩av亚洲一区二区图片| 亚洲精品国产精华液| 欧美一区二区三区人| a在线播放不卡| 偷偷要91色婷婷| 日本一区二区不卡视频| 精品视频一区三区九区| 国产毛片精品国产一区二区三区| 亚洲精品视频在线观看免费| 日韩欧美国产午夜精品| 色婷婷亚洲婷婷| 韩国一区二区视频| 一区二区三区四区在线| 久久久噜噜噜久久人人看| 在线观看国产91| 国产传媒一区在线| 免费人成在线不卡| 亚洲欧美激情插| 国产无遮挡一区二区三区毛片日本| 色偷偷久久一区二区三区| 国产美女一区二区三区| 天天av天天翘天天综合网 | 国产精品久久久久久久久快鸭| 欧美剧在线免费观看网站 | 理论片日本一区| 亚洲午夜私人影院| aaa欧美色吧激情视频| 国产欧美日韩三区| 26uuu国产一区二区三区 | 亚洲电影在线免费观看| 欧美激情综合在线| 久久久久国产精品麻豆ai换脸| 欧美精品18+| 色婷婷综合久久久久中文一区二区 | 精品一区二区免费在线观看| 亚洲韩国一区二区三区| 国产精品卡一卡二卡三| 久久免费国产精品| 日韩欧美国产1| 欧美一区二区三区免费大片 | 国产乱子伦一区二区三区国色天香| 九九精品视频在线看| 精品国产网站在线观看| 欧美酷刑日本凌虐凌虐| 欧美色网一区二区| 色欲综合视频天天天| 92精品国产成人观看免费| 国产91精品精华液一区二区三区| 精品在线亚洲视频| 免费成人在线观看视频| 蜜乳av一区二区三区| 日韩福利电影在线| 男女男精品网站| 日本中文一区二区三区| 日韩激情视频在线观看| 天天影视网天天综合色在线播放| 午夜私人影院久久久久| 午夜a成v人精品| 日本欧美在线观看| 久久精品99久久久| 国产一区二区在线视频| 精品系列免费在线观看| 国产乱码字幕精品高清av | 狠狠色狠狠色综合| 91在线看国产| 91在线你懂得| 欧美亚洲综合色| 欧美群妇大交群中文字幕| 欧美精品精品一区| 精品久久久久久综合日本欧美| 欧美一级夜夜爽| 久久亚洲综合av| 国产精品欧美经典| 一区二区不卡在线播放 | 精品国产乱码久久久久久浪潮| 精品国产三级a在线观看| 国产午夜精品一区二区| 18欧美亚洲精品| 天天av天天翘天天综合网色鬼国产 | 国产精品久久久久久久久免费相片| 国产一区二区不卡在线| 欧美自拍偷拍一区| 一区二区欧美在线观看| 欧美韩国日本一区| 亚洲人成小说网站色在线| 亚洲美女视频一区| 日韩电影在线一区二区三区| 精品在线播放免费| 国产很黄免费观看久久| 日本道色综合久久| 欧美一区二区在线视频| 日韩精品影音先锋| 久久久蜜桃精品| 国产在线视视频有精品| 一二三四社区欧美黄| 蜜臀av一区二区在线免费观看| 久久精品一区二区三区不卡| 精品国产免费一区二区三区四区| 在线观看视频一区| 欧美三级在线看| 国产欧美日本一区视频| 午夜av电影一区| 国产白丝网站精品污在线入口| 在线观看视频91| 国产婷婷一区二区| 日韩av中文字幕一区二区| 91亚洲永久精品| 久久久久久久久一| 天堂va蜜桃一区二区三区| www.视频一区| 欧美videos中文字幕| 亚洲综合在线观看视频| 福利一区福利二区| 欧美一区二区三区免费在线看| 亚洲三级电影全部在线观看高清| 久久精品国产亚洲一区二区三区| 91豆麻精品91久久久久久| 久久久久国产精品麻豆ai换脸 | 国产ts人妖一区二区| 日韩精品中文字幕一区二区三区| 久久一区二区视频| 日韩区在线观看| 欧美激情中文不卡| 精品一区在线看| 欧美男生操女生| 亚洲一区在线视频| 91网址在线看| 中文字幕一区二区三区乱码在线 | 国产亚洲精品免费| 久久99热狠狠色一区二区| 91麻豆精品国产91| 五月天网站亚洲| 在线观看中文字幕不卡|