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

📄 test003.lst

📁 89c51试验程序,简单有趣
💻 LST
字号:
C51 COMPILER V7.50   TEST003                                                               12/13/2006 17:39:38 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE TEST003
OBJECT MODULE PLACED IN test003.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE test003.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /********************************************************************************************
   2          * 文 件 名:test003.c
   3          * 功    能:使ARMSKY-51Easy教学实验开发板上的LED9、LED10、LED11进行流水灯显示。
   4          * 硬件条件:1。CPU型号:AT89S52
   5          *           2。晶振:12.000MHz
   6          *           3。用跳线帽短接LED11__P1.7
   7          *              用跳线帽短接LED10__P1.6
   8          *              用跳线帽短接LED9__P1.5
   9          * 作    者:POWER
  10          * 日    期:2006年12月12号
  11          * 斯凯科技主页:www.armsky.net
  12          * 斯凯科技论坛:www.armsky.net/bbs
  13          *********************************************************************************************/
  14          #include "reg52.h"                               // 包含头文件    
  15          
  16          /* 与编译器无关的数据类型定义 */
  17          /********************************************************************************************/
  18          typedef unsigned char      uint8;                // 无符号8位整型变量
  19          typedef signed   char      int8;                 // 有符号8位整型变量
  20          typedef unsigned short     uint16;               // 无符号16位整型变量
  21          typedef signed   short     int16;                // 有符号16位整型变量
  22          typedef unsigned int       uint32;               // 无符号32位整型变量
  23          typedef signed   int       int32;                // 有符号32位整型变量
  24          typedef float              fp32;                 // 单精度浮点数(32位长度)
  25          typedef double             fp64;                 // 双精度浮点数(64位长度)
  26          /********************************************************************************************/
  27          
  28          /* 定义位变量 */
  29          sbit P1_7 = P1 ^ 7;                              
  30          sbit P1_6 = P1 ^ 6;
  31          sbit P1_5 = P1 ^ 5;
  32          
  33          #define LED11_ON()   (P1_7=0)                    // 定义"LED11_ON()"为AT89S52的P1.7脚输出低电
  34                                                           // 平使LED11点亮
  35          
  36          #define LED11_OFF()  (P1_7=1)                    // 定义"LED11_OFF()"为AT89S52的P1.7脚输出高电
  37                                                           // 平使LED11熄灭
  38          
  39          #define LED10_ON()   (P1_6=0)                    // 定义"LED10_ON()"为AT89S52的P1.6脚输出低电
  40                                                           // 平使LED11点亮
  41          
  42          #define LED10_OFF()  (P1_6=1)                    // 定义"LED10_OFF()"为AT89S52的P1.6脚输出高电
  43                                                           // 平使LED11熄灭
  44          
  45          #define LED9_ON()    (P1_5=0)                    // 定义"LED9_ON()"为AT89S52的P1.5脚输出低电
  46                                                           // 平使LED11点亮
  47          
  48          #define LED9_OFF()   (P1_5=1)                    // 定义"LED9_OFF()"为AT89S52的P1.5脚输出高电
  49                                                           // 平使LED11熄灭
  50          
  51          /********************************************************************************************
  52          * 函数名称:Delay()
  53          * 功    能:软件延时
  54          * 入口参数:count    延时参数,值越大,延时越长
  55          * 出口参数:无
C51 COMPILER V7.50   TEST003                                                               12/13/2006 17:39:38 PAGE 2   

  56          *********************************************************************************************/
  57          void Delay(uint16 count)
  58          {
  59   1        uint8 i;                
  60   1      
  61   1        while(--count != 0)        
  62   1                {
  63   2                  for(i = 0; i < 125; i++);                // ";" 表示空语句,CPU空转。
  64   2                }                                                      // i 从0加到125,在12M晶体下CPU大概耗时1毫秒
  65   1      }
  66          
  67          /********************************************************************************************
  68          * 函数名称:LED9_11_AllOff()
  69          * 功    能:LED9、LED10和LED11全部熄灭
  70          * 入口参数:无
  71          * 出口参数:无
  72          *********************************************************************************************/
  73          void LED9_11_AllOff(void)
  74          {
  75   1        LED9_OFF();
  76   1        LED10_OFF();
  77   1        LED11_OFF();
  78   1      }
  79          
  80          /********************************************************************************************
  81          * 函数名称:LED9_11_AllOn()
  82          * 功    能:LED9、LED10和LED11全部点亮
  83          * 入口参数:无
  84          * 出口参数:无
  85          *********************************************************************************************/
  86          void LED9_11_AllOn(void)
  87          {
  88   1        LED9_ON();
  89   1        LED10_ON();
  90   1        LED11_ON();
  91   1      }
  92          
  93          /********************************************************************************************
  94          * 函数名称:main()
  95          * 功    能:控制LED9、LED10、LED11进行流水灯显示
  96          *********************************************************************************************/          
  97          void main (void)                
  98          {
  99   1       
 100   1        while(1)                                       // 死循环
 101   1                {
 102   2                  LED9_11_AllOn();                         // LED9、LED10和LED11全部点亮
 103   2                  Delay(200);                              // 延时
 104   2                  LED9_11_AllOff();                        // LED9、LED10和LED11全部熄灭
 105   2                  Delay(200);
 106   2      
 107   2                  LED11_ON();                              // AT89S52的P1.7脚输出低电平来点亮LED11
 108   2                      Delay(200);                              // 延时
 109   2                      LED11_OFF();                             // AT89S52的P1.7脚输出高电平来熄灭LED11
 110   2                      Delay(200);    
 111   2              
 112   2              LED10_ON();                              // AT89S52的P1.6脚输出低电平来点亮LED10
 113   2                      Delay(200);                              // 延时
 114   2                      LED10_OFF();                             // AT89S52的P1.6脚输出高电平来熄灭LED10
 115   2                      Delay(200);    
 116   2             
 117   2                  LED9_ON();                               // AT89S52的P1.5脚输出低电平来点亮LED9
C51 COMPILER V7.50   TEST003                                                               12/13/2006 17:39:38 PAGE 3   

 118   2                      Delay(200);                              // 延时
 119   2                      LED9_OFF();                              // AT89S52的P1.5脚输出高电平来熄灭LED9
 120   2                      Delay(200);    
 121   2                }
 122   1      }


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


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

⌨️ 快捷键说明

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