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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? isp_falsh.lst

?? LED控制
?? LST
字號(hào):
C51 COMPILER V8.02   ISP_FALSH                                                             03/27/2009 09:21:37 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE ISP_FALSH
OBJECT MODULE PLACED IN ISP_FALSH.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ISP_FALSH.C BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <STC12C5410.H>
   2          #include <intrins.h>        /* use _nop_() function */
   3          //sfr16 DPTR = 0x82;
   4          
   5          
   6          /* 定義命令 */
   7          #define READ_AP_and_Data_Memory_Command                         0x01        /*  字節(jié)讀數(shù)據(jù)存儲(chǔ)區(qū)   */
   8          #define PROGRAM_AP_and_Data_Memory_Command          0x02        /*  字節(jié)編程數(shù)據(jù)存儲(chǔ)區(qū) */
   9          #define SECTOR_ERASE_AP_and_Data_Memory_Command     0x03        /*  扇區(qū)擦除數(shù)據(jù)存儲(chǔ)區(qū) */
  10          
  11          typedef     unsigned char       INT8U;          /* 8 bit 無(wú)符號(hào)整型  */
  12          typedef     unsigned int    INT16U;     /* 16 bit 無(wú)符號(hào)整型 */
  13          //#define               DELAY_CONST         60000
  14          
  15          /* 定義常量 */
  16          #define ERROR   0
  17          #define OK      1
  18          
  19          /* 定義Flash 操作等待時(shí)間 */
  20          #define        MCU_CLOCK_40MHz
  21          //#define         MCU_CLOCK_20MHz
  22          //#define        MCU_CLOCK_10MHz
  23          //#define        MCU_CLOCK_5MHz
  24          #ifdef MCU_CLOCK_40MHz
  25                  #define WAIT_TIME        0x00
  26          #endif
  27          #ifdef MCU_CLOCK_20MHz
                      #define WAIT_TIME        0x01
              #endif
  30          #ifdef MCU_CLOCK_10MHz
                      #define WAIT_TIME        0x02
              #endif
  33          #ifdef MCU_CLOCK_5MHz
                      #define WAIT_TIME        0x03
              #endif
  36          
  37          /* 調(diào)試控制項(xiàng) */
  38          //#define         DEBUG_STC89C_LE58RD+
  39          
  40          #define         DEBUG_STC89C_LE52RC
  41          
  42          //#define USED_BYTE_QTY_IN_ONE_SECTOR                1
  43          //#define USED_BYTE_QTY_IN_ONE_SECTOR                2
  44          //#define USED_BYTE_QTY_IN_ONE_SECTOR                4
  45          //#define USED_BYTE_QTY_IN_ONE_SECTOR                8
  46          //#define USED_BYTE_QTY_IN_ONE_SECTOR                16
  47          #define USED_BYTE_QTY_IN_ONE_SECTOR                32
  48          //#define USED_BYTE_QTY_IN_ONE_SECTOR                64
  49          //#define USED_BYTE_QTY_IN_ONE_SECTOR                128
  50          //#define USED_BYTE_QTY_IN_ONE_SECTOR                256
  51          //#define USED_BYTE_QTY_IN_ONE_SECTOR                512
  52          
  53          INT8U xdata protect_buffer[USED_BYTE_QTY_IN_ONE_SECTOR];
  54          
  55          
