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

📄 8ledloop.lst

📁 《爱上单片机》配书光盘
💻 LST
字号:
C51 COMPILER V6.12  8LEDLOOP                                                               05/15/2009 00:36:09 PAGE 1   


C51 COMPILER V6.12, COMPILATION OF MODULE 8LEDLOOP
OBJECT MODULE PLACED IN 8LEDLOOP.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 8LEDLOOP.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /*********************************************************************************************
   2          程序名:    8路流水灯
   3          编写人:    杜洋 
   4          编写时间:  2009年5月13日
   5          硬件支持:  STC12C2052 内部RC或外部12MHZ晶振
   6          接口说明:  8个LED彩灯接P1口  
   7          修改日志:  
   8            NO.1-2009年5月14日 在程序前面加入参数定义项 
   9          /*********************************************************************************************
  10          说明:
  11          根据参数设置产生流水LED效果。
  12          
  13          /*********************************************************************************************/
  14          
  15          #include <REG51.h> //51头文件
  16          
  17          /*********************************************************************************************/
  18          
  19          #define DY_PORT		P1 //设置LED连接的I/O组
  20          #define DY_SPEED	100 //设置每一个明亮级的停留时间(值域:0~65535)
  21          
  22          /*********************************************************************************************
  23          
  24          bit [自定义名] ; //定义一个位(位的值只能是0或1)例:bit LED
  25          #define [代替名]	[原名]  //用代替名代替原名(可以方便修改常改或调试的值)例:#define LED P1
  26          sbit  [自定义名] = [系统位名] ; //自定义系统位名。例:sbit Add_Key = P3 ^ 1;
  27          unsigned char [自定义名] ; //定义一个0~255的整数变量.例:unsigned char a;
  28          unsigned int [自定义名] ; //定义一个0~65535的整数变量
  29          
  30          /*********************************************************************************************/
  31          void delay (unsigned int a){ // 1ms延时程序
  32   1      	unsigned int i;
  33   1      	while( --a != 0){
  34   2      		for(i = 0; i < 600; i++);//STC单片机在外部晶振为12MHz时i值上限为600  
  35   2      	}   				   		 //AT89C51单片机在外部晶振为12MHz时i值上限为125
  36   1      }
  37          /*********************************************************************************************/
  38          void main(void){
  39   1      	unsigned int i;
  40   1      	unsigned int temp;
  41   1      	while(1){
  42   2          	temp=0x01;
  43   2          	for(i=0;i<8;i++){ //8个流水灯逐个闪动
  44   3           		DY_PORT=~temp;
  45   3           		delay(DY_SPEED);   //调用延时函数
  46   3           		temp<<=1;
  47   3          	}
  48   2      		temp=0x80;
  49   2      		for(i=0;i<8;i++){ //8个流水灯反向逐个闪动
  50   3          		DY_PORT=~temp;
  51   3          		delay(DY_SPEED);   //调用延时函数
  52   3          		temp>>=1;
  53   3         		}
  54   2          	temp=0xFE;
  55   2      		for(i=0;i<8;i++){ //8个流水灯依次全部点亮
C51 COMPILER V6.12  8LEDLOOP                                                               05/15/2009 00:36:09 PAGE 2   

  56   3           		DY_PORT=temp;
  57   3           		delay(DY_SPEED);   //调用延时函数
  58   3           		temp<<=1;
  59   3          	}
  60   2         		temp=0x7F;
  61   2         		for(i=0;i<8;i++){ //8个流水灯依次反向全部点亮
  62   3           		DY_PORT=temp;
  63   3           		delay(DY_SPEED);   //调用延时函数
  64   3           		temp>>=1;
  65   3          	}
  66   2      	}
  67   1      }
  68          /*********************************************************************************************/


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    185    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----       2
   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 + -