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

📄 lcd.lst

📁 该程序将A/D采样后的值通过串口传送到上位机上
💻 LST
字号:
C51 COMPILER V7.09   LCD                                                                   11/10/2008 15:01:40 PAGE 1   


C51 COMPILER V7.09, COMPILATION OF MODULE LCD
OBJECT MODULE PLACED IN lcd.OBJ
COMPILER INVOKED BY: C:\SiLabs\MCU\IDEfiles\C51\BIN\C51.exe lcd.c DB OE

line level    source

   1          #include "c8051f040.h"
   2          #include "STDIO.h"
   3          #include "ADC.h"
   4          #include "const.h"
   5          unsigned int result;
   6          void Delay1us(unsigned char);
   7          void Delay1ms(unsigned char);
   8          void Delay1s(unsigned char T);           
   9          void ADC0_Init (void)
  10          {
  11   1         char SFRPAGE_SAVE = SFRPAGE;        
  12   1         SFRPAGE = LEGACY_PAGE;              
  13   1      
  14   1         REF0CN = 0x07;
  15   1      
  16   1         SFRPAGE = ADC0_PAGE;                
  17   1              ADC0CF    = 0x10;
  18   1          ADC0CN    = 0xC0;
  19   1         AMX0SL = 0x00;                      
  20   1         SFRPAGE = SFRPAGE_SAVE;            
  21   1      }
  22          
  23          void ADC0_Conver (void)
  24          {
  25   1         unsigned int data temp;
  26   1         char SFRPAGE_SAVE = SFRPAGE;        
  27   1         SFRPAGE = ADC0_PAGE;                
  28   1                      AMX0SL = 0;                                      
  29   1                      Delay1ms(1);
  30   1                      AD0INT = 0;                     
  31   1                      AD0BUSY = 1;
  32   1                      while (!AD0INT);
  33   1                      temp = ADC0H;
  34   1                      temp = temp*256 + ADC0L;
  35   1                      result = temp;                
  36   1                      SFRPAGE = SFRPAGE_SAVE;    
  37   1         }
  38          void Timer_Init()
  39          {
  40   1         SFRPAGE   = TMR3_PAGE;
  41   1          TMR3CN    = 0x04;
  42   1          TMR3CF    = 0x08;
  43   1          RCAP3L    = 0x60;
  44   1          RCAP3H    = 0xFF;
  45   1      }
  46          void UART_Init()
  47          {
  48   1              SFRPAGE   = UART0_PAGE;
  49   1          SCON0     = 0x50;
  50   1          SSTA0     = 0x1A;
  51   1              ES0=0;
  52   1              PS=0;
  53   1              TI0=1;
  54   1              RI0=0;
  55   1      }
C51 COMPILER V7.09   LCD                                                                   11/10/2008 15:01:40 PAGE 2   

  56          void Port_IO_Init()
  57          {
  58   1         SFRPAGE = CONFIG_PAGE;             
  59   1              XBR0 = 0x04;
  60   1              XBR1 = 0x00;
  61   1              XBR2 = 0x40;
  62   1         P5MDOUT = 0xf0;         
  63   1      }
  64          void Oscillator_Init()
  65          {
  66   1              SFRPAGE   = CONFIG_PAGE;
  67   1          OSCICN    = 0x83;
  68   1      }
  69          void Delay1us(unsigned char T) 
  70          {       while(T){
  71   2              T--;
  72   2              }
  73   1      }
  74          void Delay1ms(unsigned char T)
  75          {
  76   1              while (T)
  77   1              {
  78   2                      Delay1us(200);
  79   2                      Delay1us(200);
  80   2                      Delay1us(200);
  81   2                      Delay1us(200);
  82   2                      Delay1us(200);
  83   2                      T--;
  84   2              }
  85   1      }
  86          void Delay1s(unsigned char T)
  87          {
  88   1              while (T)
  89   1              {
  90   2                      Delay1ms(200);
  91   2                      Delay1ms(200);
  92   2                      Delay1ms(200);
  93   2                      Delay1ms(200);
  94   2                      Delay1ms(200);
  95   2                      T--;
  96   2              }
  97   1      }
  98          void main(){
  99   1              unsigned int i;
 100   1         float voltage;
 101   1         unsigned int tp;
 102   1         Oscillator_Init();
 103   1          WDTCN=0xDE;                   
 104   1          WDTCN=0xAD;
 105   1              Port_IO_Init();
 106   1              Timer_Init();
 107   1          UART_Init();
 108   1              ADC0_Init();
 109   1      while(1)
 110   1              {
 111   2            Delay1ms(2000);
 112   2            ADC0_Conver();
 113   2      
 114   2            SFRPAGE = UART0_PAGE;               
 115   2            printf("\n");
 116   2            SFRPAGE = CONFIG_PAGE;              
 117   2                      voltage=result*2860.0/4095;
C51 COMPILER V7.09   LCD                                                                   11/10/2008 15:01:40 PAGE 3   

 118   2               tp=voltage;
 119   2                              i=0;
 120   2                     SFRPAGE = UART0_PAGE;               
 121   2                              printf ("Channel %d voltage is %dmV\n",i,tp);
 122   2                     SFRPAGE = CONFIG_PAGE;             
 123   2                                      break;
 124   2                              }
 125   1              
 126   1              }


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