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

📄 main.lst

📁 我做的畢業設計,用AT89S51 控制LCD1602作為顯示. DS1302時鐘芯片顯示時間,DS18B20測量溫度,還有4X4的鍵盤驅動.實現了一個計算功能.可以用PROTUES 仿真軟件仿真,當時
💻 LST
字号:
C51 COMPILER V7.50   MAIN                                                                  04/09/2007 18:39:43 PAGE 1   


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

line level    source

   1          /*********************************************************
   2             
   3             File Name:       主程序
   4             Author:          liao xu ming
   5             Created:         2007/3/23
   6             Modified:            2007/4/8
   7             Revision:            1.0
   8            
   9          *********************************************************/
  10          #include"main.h"
  11          #include"reg51.h"
  12          #include"DS1302.h"
  13          #include"calculator.h"
  14          #include"keyborad.h"
  15          #include"LCD1602.h"
  16          #include"clock.h"
  17          #include"ds18b20.h"
  18          
  19          void Initialization(void);       //初始化函数声明
  20           
  21          
  22          
  23          void main(void)                  //主程序开始
  24          { static unsigned char State_FUNCTION;   //功能状态
  25   1        unsigned char Key_temp;                //按键值    
  26   1       Initialization();                       //调用初始化程序
  27   1       while(1)
  28   1        {
  29   2          Key_temp=Keyboard();                 //键盘扫描 
  30   2          if(Key_temp==KEY_FUNCTION )          //功能切换
  31   2            {
  32   3              if(State_FUNCTION<2)State_FUNCTION++;   //如果状态值小于对大状态,则状态值加1
  33   3              else State_FUNCTION=0;         
  34   3            }   
  35   2          switch(State_FUNCTION)               //功能选择
  36   2            {
  37   3             case 0: Clock(Key_temp);       break;  //时钟显示
  38   3             case 1: Calculator(Key_temp);  break;  //计算器
  39   3             case 2: DS18B20();             break;  //温度计
  40   3             default :                      break;
  41   3            }
  42   2       
  43   2        }
  44   1      }
  45          
  46          /**************************************
  47          初始化程序 
  48          1 定时器 0 初始化
  49          2 LCD1602初始化
  50          3 时钟芯片 DS1302 初始化
  51          
  52           
  53          **************************************/
  54          void Initialization(void)
  55          {
C51 COMPILER V7.50   MAIN                                                                  04/09/2007 18:39:43 PAGE 2   

  56   1       
  57   1      Bell=1;       
  58   1      EA=1;
  59   1      ET0=1;
  60   1      TR0=1;
  61   1      TMOD=0X01;
  62   1      TH0=(65536-50000)/256;
  63   1      TL0=(65536-50000)%256;
  64   1      LCD_init();
  65   1      Initial_DS1302();
  66   1      GotoXY(0,0);
  67   1      Print("Date: ");
  68   1      GotoXY(0,1);
  69   1      Print("Time: ");
  70   1      }


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