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

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

?? clock.lst

?? 門禁控制器源代碼
?? LST
?? 第 1 頁 / 共 2 頁
字號:
C51 COMPILER V7.07   CLOCK                                                                 09/14/2005 15:20:46 PAGE 1   


C51 COMPILER V7.07, COMPILATION OF MODULE CLOCK
OBJECT MODULE PLACED IN Clock.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Clock.c LARGE OPTIMIZE(9,SPEED) BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          //
   2          // I2C操作函數庫
   3          // I2C有關概念參見《MCS-51系列單片機應用及接口技術》P289
   4          //
   5          // idata=14
   6          
   7          #include "Global.h"
   8          
   9          ///////////////////////////////////////////////////////////////////////////////
  10          // 內部存儲區變量       0~128字節 直接尋址
  11          // 全局變量定義
  12          extern data  uchar cur_time[15];                // 系統當前時間顯示存儲區 XXXX年XX月XX日XX時XX分XX秒星期X
  13          extern data  uchar time[10];                    // 讀取時鐘存儲區                                       
  14          extern bdata bit ack;                                   // 時鐘I2C總線通信應答狀態
  15          
  16          //
  17          // 在I2C總線數據傳送過程中,定義了一種開始和結束信號(有時也稱啟動和停止信號),
  18          // 開始和結束信號的定義在I2C協議中具有十分重要的意義。當SCL為高電平時,SDA發生
  19          // 高到低跳變定義為開始信號;當SCL為高電平時,SDA發生低到高跳變定義為結束信號,
  20          // 開始和結束信號的定義參見《MCS-51系列單片機應用及接口技術》P291所示。開始和
  21          // 結束信號都是由主器件(這里是8051單片機)發出的。在開始信號以后,總線被認為
  22          // 是忙的。在結束信號后過一定時間,總線被認為是空閑的。如果連接在總線上的器件
  23          // 具有相應的硬件接口電路,開始和結束信號的檢測還比較容易,但是沒有這種硬件接
  24          // 口電路的微處理器必須在一個時鐘周期內至少2次采樣,SDA才能檢測到這種跳變。
  25          //
  26          
  27          
  28          //
  29          // 啟動I2C總線
  30          // 函數原型:void Start_I2c8563();
  31          // 功能:
  32          //              啟動I2C時鐘8563總線,即發送I2C起始條件
  33          //
  34          void Start_I2c8563()
  35          {
  36   1              SDA=1;                  // SDA維持高電平,準備發送起始信號
  37   1              SCL=1;                  // SCL為高電平,SDA由高變低,表明通信起始信號
  38   1              Some_NOP;               // SCL信號高電平維持至少4us,等待電平穩定
  39   1              SDA=0;                  // 發送起始信號,SDA下跳
  40   1              Some_NOP;               // 起始信號至少維持4.7us
  41   1              SCL=0;                  // 時鐘信號跳變
  42   1              Some_NOP;               // 等待一段時間
  43   1      }
  44          
  45          //
  46          // 結束I2C總線
  47          // 函數原型: void  Stop_I2c8563();  
  48          // 功能: 
  49          //              結束I2C總線,即發送I2C結束條件.
  50          //
  51          void Stop_I2c8563()
  52          {
  53   1              SDA=0;                  // SDA維持低電平,準備發送停止信號
  54   1              _Nop();
  55   1              SCL=1;                  // SCL信號高電平,SDA由低變高,表明通信停止信號
C51 COMPILER V7.07   CLOCK                                                                 09/14/2005 15:20:46 PAGE 2   

  56   1              Some_NOP;               // SCL信號高電平維持至少4us
  57   1              SDA=1;                  // 發送停止信號
  58   1              Some_NOP;               // 停止信號至少維持4us
  59   1      }
  60          
  61          
  62          //
  63          // 送到SDA線上的每個字節必須為8位長度,每次傳送的字節數是不受限制的,每個字節后
  64          // 面必須跟隨一個響應位。數據傳送時先傳送最高位。如果接收器不能接收下一個字節(
  65          // 例如正在處理一個內部中斷,在這個中斷處理完之前不能接收I2C總線上的數據字節),
  66          // 可以使時鐘保持低電平,迫使主處理器處于等待狀態。當從器件準備好接收下一個數據
  67          // 字節時就釋放SCL,以便數據繼續傳送。
  68          //
  69          // 接收器必須確認數據的接收,確認位相對于主器件產生一個時鐘在這個時鐘內發送器件
  70          // 釋放SDA線。接收器件在這個時鐘內必須將SDA拉成低電平,使SDA在該時鐘的高電平期間
  71          // 為穩定的低電平。
  72          // 通常,被尋址的接收器件必須在收到每個字節后發出響應信息。若一個從器件在處理一
  73          // 個實時事件不能接收數據時,從器件必須使SDA保持高電平。此時,主器件產生一個結
  74          // 束信號使傳送異常結束。
  75          // 在主器件接收的傳送中,主器件對最后一個數據字節不予確認,以對從發送器指出數據
  76          // 傳送的結束,從發送器釋放SDA線,使主器件能產生一個結束信號。
  77          //
  78          
  79          // 字節數據傳送函數,,向從器件寫一個字節
  80          // 函數原型: void  SendByte8563(uchar c);
  81          // 功能: 
  82          //              將數據c發送出去,可以是地址,也可以是數據,發完后等待應答,并對
  83          //              此狀態位進行操作.(不應答或非應答都使ack=0 假)     
  84          //              發送數據正常,ack=1; ack=0表示被控器無應答或損壞。
  85          //
  86          void  SendByte8563(uchar c)
  87          {
  88   1              idata uchar i;
  89   1      
  90   1              for(i=0;i<8;i++)// 每字節必須8位長度
  91   1              {
  92   2                      if((c<<i)&0x80)
  93   2                      {
  94   3                              SDA=1;                                          // 數據最高位先發送,數據1
  95   3                      }
  96   2                      else
  97   2                      {
  98   3                              SDA=0;                                          // 數據0
  99   3                      }
 100   2                      _Nop();
 101   2                      SCL=1;                                                  // 每個主器件在SCL線上產生時鐘,數據僅在
 102   2                                                                                      // 時鐘的高電平期間有效,鎖存數據。
 103   2                      Some_NOP;                                       // 保證SCL時鐘高電平至少為4us     
 104   2                      SCL=0;                                                  // 時鐘低電平,準備寫入下一個字節
 105   2                      _Nop();                                                 // 等待
 106   2                      _Nop();
 107   2              }
 108   1              
 109   1              _Nop();
 110   1              _Nop();
 111   1              SDA=1;                                                          // 8位數據發送完畢,檢測從器件響應
 112   1              _Nop();
 113   1              _Nop();   
 114   1              SCL=1;                                                          // SCL為高電平,發送第9時鐘作為應答信號
 115   1              _Nop();
 116   1              _Nop();
 117   1              _Nop();
C51 COMPILER V7.07   CLOCK                                                                 09/14/2005 15:20:46 PAGE 3   

 118   1              if(SDA==1)
 119   1                      ack=0;                                                  // 從器件保持SDA為高電平,發送異常  
 120   1              else
 121   1                      ack=1;                                                  // 從器件拉低SDA為低電平,發送正常
 122   1      
 123   1              SCL=0;                                                          // SCL為低電平,清除時鐘
 124   1              _Nop();
 125   1              _Nop();
 126   1      }
 127          
 128          //
 129          // 字節數據傳送函數,讀出從器件一個字節
 130          // 函數原型: uchar  RcvByte();
 131          // 功能:
 132          //              用來接收從器件傳來的數據,并判斷總線錯誤(不發應答信號),
 133          //              發完后請用應答函數。  
 134          //
 135          uchar  RcvByte8563()
 136          {
 137   1              idata uchar temp=0;
 138   1              idata uchar i;
 139   1      
 140   1              SDA=1;                                          // 準備接收數據
 141   1              for(i=0;i<8;i++)
 142   1              {
 143   2                      _Nop();           
 144   2                      SCL=0;                                  // SCL時鐘下跳準備接收數據
 145   2                      Some_NOP;                               // SCL時鐘信號,最小低電平為4.7us
 146   2                      SCL=1;                                  // 時鐘上跳
 147   2                      _Nop();                                 // 等待數據出現
 148   2                      _Nop();
 149   2                      temp=temp<<1;   // 數據移位
 150   2                      if(SDA==1)
 151   2                              temp=temp+1;// 接收數據位
 152   2                      _Nop();                                 // 接收下一位數據
 153   2                      _Nop(); 
 154   2              }
 155   1      
 156   1              SCL=0;                                          // 準備發送結束信號 
 157   1              _Nop();
 158   1              _Nop();
 159   1              return temp;                    // 返回接收到的字節
 160   1      }
 161          
 162          //
 163          // 應答子函數
 164          // 原型:  void Ack_I2c8563(bit a);
 165          // 功能:
 166          //              主控器進行應答信號,(可以是應答或非應答信號)
 167          //
 168          void Ack_I2c8563(bit a)
 169          {
 170   1              if(a==0)
 171   1                      SDA=0;                                  // 發應答信號

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美色中文字幕| 欧美日韩精品三区| 亚洲精品一区二区精华| 国产美女娇喘av呻吟久久| 久久精品视频免费| 色天天综合色天天久久| 亚洲电影一区二区三区| 欧美在线不卡视频| 国产一区二区影院| 激情成人午夜视频| 日本sm残虐另类| 欧美极品aⅴ影院| 欧美日本一区二区三区四区| 欧美丝袜第三区| 911国产精品| yourporn久久国产精品| 免费观看在线综合色| 九九视频精品免费| 日本最新不卡在线| 最新国产成人在线观看| 日韩欧美成人激情| 欧美日韩精品系列| 欧美成人伊人久久综合网| 欧美亚州韩日在线看免费版国语版| 日本国产一区二区| 国产suv精品一区二区883| 日本不卡的三区四区五区| 精品综合久久久久久8888| 成人国产一区二区三区精品| 国产一区久久久| 91在线无精精品入口| 成人黄色片在线观看| 91黄色免费观看| 精品免费日韩av| 亚洲少妇中出一区| 久久国产剧场电影| 麻豆精品视频在线| 看片网站欧美日韩| 99re8在线精品视频免费播放| 欧美日韩1234| 综合电影一区二区三区| 欧美aⅴ一区二区三区视频| 国产传媒欧美日韩成人| 国产精品中文字幕一区二区三区| 国产在线精品一区在线观看麻豆| 99亚偷拍自图区亚洲| 精品粉嫩超白一线天av| 夜夜嗨av一区二区三区网页| 亚洲精选视频免费看| 一区二区三区久久| 国产精品自拍av| 日韩一区二区影院| 久久久久成人黄色影片| 国产精品嫩草影院com| 国产精品护士白丝一区av| 亚洲欧洲成人精品av97| 亚洲一区二区三区四区在线免费观看| 尤物在线观看一区| 国产成人精品亚洲午夜麻豆| 欧美一区二区三区人| 欧美精品一区二区三区在线| 亚洲国产一区二区视频| 成人av在线一区二区三区| 久久综合丝袜日本网| 国产亚洲欧洲997久久综合| 五月天欧美精品| 久久66热re国产| 在线播放日韩导航| 久久久久久亚洲综合影院红桃| 日韩av电影免费观看高清完整版在线观看| av中文字幕在线不卡| 欧美高清在线视频| 丰满岳乱妇一区二区三区| 国产视频在线观看一区二区三区| 国产尤物一区二区| 久久综合久久99| 国产成人免费视频网站高清观看视频| 欧美videossexotv100| 免费精品视频在线| 欧美精品一区二区三区很污很色的| 免费在线一区观看| 日韩一级欧美一级| 国模娜娜一区二区三区| 久久久久久久免费视频了| 国产尤物一区二区| 亚洲国产成人一区二区三区| 成人av影院在线| 一区二区在线观看视频 | 日韩成人一区二区| 欧美一区二区三区在线看| 奇米888四色在线精品| 欧美成人乱码一区二区三区| 精品午夜久久福利影院| 国产午夜精品久久| 色综合中文字幕国产 | 亚洲免费观看高清完整版在线观看 | 国产精品免费观看视频| 99re这里都是精品| 一区二区三区在线观看视频| 欧美日韩色一区| 亚洲人成人一区二区在线观看 | 丝瓜av网站精品一区二区| 国产成a人无v码亚洲福利| 国产精品毛片无遮挡高清| 色综合久久九月婷婷色综合| 水蜜桃久久夜色精品一区的特点 | 91精品国产高清一区二区三区 | 国产精品久久久久久亚洲伦 | 国产成人亚洲综合a∨婷婷| 国产精品第四页| 欧美精选一区二区| 国产精品538一区二区在线| 亚洲自拍偷拍九九九| 亚洲精品在线三区| 在线免费观看视频一区| 久久成人18免费观看| 亚洲欧美日韩国产手机在线| 91麻豆精品国产自产在线| 成人免费毛片高清视频| 国产女同性恋一区二区| 国产成人综合网| 亚洲国产精品久久一线不卡| 久久亚洲一级片| 欧美影院午夜播放| 成人在线综合网| 美腿丝袜亚洲色图| 亚洲精选视频免费看| 欧美激情一区在线观看| 337p亚洲精品色噜噜噜| 日本韩国一区二区三区| 成人免费看视频| 毛片av中文字幕一区二区| 国产精品久久毛片a| 精品国产伦一区二区三区免费| 欧美在线观看一二区| 大白屁股一区二区视频| 精品无人码麻豆乱码1区2区| 亚洲444eee在线观看| 夜夜揉揉日日人人青青一国产精品| 国产精品看片你懂得| 久久久久亚洲综合| 日韩欧美专区在线| 在线播放国产精品二区一二区四区 | 欧美电影免费观看高清完整版在 | 久久综合狠狠综合久久激情| 欧美日韩aaaaaa| 4438亚洲最大| 欧美一区二区三区免费观看视频| 欧美伊人精品成人久久综合97| 色94色欧美sute亚洲线路一ni| 北岛玲一区二区三区四区| aaa欧美色吧激情视频| av中文字幕不卡| 91原创在线视频| 免费观看久久久4p| 日韩精品1区2区3区| 日韩vs国产vs欧美| 日韩精品乱码av一区二区| 偷偷要91色婷婷| 久久国产日韩欧美精品| 麻豆精品国产传媒mv男同| 国产做a爰片久久毛片| 国产乱妇无码大片在线观看| 国产精品中文字幕日韩精品| www.日韩大片| 色拍拍在线精品视频8848| 欧美亚洲一区二区三区四区| 91精品国产91久久久久久一区二区| 91精品国产综合久久久久| 日韩午夜av一区| 久久久久综合网| 亚洲女同女同女同女同女同69| 亚洲一区二区高清| 久久福利视频一区二区| 国产高清一区日本| 一本久久综合亚洲鲁鲁五月天| 欧美日韩中文字幕一区二区| 56国语精品自产拍在线观看| 精品久久久久久久久久久院品网 | 国产麻豆午夜三级精品| 99精品视频中文字幕| 欧美在线你懂的| 久久一区二区三区国产精品| 国产精品久久久久久久久久久免费看 | 精品国产乱码91久久久久久网站| 国产亚洲综合av| 一区二区三区视频在线观看| 毛片一区二区三区| 99在线精品视频| 欧美成va人片在线观看| 国产精品久久久久aaaa| 亚洲成av人片一区二区梦乃| 国产一区日韩二区欧美三区| 99久久久久免费精品国产| 4438x亚洲最大成人网| 国产精品九色蝌蚪自拍| 久久av资源站| 欧美日韩国产中文| 国产精品久久久久毛片软件| 麻豆免费精品视频|