⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.lst

📁 英飞凌C166之XC164CS的IO读写操作程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
C166 COMPILER V6.04, MAIN                                                                  08/30/2007 18:29:21 PAGE 1   


C166 COMPILER V6.04, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN MAIN.OBJ
COMPILER INVOKED BY: C:\Keil C166\C166\BIN\C166.EXE MAIN.C MODV2 BROWSE MODV2 DEBUG

 stmt lvl     source

    1         //****************************************************************************
    2         // @Module        Project Settings
    3         // @Filename      MAIN.C
    4         // @Project       GPIO.dav
    5         //----------------------------------------------------------------------------
    6         // @Controller    Infineon XC164CS-16F20
    7         //
    8         // @Compiler      Keil
    9         //
   10         // @Codegenerator 2.8
   11         //
   12         // @Description   This file contains the project initialization function.
   13         //
   14         //----------------------------------------------------------------------------
   15         // @Date          2007-7-13 15:36:21
   16         //
   17         //****************************************************************************
   18         
   19         // USER CODE BEGIN (MAIN_General,1)
   20         /********************************************************************\
   21         ** 程序功能: 实现端口P1L外接的8个LED循环采用三种不同的方式移动点亮 **
   22         ** 版    本: v1.0                                                  **
   23         ** 作    者: lezm   北京乾勤科技                                   **
   24         ** 日    期: 2007年7月13日                                          **
   25         \********************************************************************/
   26         // USER CODE END
   27         
   28         
   29         
   30         //****************************************************************************
   31         // @Project Includes
   32         //****************************************************************************
   33         
   34         #include "MAIN.H"
   35         
   36         // USER CODE BEGIN (MAIN_General,2)
   37         
   38         // USER CODE END
   39         
   40         
   41         //****************************************************************************
   42         // @Macros
   43         //****************************************************************************
   44         
   45         // USER CODE BEGIN (MAIN_General,3)
   46         
   47         // USER CODE END
   48         
   49         
   50         //****************************************************************************
   51         // @Defines
   52         //****************************************************************************
   53         
   54         // USER CODE BEGIN (MAIN_General,4)
   55         #define FLASH_LED P1L                                                           //连接LED端口定义
