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

📄 8279setting.lst

📁 基于8051和8279的数字时钟程序
💻 LST
字号:
C51 COMPILER V7.50   8279SETTING                                                           01/16/2009 20:31:50 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE 8279SETTING
OBJECT MODULE PLACED IN 8279setting.OBJ
COMPILER INVOKED BY: D:\学习软件\keil\C51\BIN\C51.EXE 8279setting.c ROM(COMPACT) BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include<8279setting.h>
   2          #include<ABSACC.H>
   3          #include<reg52.H>
   4          #define COM XBYTE [0x8001]      //8279命令据口地址
   5          #define DAT XBYTE [0x8000]      //8279数据口地址
   6          #define uchar   unsigned char   
   7          
   8          uchar code key_table[16]={1,4,7,0,2,5,8,'e',3,6,9,'f','a','b','c','d'};//按键编码
   9          uchar code dis_table[12]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40,0x00};//数字代码0~9,'-'
  10          
  11          void init_8279(void)//8279初始化
  12          {       
  13   1              command_write_8279(0xd1);
  14   1              command_write_8279(0x00);
  15   1              command_write_8279(0x30);       
  16   1      }
  17          
  18          void busy_8279(void)//等待忙
  19          {       uchar status;
  20   1              P0=0X80;        
  21   1              do
  22   1                      status=COM;
  23   1              while(status&0x80==0);
  24   1      }
  25          
  26          void command_write_8279(uchar command)/*写命令*/
  27          {
  28   1              busy_8279();
  29   1              COM=command;
  30   1      }
  31          void data_write_8279(uchar w_data)/*写数据*/
  32          {
  33   1              busy_8279();
  34   1              DAT=w_data;
  35   1      }
  36          uchar status_read_8279(void)/*读状态*/
  37          {       
  38   1              uchar status;
  39   1              status=COM;
  40   1              return status;
  41   1      }
  42          
  43          uchar data_read_8279(void)/*读数据*/
  44          {       
  45   1              uchar r_data;
  46   1              r_data=DAT;
  47   1              return r_data;
  48   1      }
  49          
  50          uchar deky_8279(void)/*判断是否有键按下子程序*/
  51           { 
  52   1              uchar k;
  53   1              k=COM;
  54   1              return(k&0x1f);
  55   1      }
C51 COMPILER V7.50   8279SETTING                                                           01/16/2009 20:31:50 PAGE 2   

  56          
  57          uchar keyin_8279(void)/*取键值函数*/
  58          {
  59   1              uchar i,j1,k1;
  60   1              while(deky_8279()==0);
  61   1              command_write_8279(0x40);
  62   1              i=data_read_8279();
  63   1              j1=(i&0x18)>>3;
  64   1              k1=i&0x03;
  65   1              i=4*j1+k1;
  66   1              return(key_table[i]);
  67   1       }
  68          
  69          void disp(uchar pos, uchar disp_data)//对应位置上显示相应数字
  70          {       
  71   1              command_write_8279(pos+0x80);
  72   1              data_write_8279(dis_table[disp_data]);          
  73   1      }


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