C51 COMPILER V8.02   ISP_FALSH                                                             03/27/2009 09:21:37 PAGE 2   

  56          /* 打開 ISP,IAP 功能 */
  57          void ISP_IAP_enable(void)
  58          {
  59   1              EA      =       0;      /* 關(guān)中斷 */
  60   1              ISP_CONTR       =       ISP_CONTR & 0x18;       /* 0001,1000 */
  61   1              ISP_CONTR       =       ISP_CONTR | WAIT_TIME;
  62   1              ISP_CONTR       =       ISP_CONTR | 0x80;       /* 1000,0000 */
  63   1      }
  64          
  65          /* 關(guān)閉 ISP,IAP 功能 */
  66          void ISP_IAP_disable(void)
  67          {
  68   1              ISP_CONTR       =       ISP_CONTR & 0x7f;       /* 0111,1111 */
  69   1              ISP_TRIG        =       0x00;
  70   1              EA                      =   1;                  /* 開中斷 */
  71   1      }
  72          
  73          /* 字節(jié)讀 */
  74          extern INT8U byte_read(INT16U byte_addr)
  75          {
  76   1              ISP_ADDRH       =       (INT8U)(byte_addr >> 8);
  77   1              ISP_ADDRL       =       (INT8U)(byte_addr & 0x00ff);
  78   1      
  79   1              ISP_CMD         =       ISP_CMD &       0xf8;        /* 1111,1000 */
  80   1              ISP_CMD         =       ISP_CMD |       READ_AP_and_Data_Memory_Command;        /* 0000,0001 */
  81   1      
  82   1              ISP_IAP_enable();
  83   1      
  84   1              ISP_TRIG        =       0x46;
  85   1              ISP_TRIG        =       0xb9;
  86   1              _nop_();
  87   1      
  88   1              ISP_IAP_disable();
  89   1              return (ISP_DATA);
  90   1      }
  91          
  92          
  93          /* 寫數(shù)據(jù)進(jìn)數(shù)據(jù)Flash存儲(chǔ)器(EEPROM), 只在同一個(gè)扇區(qū)內(nèi)寫,保留同一扇區(qū)中不需修改的數(shù)據(jù)    */
  94          /* begin_addr,被寫數(shù)據(jù)Flash開始地址;counter,連續(xù)寫多少個(gè)字節(jié); array[],數(shù)據(jù)來源               */
  95          extern INT8U write_flash_with_protect_in_one_sector(INT16U begin_addr, INT16U counter, INT8U array[])
  96          {
  97   1              INT16U  i       =       0;
  98   1              INT16U  in_sector_begin_addr    =       0;
  99   1              INT16U  sector_addr     =       0;
 100   1              INT16U  byte_addr       =       0;
 101   1      
 102   1              /* 判是否是有效范圍,此函數(shù)不允許跨扇區(qū)操作 */
 103   1              if(counter > USED_BYTE_QTY_IN_ONE_SECTOR)
 104   1                      return ERROR;
 105   1              in_sector_begin_addr =        begin_addr & 0x01ff;         /* 0000,0001,1111,1111 */
 106   1              /* 假定從扇區(qū)的第0個(gè)字節(jié)開始,到USED_BYTE_QTY_IN_ONE_SECTOR-1個(gè)字節(jié)結(jié)束,后面部分不用,程序易編寫 */
 107   1              if( (in_sector_begin_addr + counter) > USED_BYTE_QTY_IN_ONE_SECTOR )
 108   1                      return ERROR;
 109   1      
 110   1              /* 將該扇區(qū)數(shù)據(jù) 0 - (USED_BYTE_QTY_IN_ONE_SECTOR-1) 字節(jié)數(shù)據(jù)讀入緩沖區(qū)保護(hù) */
 111   1              sector_addr             =       (begin_addr & 0xfe00);  /* 1111,1110,0000,0000; 取扇區(qū)地址              */
 112   1              byte_addr               =   sector_addr;                        /* 扇區(qū)地址為扇區(qū)首字節(jié)地址                             */
 113   1      
 114   1              ISP_IAP_enable();
 115   1              for(i = 0; i < USED_BYTE_QTY_IN_ONE_SECTOR; i++)
 116   1              {
 117   2                      ISP_ADDRH       =       (INT8U)(byte_addr >> 8);
C51 COMPILER V8.02   ISP_FALSH                                                             03/27/2009 09:21:37 PAGE 3   

 118   2                      ISP_ADDRL       =       (INT8U)(byte_addr & 0x00ff);
 119   2      
 120   2                      ISP_CMD         =       ISP_CMD &       0xf8;        /* 1111,1000 */
 121   2                      ISP_CMD         =       ISP_CMD |       READ_AP_and_Data_Memory_Command;        /* 0000,0001 */
 122   2      
 123   2                      ISP_TRIG        =       0x46;
 124   2                      ISP_TRIG        =       0xb9;
 125   2                      _nop_();
 126   2      
 127   2                      protect_buffer[i]       =       ISP_DATA;
 128   2                      byte_addr++;
 129   2              }
 130   1      
 131   1              /* 將要寫入的數(shù)據(jù)寫入保護(hù)緩沖區(qū)的相應(yīng)區(qū)域,其余部分保留 */
 132   1              for(i = 0; i < counter; i++)
 133   1              {
 134   2                      protect_buffer[in_sector_begin_addr] = array[i];
 135   2                      in_sector_begin_addr++;
 136   2              }
 137   1      
 138   1              /* 擦除 要修改/寫入 的扇區(qū) */
 139   1              ISP_ADDRH       =       (INT8U)(sector_addr >> 8);
 140   1              ISP_ADDRL       =       0x00;
 141   1              ISP_CMD         =       ISP_CMD &       0xf8;        /* 1111,1000 */
 142   1              ISP_CMD         =       ISP_CMD |       SECTOR_ERASE_AP_and_Data_Memory_Command;        /* 0000,0011 */
 143   1      
 144   1              ISP_TRIG        =       0x46;        /* 觸發(fā)ISP_IAP命令 */
 145   1              ISP_TRIG        =       0xb9;        /* 觸發(fā)ISP_IAP命令 */
 146   1              _nop_();
 147   1      
 148   1              /* 將保護(hù)緩沖區(qū)的數(shù)據(jù)寫入 Data Flash, EEPROM */
 149   1              byte_addr       =   sector_addr;                        /* 扇區(qū)地址為扇區(qū)首字節(jié)地址     */
 150   1              for(i = 0; i< USED_BYTE_QTY_IN_ONE_SECTOR; i++)
 151   1              {
 152   2                      /* 寫一個(gè)字節(jié) */
 153   2                      ISP_ADDRH       =       (INT8U)(byte_addr >> 8);
 154   2                      ISP_ADDRL       =       (INT8U)(byte_addr & 0x00ff);
 155   2                      ISP_DATA        =       protect_buffer[i];
 156   2                      ISP_CMD         =       ISP_CMD &       0xf8;        /* 1111,1000 */
 157   2                      ISP_CMD         =       ISP_CMD |       PROGRAM_AP_and_Data_Memory_Command;             /* 0000,0010 */
 158   2      
 159   2                      ISP_TRIG        =       0x46;        /* 觸發(fā)ISP_IAP命令 */
 160   2                      ISP_TRIG        =       0xb9;        /* 觸發(fā)ISP_IAP命令 */
 161   2                      _nop_();
 162   2      
 163   2                      /* 讀回來 */
 164   2                      ISP_DATA        =       0x00;
 165   2      
 166   2                      ISP_CMD         =       ISP_CMD &       0xf8;        /* 1111,1000 */
 167   2                      ISP_CMD         =       ISP_CMD |       READ_AP_and_Data_Memory_Command;        /* 0000,0001 */
 168   2      
 169   2                      ISP_TRIG        =       0x46;        /* 觸發(fā)ISP_IAP命令 */
 170   2                      ISP_TRIG        =       0xb9;        /* 觸發(fā)ISP_IAP命令 */
 171   2                      _nop_();
 172   2      
 173   2                      /*  比較對(duì)錯(cuò) */
 174   2                      if(ISP_DATA != protect_buffer[i])
 175   2                      {
 176   3                              ISP_IAP_disable();
 177   3                              return ERROR;
 178   3              }
 179   2              byte_addr++;
C51 COMPILER V8.02   ISP_FALSH                                                             03/27/2009 09:21:37 PAGE 4   

 180   2              }
 181   1              ISP_IAP_disable();
 182   1              return OK;
 183   1      }
 184          
 185          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    361    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =     32    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      11
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产喂奶挤奶一区二区三区| 亚洲精品中文在线观看| 色综合久久中文字幕综合网| 免费在线观看视频一区| 自拍偷拍国产亚洲| 26uuu另类欧美亚洲曰本| 欧美午夜精品久久久久久超碰| 国产一区999| 日韩av一区二区在线影视| 亚洲精品国产第一综合99久久| 久久一区二区视频| 欧美一二三四区在线| 欧美日韩激情在线| 色婷婷综合中文久久一本| 不卡的电影网站| 国产福利一区二区| 九九九久久久精品| 男女性色大片免费观看一区二区| 亚洲欧美日韩国产综合| 国产精品久久三| 日本一区二区成人在线| 久久久久久久久久久电影| 日韩欧美第一区| 日韩一级精品视频在线观看| 欧美性大战xxxxx久久久| 欧美在线free| 色老汉一区二区三区| 91视频在线观看| 成人动漫一区二区在线| 国产精品一二二区| 国产成人免费在线观看不卡| 国产一区二区免费在线| 狠狠色狠狠色综合| 精品一区二区免费在线观看| 久久精品国产久精国产爱| 视频一区二区三区在线| 午夜精品在线视频一区| 午夜精品久久久久久久| 亚洲一区二区三区国产| 亚洲综合色视频| 亚洲成人动漫一区| 婷婷国产在线综合| 日本亚洲三级在线| 日本v片在线高清不卡在线观看| 亚洲bt欧美bt精品777| 亚洲成人综合在线| 日韩成人一区二区三区在线观看| 香蕉加勒比综合久久| 免费在线观看精品| 国产乱淫av一区二区三区| 国产成人在线免费| 粉嫩13p一区二区三区| 99re亚洲国产精品| 欧美性色欧美a在线播放| 91精品国产综合久久蜜臀| 91麻豆精品国产91久久久久久| 欧美zozo另类异族| 国产精品国产三级国产三级人妇| 亚洲三级电影网站| 日韩精品视频网| 国产精品综合av一区二区国产馆| 成人av在线看| 欧美在线观看视频一区二区| 日韩视频免费观看高清在线视频| 日韩精品一区二区三区三区免费| 国产欧美日韩另类一区| 亚洲日本电影在线| 三级一区在线视频先锋| 国产一区二区中文字幕| 99久久伊人精品| 欧美乱妇15p| 久久久久久一二三区| 亚洲欧美日韩人成在线播放| 青青国产91久久久久久| 国产精品 日产精品 欧美精品| 色综合一个色综合| 欧美一区二区三区视频免费| 国产清纯白嫩初高生在线观看91| 亚洲国产精品欧美一二99| 国产精品夜夜爽| 欧美欧美欧美欧美首页| 国产日韩欧美一区二区三区综合| 亚洲一区在线观看免费| 国产一区 二区 三区一级| 色国产精品一区在线观看| 久久综合99re88久久爱| 亚洲精品大片www| 国产乱淫av一区二区三区| 欧美性猛交一区二区三区精品| 国产亚洲精品精华液| 亚洲sss视频在线视频| 丁香六月综合激情| 91精品国产综合久久久久久久| 日本一区二区三区高清不卡 | 欧美一级高清片在线观看| 国产午夜亚洲精品不卡| 午夜精品在线看| 色婷婷精品大在线视频| 久久久久亚洲蜜桃| 日韩vs国产vs欧美| 欧洲av一区二区嗯嗯嗯啊| 欧美激情资源网| 精品中文字幕一区二区| 欧美撒尿777hd撒尿| 中文字幕成人av| 国产在线看一区| 欧美一区二区三区在线观看| 一级女性全黄久久生活片免费| 成人免费视频一区二区| 久久久亚洲午夜电影| 蜜臀91精品一区二区三区 | 色综合久久久久久久久| 国产日本欧美一区二区| 精品一区二区在线观看| 69堂国产成人免费视频| 亚洲一区二区高清| 91视频com| 亚洲视频一区在线| 国产不卡高清在线观看视频| 久久免费电影网| 国产一区日韩二区欧美三区| 精品奇米国产一区二区三区| 免费一区二区视频| 5566中文字幕一区二区电影 | 亚洲主播在线播放| 色综合天天综合狠狠| 中文欧美字幕免费| 高清日韩电视剧大全免费| 国产日韩视频一区二区三区| 国产精品一区二区三区四区| 久久久久久**毛片大全| 国产剧情一区二区| 久久久亚洲高清| 国产91综合网| 中文字幕一区三区| 91免费国产在线观看| 亚洲欧美另类小说视频| 色一区在线观看| 亚洲一区影音先锋| 制服丝袜中文字幕一区| 日本va欧美va精品发布| 精品少妇一区二区三区在线视频| 捆绑紧缚一区二区三区视频| 欧美一级搡bbbb搡bbbb| 老司机精品视频线观看86| 亚洲精品一区二区在线观看| 国产91精品久久久久久久网曝门| 国产精品美女久久久久久久网站| 97精品国产露脸对白| 一区二区在线观看不卡| 欧美日韩在线播放三区四区| 日韩高清一区二区| 久久久久久久综合日本| www.在线成人| 亚洲在线视频一区| 91精品国产91久久久久久最新毛片| 精彩视频一区二区| 国产精品色在线观看| 91高清视频免费看| 日韩经典中文字幕一区| 久久久国产午夜精品| 99久久伊人精品| 日本午夜一区二区| 亚洲国产精品成人久久综合一区| 91丝袜呻吟高潮美腿白嫩在线观看| 亚洲电影视频在线| 欧美大片一区二区| 不卡欧美aaaaa| 日韩和欧美的一区| 国产三级精品三级在线专区| 欧亚洲嫩模精品一区三区| 奇米亚洲午夜久久精品| 久久精品视频网| 欧美色综合网站| 国产成人精品一区二| 洋洋成人永久网站入口| 精品国产一区二区三区忘忧草| 色综合久久中文综合久久牛| 久久国产精品色婷婷| 亚洲另类色综合网站| 日韩女优av电影在线观看| 91麻豆国产福利精品| 看电影不卡的网站| 夜夜爽夜夜爽精品视频| 久久精品欧美一区二区三区不卡 | 欧美在线观看视频一区二区三区| 精品在线一区二区三区| 一区二区三区日韩| 久久久久久毛片| 91精品午夜视频| 99这里只有久久精品视频| 久久国产精品99久久人人澡| 亚洲欧美另类久久久精品2019| 欧美精品一区二区三区很污很色的| 欧美自拍偷拍一区| 国产成人av福利| 久久成人羞羞网站| 偷拍与自拍一区| 亚洲精品久久久蜜桃| 国产精品日产欧美久久久久|