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

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

?? adc.lst

?? keil下的ARM實驗例子,很詳細的實驗說明
?? LST
?? 第 1 頁 / 共 4 頁
字號:
ARM COMPILER V2.53,  adc                                                                   12/10/06  20:06:10  PAGE 1   


ARM COMPILER V2.53, COMPILATION OF MODULE adc
OBJECT MODULE PLACED IN .\Obj\adc.obj
COMPILER INVOKED BY: C:\Keil\ARM\BIN\CA.exe adc.c THUMB INCDIR(..\Common\inc) DEBUG PRINT(.\LST\ADC.LST) TABS(4) OBJECT(
                    -.\Obj\adc.obj) 

stmt  level    source

    1          /*****************************************************************************
    2           *   adc.c:  ADC module file for Philips LPC214x Family Microprocessors
    3           *
    4           *   Copyright(C) 2006, Philips Semiconductor
    5           *   All rights reserved.
    6           *
    7           *   History
    8           *   2005.10.01  ver 1.00    Prelimnary version, first Release
    9           *
   10          ******************************************************************************/
   11          #include "LPC214x.h"                        /* LPC21xx definitions */
   12          #include "type.h"
   13          #include "irq.h"
   14          #include "target.h"
   15          #include "adc.h"
   16          
   17          DWORD ADC0Value[ADC_NUM], ADC1Value[ADC_NUM];
   18          DWORD ADC0IntDone = 0, ADC1IntDone = 0;
   19          
   20          #if ADC_INTERRUPT_FLAG
   21          /******************************************************************************
   22          ** Function name:       ADC0Handler
   23          **
   24          ** Descriptions:        ADC0 interrupt handler
   25          **
   26          ** parameters:          None
   27          ** Returned value:      None
   28          ** 
   29          ******************************************************************************/
   30          void ADC0Handler (void) __irq 
   31          {
   32   1          DWORD regVal;
   33   1        
   34   1          IENABLE;            /* handles nested interrupt */
   35   1      
   36   1          regVal = AD0STAT;       /* Read ADC will clear the interrupt */
   37   1          if ( regVal & 0x0000FF00 )  /* check OVERRUN error first */
   38   1          {
   39   2          regVal = (regVal & 0x0000FF00) >> 0x08;
   40   2                      /* if overrun, just read ADDR to clear */
   41   2                      /* regVal variable has been reused. */
   42   2          switch ( regVal )
   43   2          {
   44   3              case 0x01:
   45   3              regVal = AD0DR0;
   46   3              break;
   47   3              case 0x02:
   48   3              regVal = AD0DR1;
   49   3              break;
   50   3              case 0x04:
   51   3              regVal = AD0DR2;
   52   3              break;
   53   3              case 0x08:
   54   3              regVal = AD0DR3;
   55   3              break;
   56   3              case 0x10:
   57   3              regVal = AD0DR4;
   58   3              break;
ARM COMPILER V2.53,  adc                                                                   12/10/06  20:06:10  PAGE 2   

   59   3              case 0x20:
   60   3              regVal = AD0DR5;
   61   3              break;
   62   3              case 0x40:
   63   3              regVal = AD0DR6;
   64   3              break;
   65   3              case 0x80:
   66   3              regVal = AD0DR7;
   67   3              break;
   68   3              default:
   69   3              break;
   70   3          }
   71   2          AD0CR &= 0xF8FFFFFF;    /* stop ADC now */ 
   72   2          ADC0IntDone = 1;
   73   2          return; 
   74   2          }
   75   1          
   76   1          if ( regVal & ADC_ADINT )
   77   1          {
   78   2          switch ( regVal & 0xFF )    /* check DONE bit */
   79   2          {
   80   3              case 0x01:
   81   3              ADC0Value[0] = ( AD0DR0 >> 6 ) & 0x3FF;
   82   3              break;
   83   3              case 0x02:
   84   3              ADC0Value[1] = ( AD0DR1 >> 6 ) & 0x3FF;
   85   3              break;
   86   3              case 0x04:
   87   3              ADC0Value[2] = ( AD0DR2 >> 6 ) & 0x3FF;
   88   3              break;
   89   3              case 0x08:
   90   3              ADC0Value[3] = ( AD0DR3 >> 6 ) & 0x3FF;
   91   3              break;
   92   3              case 0x10:
   93   3              ADC0Value[4] = ( AD0DR4 >> 6 ) & 0x3FF;
   94   3              break;
   95   3              case 0x20:
   96   3              ADC0Value[5] = ( AD0DR5 >> 6 ) & 0x3FF;
   97   3              break;
   98   3              case 0x40:
   99   3              ADC0Value[6] = ( AD0DR6 >> 6 ) & 0x3FF;
  100   3              break;
  101   3              case 0x80:
  102   3              ADC0Value[7] = ( AD0DR7 >> 6 ) & 0x3FF;
  103   3              break;      
  104   3              default:
  105   3              break;
  106   3          }
  107   2          AD0CR &= 0xF8FFFFFF;    /* stop ADC now */ 
  108   2          ADC0IntDone = 1;
  109   2          }
  110   1      
  111   1          IDISABLE;
  112   1          VICVectAddr = 0;        /* Acknowledge Interrupt */
  113   1      }
  114          
  115          /******************************************************************************
  116          ** Function name:       ADC1Handler
  117          **
  118          ** Descriptions:        ADC1 interrupt handler
  119          **
  120          ** parameters:          None
  121          ** Returned value:      None
  122          ** 
  123          ******************************************************************************/
  124          void ADC1Handler (void) __irq 