C166 COMPILER V6.04, MAIN                                                                  08/30/2007 18:29:21 PAGE 2   

   56         
   57         // USER CODE END
   58         
   59         
   60         //****************************************************************************
   61         // @Typedefs
   62         //****************************************************************************
   63         
   64         // USER CODE BEGIN (MAIN_General,5)
   65         
   66         // USER CODE END
   67         
   68         
   69         //****************************************************************************
   70         // @Imported Global Variables
   71         //****************************************************************************
   72         
   73         // USER CODE BEGIN (MAIN_General,6)
   74         ubyte FlashLed[]={0x18,0x24,0x42,0x81,0x00};            //控制从LED中间向两边移的数组
   75         
   76         // USER CODE END
   77         
   78         
   79         //****************************************************************************
   80         // @Global Variables
   81         //****************************************************************************
   82         
   83         // USER CODE BEGIN (MAIN_General,7)
   84         
   85         // USER CODE END
   86         
   87         
   88         //****************************************************************************
   89         // @External Prototypes
   90         //****************************************************************************
   91         
   92         // USER CODE BEGIN (MAIN_General,8)
   93         
   94         // USER CODE END
   95         
   96         
   97         //****************************************************************************
   98         // @Prototypes Of Local Functions
   99         //****************************************************************************
  100         
  101         // USER CODE BEGIN (MAIN_General,9)
  102         //*********** 延时函数 ********
  103         void delay(uword x)
  104         {
  105  1          uword i;
  106  1          while(x--)
  107  1          for(i=0;i<10000;i++)
  108  1              continue;
  109  1      }
  110         
  111         //********* LED点亮后单个右移 *********
  112         void RightMovLed(void)
  113         {
  114  1          uword temp;
  115  1          temp=0x40;
  116  1          while(temp)
  117  1          {
C166 COMPILER V6.04, MAIN                                                                  08/30/2007 18:29:21 PAGE 3   

  118  2              temp=temp>>1&0x7f;
  119  2              FLASH_LED=temp;
  120  2              delay(3);
  121  2          }
  122  1      }
  123         
  124         //********* LED点亮后单个左移 *********
  125         void LeftMovLed(void)
  126         {
  127  1          uword temp;
  128  1          temp=0x01;
  129  1          while(temp)
  130  1          {
  131  2              temp=temp<<1&0xfe;
  132  2              FLASH_LED=temp;
  133  2              delay(3);
  134  2          }
  135  1      }
  136         
  137         //********* 实现两个LED从中间跑两边 *********
  138         void LedFlash(void)
  139         {
  140  1          ubyte i=0;
  141  1          while(FlashLed[i])
  142  1          {
  143  2              FLASH_LED=FlashLed[i];
  144  2              i++;
  145  2              delay(3);
  146  2          } 
  147  1      }
  148         
  149         //********* 交叉闪烁 *********
  150         void crossFlash(void)
  151         {
  152  1          ubyte i,temp;
  153  1          temp=0x55;
  154  1          for(i=0;i<10;i++)
  155  1          {
  156  2              FLASH_LED=temp;
  157  2              temp=~temp;
  158  2              delay(3);
  159  2          }
  160  1      }
  161         // USER CODE END
  162         
  163         
  164         //****************************************************************************
  165         // @Function      void MAIN_vInit(void) 
  166         //
  167         //----------------------------------------------------------------------------
  168         // @Description   This function initializes the microcontroller.
  169         //
  170         //----------------------------------------------------------------------------
  171         // @Returnvalue   None
  172         //
  173         //----------------------------------------------------------------------------
  174         // @Parameters    None
  175         //
  176         //----------------------------------------------------------------------------
  177         // @Date          2007-7-13
  178         //
  179         //****************************************************************************
C166 COMPILER V6.04, MAIN                                                                  08/30/2007 18:29:21 PAGE 4   

  180         
  181         // USER CODE BEGIN (Init,1)
  182         
  183         // USER CODE END
  184         
  185         void MAIN_vInit(void)
  186         {
  187  1        // USER CODE BEGIN (Init,2)
  188  1      
  189  1        // USER CODE END
  190  1      
  191  1        ///  -----------------------------------------------------------------------
  192  1        ///  Configuration of the System Clock:
  193  1        ///  -----------------------------------------------------------------------
  194  1        ///  - VCO clock used, input clock is connected
  195  1        ///  - input frequency is 8 MHz
  196  1        ///  - VCO output frequency 100 .. 150 MHz
  197  1        ///  - system clock is 20 MHz
  198  1      
  199  1        MAIN_vUnlockProtecReg();       // unlock write security
  200  1        PLLCON         =  0x7814;      // load PLL control register
  201  1      
  202  1      
  203  1        //// -----------------------------------------------------------------------
  204  1        //// Begin of Important Settings for the Start-Up File
  205  1        //// -----------------------------------------------------------------------
  206  1        ///  All following settings must be set in the start-up file. You can use 
  207  1        ///  DAvE's project file (*.dpt) to include this register values into your 
  208  1        ///  compiler EDE.
  209  1      
  210  1          ///  ---------------------------------------------------------------------
  211  1          ///  Initialization of the CPUCON1 Register:
  212  1          ///  ---------------------------------------------------------------------
  213  1          ///  - space between two vectors is 2 words
  214  1          ///  - DISWDT executable until End of Init
  215  1          ///  - segmentation is enabled
  216  1          ///  - switch context is interruptible
  217  1          ///  - branch prediction is enabled
  218  1          ///  - zero cycle jump function is enabled
  219  1      
  220  1          //// this register must be set in the start-up file
  221  1          //// CPUCON1  =  0x0007
  222  1      
  223  1          ///  ---------------------------------------------------------------------
  224  1          ///  Initialization of the VECSEG Register:
  225  1          ///  ---------------------------------------------------------------------
  226  1          ///  - start from external memory
  227  1      

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -