counter_def.lst

来自「菜鸟,详细NRF24E1运用,程序,电路」· LST 代码 · 共 118 行

LST
118
字号
C51 COMPILER V9.00   COUNTER_DEF                                                           11/13/2010 14:43:33 PAGE 1   


C51 COMPILER V9.00, COMPILATION OF MODULE COUNTER_DEF
OBJECT MODULE PLACED IN counter_def.OBJ
COMPILER INVOKED BY: D:\Program Files\KEIL C  V4\C51\BIN\C51.EXE counter_def.c BROWSE DEBUG OBJECTEXTEND

line level    source

*** WARNING C500 IN LINE 1 OF COUNTER_DEF.C: LICENSE ERROR (R208: RENEW LICENSE ID CODE (LIC))

   1          #include "def.h"
   2          #include "reg24le1.h"
   3          
   4          /*软件延时函数*/
   5          
   6          void delay(unsigned int x)
   7          {
   8   1      unsigned char j=120;
   9   1         for(;x>0;x--)
  10   1           for(;j>0;j--)
  11   1                  {
  12   2                      ;
  13   2                      }
  14   1      
  15   1      }
  16          
  17          /*计数器配置函数,名称init_counter(),
  18          无输入参数,无返回,用于计数器初始化*/
  19          
  20          void init_counter(void)
  21          {
  22   1      //配置计数器
  23   1      TMOD=0x05;        //配置计数器0成沿计数方式
  24   1      TR0=1;            //启动计数器
  25   1      TH0=0;            //高位清0
  26   1      TL0=0;        //低位清0
  27   1      
  28   1      }
  29          
  30          
  31          void init_uart(void)
  32          {
  33   1          //配置串口
  34   1          CLKCTRL=0X28;
  35   1          CLKLFCTRL = 0x01;           // RCOSC32K 
  36   1      
  37   1                      // UART 
  38   1              P0DIR &= 0xF7;                          // P03 (TxD) is output
  39   1              P0DIR |= 0x10;                          // P04 (RxD) is input 
  40   1              P0|=0x18;        
  41   1                      
  42   1              S0CON = 0x50;  
  43   1              PCON |= 0x80;                           // SMOD = 1
  44   1              WDCON |= 0x80;                          // Select internal baud rate generator 
  45   1              
  46   1              //S0RELL = 0xFB;        
  47   1              S0RELL = 0xF3;         // BAUD_38K4
  48   1        //  S0RELL = 0x98;                       //4800
  49   1        //  S0RELL = 0x30; 
  50   1                  S0RELH = 0x03;      
  51   1              //P0CON = 0x13;
  52   1              //P0CON = 0x44;                  
  53   1              //ES0 = 1;
  54   1      
C51 COMPILER V9.00   COUNTER_DEF                                                           11/13/2010 14:43:33 PAGE 2   

  55   1       }
  56          
  57          /*IO口配置函数*/
  58          
  59          void io_config(void){
  60   1       P0DIR&=~(0X20);//配置P05为输出作为脉冲发生端口
  61   1       P0DIR|=0x80;   //配置P07为输入,是一个复用口,这里是T0                         
  62   1       P05=0;
  63   1      }
  64          
  65          /** 计数器脉冲读取的函数,返回的是当前计数器的脉冲数目**/
  66          /* 函数名称:counter_result(),输入参数无*/
  67          
  68          unsigned int counter_result(void)
  69          {
  70   1      static unsigned int flowtime=0;                 //记录脉冲超过50000个的次数
  71   1      unsigned int res;                                               //脉冲数保存
  72   1      res=TH0*256+TL0;                                                //计算当前记录的脉冲个数
  73   1      if(res==50000)                                                  //如果脉冲到50000个就清理TH0和TL0,flowtime自加一次
  74   1      {
  75   2      flowtime++;
  76   2      res=0;
  77   2      }
  78   1      return (flowtime*50000+res);                     //返回当前记录的脉冲总数
  79   1      }
  80          
  81          
  82          /*通过串口打印一个字符到电脑的串行终端*/
  83          
  84          void putch(char s)
  85          {
  86   1      
  87   1      S0BUF=s;
  88   1      while(!TI0);
  89   1      TI0=0;
  90   1      }


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


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

⌨️ 快捷键说明

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