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

📄 led_hardware.lst

📁 个人单片机入门程序集合 。很适合刚学单片机的人。用的是keil proteus
💻 LST
字号:
C51 COMPILER V7.20   LED_HARDWARE                                                          07/11/2007 17:11:09 PAGE 1   


C51 COMPILER V7.20, COMPILATION OF MODULE LED_HARDWARE
OBJECT MODULE PLACED IN .\led_hardware.obj
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE ..\..\桌面\07experiment\NO5\keil\led_hardware.c BROWSE DEBUG OBJECTEXTEND P
                    -RINT(.\led_hardware.lst) OBJECT(.\led_hardware.obj)

line level    source

   1          #include <reg51.h>
   2          
   3          /******led 接口描述******/
   4          //P0--->(a-g,dot) 显示
   5          //选择使能控制段
   6          //P2^3--->使能左第一个数码管  P2^2--->左第二个数码管  
   7          //P2^1--->左第三个数码管  P2^0--->左第四个数码管
   8          
   9          
  10          /*********显示数据表 对应0-9 ,a-f*************/
  11          unsigned char code table[16]={0x3f,6,0x5b,0x4f,
  12                            0x66,0x6d,0x7d,7,0x7f,0x6f,0x77,
  13                                            0x7c,0x58,0x5e,0x79,0x71};
  14          /**********显示选择表***********************/
  15          unsigned char code digit[4]={0xf8,0xf4,0xf2,0xf1};
  16          
  17          /*****定义一个数组用于存放将要显示的值*******/
  18          unsigned char d[4]={1,2,3,4};
  19          /*****定义一个全局变量 number******/
  20          unsigned char number;   //number 表示第几个显示 0-3 
  21          
  22          /********定时器0中断服务程序***************/
  23          void timer0(void) interrupt 1 
  24          {
  25   1       TR0=0;                                  //停止定时器0
  26   1       TH0=(65536-1000)/256;   //通过定时器定时延时大约1ms左右
  27   1       TL0=(65536-1000)%256;
  28   1       number=(number+1)%4;
  29   1       P2=digit[number];       //选择第number个数码管显示
  30   1       P0=table[d[number]];    //查表显示要显示的值
  31   1       TR0=1;                              //启动定时器0
  32   1       }
  33          
  34          /******定时器初始化函数**********/
  35          void Init_Timer (void)
  36          {
  37   1      TMOD=0x01;                       //
  38   1      TH0=(65536-1000)/256;    //通过定时器定时延时大约1ms左右
  39   1      TL0=(65536-1000)%256;
  40   1      EA=1;
  41   1      ET0=1;
  42   1      TR0=1;
  43   1      }
  44          
  45          
  46          /********主函数************/
  47          //效果就是用定时器服务程序的实现数码管动态显示1234
  48          /*************************/
  49          void main (void)
  50          {
  51   1      Init_Timer();
  52   1      while(1);                 
  53   1      }

C51 COMPILER V7.20   LED_HARDWARE                                                          07/11/2007 17:11:09 PAGE 2   


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