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

📄 jie.lst

📁 一个遥控器的程序
💻 LST
字号:
C51 COMPILER V7.05   JIE                                                                   03/03/2007 10:53:44 PAGE 1   


C51 COMPILER V7.05, COMPILATION OF MODULE JIE
OBJECT MODULE PLACED IN jie.OBJ
COMPILER INVOKED BY: D:\keilc an\C51\BIN\C51.EXE jie.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include <reg922.h>
   2          #include <intrins.h>
   3          #define uchar unsigned char
   4          sbit BB=P1^2;                           //测试灯
   5          sbit KEY=P0^0;                           //键盘中断
   6          sbit OUT=P0^1;                          //动作键
   7          sbit  LED=P0^2;
   8          sbit RXD=P1^1;
   9          bit  sing;
  10          const uchar data BRGR1_DATA=0x00;      //波特率设为1200bit/s
  11          const uchar data BRGR0_DATA=0x0e; 
  12          
  13          void delay(uchar i);
  14          void UART_Ini();
  15          void INT_Ini();
  16          void KEY_Ini(); 
  17          void LedFlash(uchar i);
  18          void BBFlash(uchar i);
  19          
  20          
  21          void main() 
  22          { 
  23   1      
  24   1        INT_Ini();                //端口初始化:P0,P1口均设为准双向口
  25   1      
  26   1        DIVM=100;                                     //分频 
  27   1        BBFlash(200); 
  28   1        delay(1);
  29   1        BBFlash(200); 
  30   1        delay(1);
  31   1        BBFlash(200);       
  32   1        UART_Ini();               //串口初始化:
  33   1        OUT=1;                    ////////////////////////              
  34   1        KEY_Ini();                            //键盘中断设置
  35   1        EA=1;                                         //开总中断
  36   1        sing=1;
  37   1        while(1) 
  38   1        {     
  39   2           WDCON=0xe0;               //关闭看门狗WDRUN,完全掉电PCON=0x23;没有关WDT
  40   2           _nop_();
  41   2           _nop_();
  42   2           _nop_();
  43   2           _nop_();
  44   2           AUXR1|=0x80;               //置位CLKLP以降低功耗
  45   2           PCONA=0xff; 
  46   2           if(sing==1)
  47   2           { 
  48   3      //                INT_Ini();
  49   3                sing=0;
  50   3                PCON|=0x03;
  51   3           }   
  52   2        }
  53   1      }
  54          
  55          void key_int() interrupt 7 
C51 COMPILER V7.05   JIE                                                                   03/03/2007 10:53:44 PAGE 2   

  56          {
  57   1         EA=0;
  58   1         EKBI=0;
  59   1         PCONA=0xfd;
  60   1         while(!RI);
  61   1         RI=0;
  62   1            if(SBUF==0x55)
  63   1            {
  64   2               OUT=0;
  65   2               BBFlash(200);
  66   2               delay(3);           
  67   2            } 
  68   1      
  69   1            if(SBUF==0xAA)
  70   1            {
  71   2               OUT=1;
  72   2               BBFlash(200);
  73   2               delay(1);
  74   2               BBFlash(200);
  75   2               delay(3);  
  76   2            }
  77   1      //   KBCON=0x02;                      //相同电平产生中断      
  78   1         KBCON=0x00;
  79   1         EKBI=1;
  80   1         EA=1;
  81   1         sing=1; 
  82   1      }
  83          
  84          void delay(uchar i)              
  85          {
  86   1          uchar k;
  87   1          for(;i;i--)
  88   1          {
  89   2             for(k=0;k<250;k++)             //延时1毫秒
  90   2             {
  91   3                      _nop_();
  92   3                                      _nop_();
  93   3                                      _nop_();     
  94   3                                      _nop_();
  95   3                      _nop_();
  96   3                      _nop_();
  97   3                                      _nop_();
  98   3                                      _nop_();     
  99   3      
 100   3             }
 101   2      
 102   2          }
 103   1      }
 104          
 105          
 106          /**************************************
 107          * 名称:     UART_Ini()
 108          * 功能:     UART初始化,波特率1200bps
 109          **************************************/
 110          
 111          void UART_Ini()
 112          {   
 113   1          SCON=0x40;                      //串口模式1
 114   1          SSTAT=0x00;
 115   1          REN=1;
 116   1          BRGCON=0;
 117   1          BRGR1=BRGR1_DATA;
C51 COMPILER V7.05   JIE                                                                   03/03/2007 10:53:44 PAGE 3   

 118   1          BRGR0=BRGR0_DATA;     
 119   1          BRGCON=3;                       //启动UART的波特率发生器
 120   1      }
 121          
 122          
 123          void  INT_Ini()                       //端口初始化
 124          {
 125   1        P0M1=0x00; 
 126   1        P0M2=0x00; 
 127   1        P1M1=0x00;
 128   1        P1M2=0x00;
 129   1      //  P0 = 0xfe;
 130   1      //  P1 = 0xfd;
 131   1      }
 132          
 133          void KEY_Ini()
 134          {
 135   1        KBPATN=0x00;                   //设置匹配条件            
 136   1        KBCON=0x00;                    //设置为相等中断
 137   1        KBMASK=0x01;
 138   1        EKBI=1;                       //使能键盘中断位
 139   1      
 140   1      //相同电平产生中断
 141   1      /*
 142   1        KBPATN=0x01;                   //设置匹配条件            
 143   1        KBCON=0x02;                    //设置为相等中断
 144   1        KBMASK=0x01;
 145   1        EKBI=1;
 146   1      */   
 147   1      }
 148          void BBFlash(uchar i)
 149          {
 150   1              uchar k;
 151   1              for(k=0;k<i;k++)
 152   1              {
 153   2              BB=~BB;                             //蜂鸣器响一下
 154   2              BB=~BB;
 155   2              BB=~BB;
 156   2              }
 157   1      } 


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


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

⌨️ 快捷键说明

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