ARM COMPILER V2.53,  adc                                                                   12/10/06  20:06:10  PAGE 3   

  125          {
  126   1          DWORD regVal;
  127   1        
  128   1          IENABLE;            /* handles nested interrupt */
  129   1      
  130   1          regVal = AD1STAT;       /* Read ADC will clear the interrupt */
  131   1          if ( regVal & 0x0000FF00 )  /* check OVERRUN error first */
  132   1          {
  133   2          regVal = (regVal & 0x0000FF00) >> 0x08;
  134   2                      /* if overrun, just read AD1DRx to clear */
  135   2                      /* regVal variable has been reused. */
  136   2          switch ( regVal )
  137   2          {
  138   3              case 0x01:
  139   3              regVal = AD1DR0;
  140   3              break;
  141   3              case 0x02:
  142   3              regVal = AD1DR1;
  143   3              break;
  144   3              case 0x04:
  145   3              regVal = AD1DR2;
  146   3              break;
  147   3              case 0x08:
  148   3              regVal = AD1DR3;
  149   3              break;
  150   3              case 0x10:
  151   3              regVal = AD1DR4;
  152   3              break;
  153   3              case 0x20:
  154   3              regVal = AD1DR5;
  155   3              break;
  156   3              case 0x40:
  157   3              regVal = AD1DR6;
  158   3              break;
  159   3              case 0x80:
  160   3              regVal = AD1DR7;
  161   3              break;
  162   3              default:
  163   3              break;
  164   3          }
  165   2          AD1CR &= 0xF8FFFFFF;    /* stop ADC now */ 
  166   2          ADC1IntDone = 1;
  167   2          return; 
  168   2          }
  169   1          
  170   1          if ( regVal & ADC_ADINT )
  171   1          {
  172   2          switch ( regVal & 0xFF )    /* check DONE bit */
  173   2          {
  174   3              case 0x01:
  175   3              ADC1Value[0] = ( AD1DR0 >> 6 ) & 0x3FF;
  176   3              break;
  177   3              case 0x02:
  178   3              ADC1Value[1] = ( AD1DR1 >> 6 ) & 0x3FF;
  179   3              break;
  180   3              case 0x04:
  181   3              ADC1Value[2] = ( AD1DR2 >> 6 ) & 0x3FF;
  182   3              break;
  183   3              case 0x08:
  184   3              ADC1Value[3] = ( AD1DR3 >> 6 ) & 0x3FF;
  185   3              break;
  186   3              case 0x10:
  187   3              ADC1Value[4] = ( AD1DR4 >> 6 ) & 0x3FF;
  188   3              break;      
  189   3              case 0x20:
  190   3              ADC1Value[5] = ( AD1DR5 >> 6 ) & 0x3FF;
ARM COMPILER V2.53,  adc                                                                   12/10/06  20:06:10  PAGE 4   

  191   3              break;
  192   3              case 0x40:
  193   3              ADC1Value[6] = ( AD1DR6 >> 6 ) & 0x3FF;
  194   3              break;
  195   3              case 0x80:
  196   3              ADC1Value[7] = ( AD1DR7 >> 6 ) & 0x3FF;
  197   3              break;      
  198   3              default:
  199   3              break;
  200   3          }
  201   2          AD1CR &= 0xF8FFFFFF;    /* stop ADC now */ 
  202   2          ADC1IntDone = 1;
  203   2          }
  204   1      
  205   1          IDISABLE;
  206   1          VICVectAddr = 0;        /* Acknowledge Interrupt */
  207   1      }
  208          #endif
  209          
  210          /*****************************************************************************
  211          ** Function name:       ADCInit
  212          **
  213          ** Descriptions:        initialize ADC channel
  214          **
  215          ** parameters:          ADC clock rate
  216          ** Returned value:      true or false
  217          ** 
  218          *****************************************************************************/
  219          DWORD ADCInit( DWORD ADC_Clk )
  220          {
  221   1          /* all the related pins are set to ADC inputs, AD0.1~4, AD1.0~7 */  
  222   1          PINSEL0 = 0x0F333F00;
  223   1          PINSEL1 = 0x15541800;
  224   1      
  225   1          AD0CR = ( 0x01 << 0 ) |     // SEL=1,select channel 0, 1 to 4 on ADC0
  226   1          ( ( Fpclk / ADC_Clk - 1 ) << 8 ) |  // CLKDIV = Fpclk / 1000000 - 1 
  227   1          ( 0 << 16 ) |       // BURST = 0, no BURST, software controlled
  228   1          ( 0 << 17 ) |       // CLKS = 0, 11 clocks/10 bits 
  229   1          ( 1 << 21 ) |       // PDN = 1, normal operation 
  230   1          ( 0 << 22 ) |       // TEST1:0 = 00 
  231   1          ( 0 << 24 ) |       // START = 0 A/D conversion stops
  232   1          ( 0 << 27 );        /* EDGE = 0 (CAP/MAT singal falling,trigger A/D 
  233   1                      conversion) */
  234   1          AD1CR = ( 0x01 << 0 ) |     // SEL=1,select channel 0, 0 to 7 on ADC1
  235   1          ( ( Fpclk / ADC_Clk - 1 ) << 8 ) |  // CLKDIV = Fpclk / 1000000 - 1 
  236   1          ( 0 << 16 ) |       // BURST = 0, no BURST, software controlled 
  237   1          ( 0 << 17 ) |       // CLKS = 0, 11 clocks/10 bits 
  238   1          ( 1 << 21 ) |       // PDN = 1, normal operation 
  239   1          ( 0 << 22 ) |       // TEST1:0 = 00 
  240   1          ( 0 << 24 ) |       // START = 0 A/D conversion stops
  241   1          ( 0 << 27 );        /* EDGE = 0 (CAP/MAT singal falling,trigger A/D 
  242   1                      conversion) */
  243   1      
  244   1          /* If POLLING, no need to do the following */
  245   1      #if ADC_INTERRUPT_FLAG
  246   1          AD0INTEN = 0x11E;       // Enable all interrupts 
  247   1          AD1INTEN = 0x1FF;
  248   1      
  249   1          if ( install_irq( ADC0_INT, (void *)ADC0Handler ) == FALSE )
  250   1          {
  251   2          return (FALSE);
  252   2          }
  253   1          if ( install_irq( ADC1_INT, (void *)ADC1Handler ) == FALSE )
  254   1          {
  255   2          return (FALSE);
  256   2          }
ARM COMPILER V2.53,  adc                                                                   12/10/06  20:06:10  PAGE 5   

  257   1      #endif
  258   1      
  259   1          return (TRUE);
  260   1      }
  261          
  262          /*****************************************************************************

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲日本一区二区| 99久久免费视频.com| 91精品欧美综合在线观看最新| 日本中文在线一区| 久久精品人人做| 欧美性色黄大片| 国产精品中文字幕日韩精品| 亚洲视频狠狠干| 欧美v日韩v国产v| 91久久人澡人人添人人爽欧美| 蜜芽一区二区三区| 亚洲手机成人高清视频| 91香蕉视频在线| 伊人夜夜躁av伊人久久| 久久久五月婷婷| 欧美日韩精品欧美日韩精品一| 国产一区二区三区免费播放| 艳妇臀荡乳欲伦亚洲一区| 日韩欧美国产成人一区二区| 91精品91久久久中77777| 国产综合色精品一区二区三区| 亚洲永久精品大片| 日本一区二区三区dvd视频在线| 欧美美女网站色| 91免费看`日韩一区二区| 国产精品996| 亚洲午夜电影在线观看| 久久日韩精品一区二区五区| 在线观看国产91| 99精品欧美一区二区三区综合在线| 日韩av二区在线播放| 亚洲靠逼com| 国产精品女人毛片| 2020国产精品久久精品美国| 777午夜精品视频在线播放| 色老汉av一区二区三区| 成人黄色片在线观看| 国内精品国产三级国产a久久| 亚洲免费看黄网站| 国产精品入口麻豆九色| 2014亚洲片线观看视频免费| 91麻豆精品国产91久久久久久久久| 99久久综合国产精品| 国产经典欧美精品| 国产麻豆精品在线| 久久99精品国产麻豆不卡| 日韩激情视频网站| 五月综合激情婷婷六月色窝| 亚洲免费观看高清完整版在线观看 | 午夜精彩视频在线观看不卡| 亚洲品质自拍视频网站| 国产精品不卡在线观看| 国产精品欧美极品| 国产精品大尺度| 国产精品国产三级国产有无不卡| 欧美精品一区二区三区蜜臀| 精品少妇一区二区三区日产乱码| 欧美日韩精品一二三区| 欧美美女喷水视频| 欧美精品一级二级| 正在播放一区二区| 91精品国产综合久久国产大片| 欧美在线观看视频一区二区三区| 欧美性猛片aaaaaaa做受| 99国产精品久久久久| 91在线国内视频| 色婷婷av久久久久久久| 在线免费不卡电影| 欧美欧美欧美欧美| 欧美电视剧免费观看| xnxx国产精品| 精品国产凹凸成av人网站| 日韩欧美国产电影| 久久精品亚洲麻豆av一区二区| 久久久久久久国产精品影院| 日本一区二区三区dvd视频在线| 国产欧美精品区一区二区三区| 日本一区二区成人在线| 国产精品久久久久aaaa| 亚洲欧洲性图库| 一区二区三区四区在线免费观看| 偷拍一区二区三区| 国内成+人亚洲+欧美+综合在线| 国产一区二区三区四区五区美女| 成人av免费在线| 色综合久久久久网| 欧美精品免费视频| 亚洲国产精品传媒在线观看| 亚洲欧美日韩系列| 久久精品国产99久久6| 国产1区2区3区精品美女| 欧洲av一区二区嗯嗯嗯啊| 欧美精品 国产精品| 欧美一区二区三区免费在线看| 久久丝袜美腿综合| 亚洲综合网站在线观看| 捆绑调教一区二区三区| 99久久综合精品| 欧美电视剧在线观看完整版| 国产精品久久久久四虎| 日本视频免费一区| 狠狠色丁香久久婷婷综| 成人午夜av电影| 欧美日产国产精品| 国产精品国产精品国产专区不片| 五月天激情综合网| 成人av资源在线观看| 欧美日本不卡视频| 国产精品女上位| 久久精品99国产精品日本| 99久久亚洲一区二区三区青草| 在线精品视频免费播放| 久久久777精品电影网影网| 亚洲电影一级片| 成人av电影观看| 欧美电影免费观看高清完整版在线观看| 中文字幕av一区二区三区高 | 国产香蕉久久精品综合网| 亚洲综合偷拍欧美一区色| 国产精品911| 日韩一级片网址| 亚洲精品国产品国语在线app| 五月天中文字幕一区二区| 波多野结衣亚洲| 精品国产乱码久久久久久免费 | 亚洲免费观看高清完整版在线| 免费成人av在线| 欧美在线一区二区| 综合分类小说区另类春色亚洲小说欧美| 久久99热国产| 欧美精品视频www在线观看| 亚洲国产高清aⅴ视频| 久久国产欧美日韩精品| 欧美性色黄大片手机版| 亚洲欧美一区二区三区久本道91| 国产精品一区二区久久精品爱涩| 欧美一卡2卡三卡4卡5免费| 一区二区免费在线播放| 在线欧美小视频| 亚洲第一福利一区| 欧美一级二级三级蜜桃| 久久99在线观看| 国产亚洲欧美一级| 成人午夜激情在线| 最新日韩av在线| 欧洲一区二区av| 日日骚欧美日韩| 日韩美女视频在线| 国产中文一区二区三区| 国产精品色在线| 欧美影院一区二区| 日韩国产高清影视| 亚洲视频免费在线观看| 欧美午夜电影在线播放| 日本人妖一区二区| 精品国产三级a在线观看| 顶级嫩模精品视频在线看| 亚洲人成网站在线| 3d动漫精品啪啪| 国产成人在线视频免费播放| 亚洲男人天堂一区| 欧美一区二区三区色| 国模一区二区三区白浆| 国产精品久久久久久久久快鸭 | 国产一区二区女| 亚洲美女在线国产| 日韩欧美国产系列| 99视频一区二区| 欧美a级一区二区| 国产精品天干天干在线综合| 在线观看视频一区二区| 麻豆精品蜜桃视频网站| 国产精品家庭影院| 91麻豆精品91久久久久同性| 国产aⅴ综合色| 亚洲成av人片在线| 欧美高清一级片在线观看| 欧美日韩一级大片网址| 国产露脸91国语对白| 亚洲一区影音先锋| 久久婷婷国产综合精品青草| 在线影视一区二区三区| 国产精品自拍一区| 午夜激情久久久| 亚洲欧洲精品一区二区三区不卡| 日韩一区二区在线免费观看| 成人小视频在线观看| 蜜芽一区二区三区| 亚洲欧美偷拍卡通变态| 久久这里只有精品6| 91久久精品一区二区二区| 国产很黄免费观看久久| 天堂蜜桃91精品| 亚洲精品亚洲人成人网在线播放| 日韩欧美成人一区二区| 欧美三级日韩在线| 不卡视频在线观看| 黑人精品欧美一区二区蜜桃| 香蕉av福利精品导航| 最近日韩中文字幕|