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

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

?? loader_f02x.lst

?? C8051F單片機在系統編程和在應用編程實例
?? LST
?? 第 1 頁 / 共 2 頁
字號:
C51 COMPILER V7.50   LOADER_F02X                                                           09/07/2007 14:28:22 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE LOADER_F02X
OBJECT MODULE PLACED IN loader_F02x.OBJ
COMPILER INVOKED BY: E:\Keil\C51\BIN\C51.EXE loader_F02x.c DB OE

line level    source

   1          //-----------------------------------------------------------------------------
   2          // loader_F02x.c
   3          //-----------------------------------------------------------------------------
   4          // Copyright 2002 Cygnal Integrated Products, Inc.
   5          // 交互選擇性固件刷新程序,針對BTF020開發板做了程序改動;針對一些keil c語言函數做了注釋說明
   6          // AUTH: 鐘磊
   7          // DATE: 04 sep 07
   8          //
   9          // This program shows an example 'selective code loader' using the 'F02x. It 
  10          // designates the FLASH page at 0x1000 for the code loaded through the UART. 
  11          // 
  12          // Control Function:
  13          //
  14          // The system is controlled via the hardware UART, operating at a baud rate
  15          // determined by the constant <BAUDRATE>, using Timer1 overflows as the baud
  16          // rate source.
  17          //
  18          // Received File Type:
  19          //
  20          // This example receives Intel HEX files which are OMF51 (linker output files)
  21          // passed through the OH51 utility in the 'CYGNAL\IDEfiles\C51\Bin' folder. 
  22          // 
  23          // Note: Because this program writes to FLASH, the MONEN pin should be tied 
  24          //       high.
  25          //
  26          // Target: C8051F02x
  27          // Tool chain: KEIL C51 6.03 / KEIL EVAL C51
  28          //
  29          
  30          //-----------------------------------------------------------------------------
  31          // Includes
  32          //-----------------------------------------------------------------------------
  33          #include <c8051f020.h>                 // SFR declarations
  34          #include <stdio.h>                     // printf() and getchar()
  35          #include <ctype.h>                     // tolower() and toint()
  36          
  37          //-----------------------------------------------------------------------------
  38          // 16-bit SFR Definitions for 'F02x
  39          //-----------------------------------------------------------------------------
  40          sfr16 DP       = 0x82;                 // data pointer
  41          sfr16 TMR3RL   = 0x92;                 // Timer3 reload value
  42          sfr16 TMR3     = 0x94;                 // Timer3 counter
  43          sfr16 ADC0     = 0xbe;                 // ADC0 data
  44          sfr16 ADC0GT   = 0xc4;                 // ADC0 greater than window
  45          sfr16 ADC0LT   = 0xc6;                 // ADC0 less than window
  46          sfr16 RCAP2    = 0xca;                 // Timer2 capture/reload
  47          sfr16 T2       = 0xcc;                 // Timer2
  48          sfr16 RCAP4    = 0xe4;                 // Timer4 capture/reload
  49          sfr16 T4       = 0xf4;                 // Timer4
  50          sfr16 DAC0     = 0xd2;                 // DAC0 data
  51          sfr16 DAC1     = 0xd5;                 // DAC1 data
  52          
  53          //-----------------------------------------------------------------------------
  54          // Global CONSTANTS
  55          //-----------------------------------------------------------------------------
C51 COMPILER V7.50   LOADER_F02X                                                           09/07/2007 14:28:22 PAGE 2   

  56          #define TRUE         1
  57          #define FALSE        0
  58          
  59          #define SYSCLK       22118400          // SYSCLK frequency in Hz
  60          #define BAUDRATE     115200           // Baud rate of UART in bps
  61          
  62          sbit LED = P2^4;                       // LED='1' means ON
  63          sbit SW2 = P2^0;                       // SW2='0' 表示按鍵按下
  64          
  65          //-----------------------------------------------------------------------------
  66          // Reserved Memory Space
  67          //-----------------------------------------------------------------------------
  68          
  69          char reserved_memory_bank[2] _at_ 0x08;// This memory bank is used by the
  70                                                 // functions that will be loaded 
  71                                                 // through the UART.
  72                                                 // The memory bank location and size
  73                                                 // are based on values from the M51 map
  74                                                 // file generated when the loaded code
  75                                                 // is linked.
  76                                                                                     //保留數據區的大小有待刷程序所使用的數據區
  77                                                                                     //大小決定,可以查看M51文件得到
  78          
  79          //-----------------------------------------------------------------------------
  80          // Function PROTOTYPES
  81          //-----------------------------------------------------------------------------
  82          
  83          void main (void);
  84          
  85          // Support Subroutines
  86          void print_menu(void);
  87          void erase_flash_page(void);
  88          void receive_code(void);
  89          unsigned char hex2char();
  90          
  91          // Initialization Subroutines
  92          void SYSCLK_Init (void);
  93          void PORT_Init (void);
  94          void UART0_Init (void);
  95          
  96          //-----------------------------------------------------------------------------
  97          // Global VARIABLES
  98          //-----------------------------------------------------------------------------
  99          
 100          #define input_str_len 4                // buffer to hold characters entered               
 101          char input_str[input_str_len];         // at the command prompt
 102          
 103          void (*f)();                           // function pointer declaration
 104          
 105          bit code_erased = FALSE;               // flag used to indicate that the FLASH
 106                                                 // erase operation is complete
 107          bit f_valid = FALSE;                   // flag to indicate that the FLASH 
 108                                                 // programming operation is complete
 109                                                                                     // 標志先置零
 110          
 111          //-----------------------------------------------------------------------------
 112          // MAIN Routine
 113          //-----------------------------------------------------------------------------
 114          
 115          void main (void) 
 116          {
 117   1      
C51 COMPILER V7.50   LOADER_F02X                                                           09/07/2007 14:28:22 PAGE 3   

 118   1         WDTCN = 0xde;                       // disable watchdog timer
 119   1         WDTCN = 0xad;
 120   1      
 121   1         PORT_Init ();                       // initialize crossbar and GPIO
 122   1         SYSCLK_Init ();                     // initialize oscillator
 123   1         UART0_Init ();                      // initialize UART0
 124   1         
 125   1         print_menu();                       // print the command menu
 126   1      
 127   1         while (1){
 128   2               
 129   2            printf("\nEnter a command >");
 130   2            gets(input_str, input_str_len);  //gets()讀取的字符串,其長度沒有限制,編程
 131   2                                                 //者要保證字符數組有足夠大的空間,存放輸入的字符串。
 132   2      
 133   2            
 134   2            switch ( input_str[0] ){
 135   3            
 136   3               case '1': erase_flash_page();   
 137   3                         printf("\nFlash page 0x1000 has been erased.\n");
 138   3                         break;
 139   3      
 140   3               case '2': printf("\nReady to receive HEX file...\n");
 141   3                         receive_code();
 142   3                         break;
 143   3      
 144   3               case '3': if(f_valid){
 145   4                           f = (void code *) 0x1000;
 146   4                           f();
 147   4                           printf("\nFinished\n");
 148   4                         } else {
 149   4                           printf("\n*** No function exists at 0x1000.\n");
 150   4                         }
 151   3                         break; 
 152   3      
 153   3               case '?': print_menu(); 
 154   3                         break;    
 155   3      
 156   3               default:  printf("\n*** Unknown Command.\n");
 157   3                         break;
 158   3            }   
 159   2      
 160   2         } // end while
 161   1      
 162   1      } // end main
 163          
 164          //-----------------------------------------------------------------------------
 165          // Support Subroutines
 166          //-----------------------------------------------------------------------------
 167          //-----------------------------------------------------------------------------
 168          // print_menu
 169          //-----------------------------------------------------------------------------
 170          //
 171          // This routine uses prints the command menu to the UART.
 172          //
 173          void print_menu(void)
 174          {
 175   1         printf("\nC8051F020 in application programming\n");
 176   1         printf("--------------------------------------\n");
 177   1         printf("1. Erase the flash page at 0x1000\n");
 178   1         printf("2. Receive HEX file\n");
 179   1         printf("3. Execute the function at 0x1000\n");
C51 COMPILER V7.50   LOADER_F02X                                                           09/07/2007 14:28:22 PAGE 4   

 180   1         printf("?. Print Command List\n");
 181   1      }
 182          
 183          //-----------------------------------------------------------------------------
 184          // hex2char
 185          //-----------------------------------------------------------------------------
 186          //
 187          // This routine converts a two byte ascii representation of a char to an
 188          // 8-bit variable;
 189          //
 190          unsigned char hex2char()
 191          {
 192   1         
 193   1         unsigned char retval;
 194   1         char byteH, byteL;
 195   1         
 196   1         // get a two-byte ASCII representation of a char from the UART
 197   1         byteH = _getkey();          //等待一個字符(使用_getkey函數)  
 198   1                                     //函數_getkey和putchar使用片內串口來完成串行I/O
 199   1         byteL = _getkey();          //這些子程序包含在C51庫中,每個函數的源文件位于\C51\LIB目錄下
 200   1         
 201   1         // convert to a single 8 bit result
 202   1         retval = (char) toint(byteH) * 16;       //toint可重入轉換一個十六進制數為一個十進制數
 203   1      
 204   1         retval += (char) toint(byteL);
 205   1         return retval;
 206   1      }
 207          
 208          //-----------------------------------------------------------------------------
 209          // erase_flash_page
 210          //-----------------------------------------------------------------------------

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产综合久久久久久久久久 | 欧美亚洲综合另类| 国产成人日日夜夜| 国产在线播放一区三区四| 国产综合色精品一区二区三区| 视频在线在亚洲| 免费观看久久久4p| 色域天天综合网| 在线观看国产精品网站| 精品视频一区二区不卡| 欧美日韩国产精选| 精品久久久三级丝袜| 国产日韩av一区| 18成人在线观看| 五月激情六月综合| 精品中文字幕一区二区| 国产成人精品免费视频网站| 国产不卡在线视频| 色综合网色综合| 欧美另类高清zo欧美| 久久人人爽爽爽人久久久| 国产精品情趣视频| 亚洲一区二区三区影院| 男男视频亚洲欧美| 成人精品亚洲人成在线| 欧美色视频一区| 2021国产精品久久精品| 国产午夜精品理论片a级大结局| 亚洲国产精品成人久久综合一区| 亚洲色图欧洲色图婷婷| 免费成人性网站| 不卡的av中国片| 91精品婷婷国产综合久久性色 | 97se亚洲国产综合在线| 欧美日韩在线不卡| 久久久精品tv| 亚洲成a人v欧美综合天堂 | a亚洲天堂av| 欧美日韩精品三区| 国产蜜臀av在线一区二区三区| 亚洲同性gay激情无套| 蜜臀久久久久久久| 99vv1com这只有精品| 欧美一级日韩免费不卡| 中文字幕一区二区三区不卡| 精品一区二区影视| 在线日韩国产精品| 国产欧美精品国产国产专区| 亚洲bt欧美bt精品| 97国产精品videossex| 久久久久久亚洲综合| 日韩电影一区二区三区四区| 91视频91自| 中日韩av电影| 国产精品一级在线| 日韩一级大片在线| 亚洲高清免费视频| 色综合色综合色综合色综合色综合| 欧美mv日韩mv| 蜜桃视频一区二区三区在线观看| 日本精品一区二区三区高清| 欧美激情中文字幕| 国产成人免费xxxxxxxx| 欧美本精品男人aⅴ天堂| 天堂va蜜桃一区二区三区漫画版| 99久久精品情趣| 国产精品久久久久久久午夜片| 激情综合色播五月| 精品免费99久久| 国内外成人在线| 久久一夜天堂av一区二区三区| 三级亚洲高清视频| 欧美日本一道本| 五月天亚洲婷婷| 欧美日韩在线三区| 亚洲6080在线| 91麻豆精品国产91久久久久| 同产精品九九九| 5月丁香婷婷综合| 日产国产欧美视频一区精品 | 久久男人中文字幕资源站| 久久精品国产**网站演员| 日韩三级免费观看| 精品制服美女丁香| 国产日韩精品一区二区三区| 国产ts人妖一区二区| 国产精品你懂的在线欣赏| 91丨九色丨国产丨porny| 一区二区三区在线观看网站| 欧美理论片在线| 久久精品国产精品亚洲综合| 国产亚洲一区字幕| 91影院在线观看| 午夜精品一区二区三区免费视频| 欧美一区二区三区视频在线| 国产乱码精品一区二区三区av| 欧美国产欧美亚州国产日韩mv天天看完整| 99久久精品国产一区二区三区 | 国产精品久久久久影院老司| 91免费国产视频网站| 亚洲国产精品麻豆| 久久天天做天天爱综合色| av爱爱亚洲一区| 蜜桃视频在线观看一区二区| 国产欧美久久久精品影院| 在线亚洲+欧美+日本专区| 男男gaygay亚洲| 1000精品久久久久久久久| 91精品国产综合久久精品麻豆 | 成人av片在线观看| 亚洲国产中文字幕在线视频综合| 911精品产国品一二三产区| 国产美女在线观看一区| 悠悠色在线精品| 久久精品欧美日韩精品| 欧美亚洲一区二区在线| 国产精品一区二区无线| 亚洲一区中文日韩| 日本一区二区三区高清不卡| 欧美精品xxxxbbbb| 91片在线免费观看| 久草热8精品视频在线观看| 亚洲免费色视频| 国产视频视频一区| 777奇米成人网| 97超碰欧美中文字幕| 国产一区二区三区在线观看免费 | 欧美精品1区2区3区| 成人夜色视频网站在线观看| 日本中文字幕一区二区视频| 亚洲乱码精品一二三四区日韩在线 | 婷婷综合久久一区二区三区| 欧美激情一二三区| 欧美成人一区二区三区片免费| 在线亚洲+欧美+日本专区| 成人免费精品视频| 国产精品中文字幕一区二区三区| 午夜视频一区在线观看| 亚洲精品福利视频网站| 1区2区3区国产精品| 中文无字幕一区二区三区 | 欧美探花视频资源| 99精品一区二区三区| 国产91丝袜在线观看| 国产高清一区日本| 国产精品一区二区无线| 国模一区二区三区白浆| 精品一区二区久久| 久久国产视频网| 麻豆视频观看网址久久| 麻豆专区一区二区三区四区五区| 天使萌一区二区三区免费观看| 亚洲在线免费播放| 亚洲高清不卡在线观看| 午夜精品久久久久久久 | 日韩欧美色电影| 91精品在线免费| 欧美一级日韩一级| 一区二区三区丝袜| 亚洲区小说区图片区qvod| voyeur盗摄精品| 欧美色老头old∨ideo| 色94色欧美sute亚洲线路一ni| 99久久精品国产导航| 99精品国产99久久久久久白柏| 91丨九色丨蝌蚪富婆spa| 色香蕉成人二区免费| 欧美日韩在线精品一区二区三区激情| 欧美午夜宅男影院| 日韩一区二区三区免费看| 精品国产乱码久久久久久老虎| 久久久精品一品道一区| 国产精品久久777777| 亚洲国产人成综合网站| 青青国产91久久久久久| 国产乱人伦偷精品视频免下载| 风间由美性色一区二区三区| 99国产精品国产精品毛片| 欧美日韩中字一区| 精品精品欲导航| 国产精品视频线看| 亚洲无线码一区二区三区| 韩日av一区二区| 91亚洲资源网| 欧美电视剧免费观看| 国产精品欧美精品| 免费成人在线观看视频| 成人手机电影网| 欧美顶级少妇做爰| 久久久美女毛片| 亚洲在线中文字幕| 国产激情一区二区三区| 色94色欧美sute亚洲线路二 | 国产一区91精品张津瑜| 91在线码无精品| 欧美精品一区二区在线播放| 亚洲欧美色一区| 国产成a人亚洲| 日韩免费观看高清完整版| 综合色中文字幕|