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

📄 dvcpu.lst

📁 一个调整ADC gain offset 的程序
💻 LST
字号:
C51 COMPILER V7.50   DVCPU                                                                 01/17/2007 12:46:53 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE DVCPU
OBJECT MODULE PLACED IN .\output\dvCPU.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ..\code\dvCPU.c LARGE BROWSE DEBUG OBJECTEXTEND PRINT(.\dvCPU.lst) OBJECT(.
                    -\output\dvCPU.obj)

line level    source

   1          #include "extData.h"
   2          #include "DataType.h"
   3          #include "syscfg.h"
   4          #include "reg51.h"
   5          #include "dvcpu.h"
   6          #include "mtv415.h"
   7          #include "ram.h"
   8          #include "dvIIC.h"
   9          #include "fpga.h"
  10          #include "utility.h"
  11          #include "string.h"
  12          #include"define.h"
  13          #include "intrins.h"
  14          
  15          //chip configuration
  16          BYTE xdata PAMOD50 _at_  0xF50;
  17          BYTE xdata PAMOD51 _at_  0xF51;
  18          BYTE xdata PAMOD52 _at_  0xF52;
  19          BYTE xdata PAMOD53 _at_  0xF53;
  20          BYTE xdata PAMOD54 _at_  0xF54;
  21          BYTE xdata PAMOD55 _at_  0xF55;
  22          BYTE xdata OPTION56 _at_ 0xF56;
  23          BYTE xdata PADMOD57 _at_ 0xF57;
  24          BYTE xdata PADMOD5D _at_ 0xF5D;
  25          
  26          //IO  port
  27          BYTE xdata P6B0 _at_ 0xF38;
  28          BYTE xdata P6B1 _at_ 0xF39;
  29          BYTE xdata P6B2 _at_ 0xF3A;
  30          BYTE xdata P6B3 _at_ 0xF3B;
  31          BYTE xdata P6B4 _at_ 0xF3C;
  32          BYTE xdata P6B5 _at_ 0xF3D;
  33          BYTE xdata P6B6 _at_ 0xF3E;
  34          BYTE xdata P6B7 _at_ 0xF3F;
  35          BYTE xdata P4B0 _at_ 0xF58;
  36          BYTE xdata P4B1 _at_ 0xF59;
  37          BYTE xdata P4B2 _at_ 0xF5A;
  38          BYTE xdata P4B3 _at_ 0xF5B;
  39          BYTE xdata PORT6 _at_ 0xF81;
  40          BYTE xdata PORT4 _at_ 0xF82;
  41          
  42          //PWM DAC
  43          BYTE xdata  DA0 _at_ 0xF20;
  44          BYTE xdata  DA1 _at_ 0xF21;
  45          BYTE xdata  DA2 _at_ 0xF22;
  46          BYTE xdata  DA3 _at_ 0xF23;
  47          BYTE xdata  DA2FC _at_ 0xF2D;
  48          BYTE xdata  DA3FC _at_ 0xF2E;
  49          BYTE xdata  PFC _at_ 0xF2F;
  50          
  51          
  52          //IIC REGISTER
  53          BYTE xdata IICCTR _at_ 0xF00;
  54          BYTE xdata IICSTUS1 _at_ 0xF01;
C51 COMPILER V7.50   DVCPU                                                                 01/17/2007 12:46:53 PAGE 2   

  55          BYTE xdata INTFLG1 _at_ 0xF03;
  56          BYTE xdata INTEN1 _at_ 0xF04;
  57          BYTE xdata MBUF  _at_ 0xF05;
  58          BYTE xdata DDCCTRA1 _at_ 0xF06;
  59          BYTE xdata SLVAADR1 _at_ 0xF07;
  60          BYTE xdata RCBBUF1 _at_ 0xF08;
  61          //BYTE xdata TXBBUF1 _at_ 0xF08;
  62          BYTE xdata SLVBADR1 _at_ 0xF09;
  63          BYTE xdata CTRSLVB1 _at_ 0xF0A;
  64          BYTE xdata DDCCTRA2 _at_ 0xF86;
  65          BYTE xdata SLVAADR2 _at_ 0xF87;
  66          BYTE xdata IICSTUS2 _at_ 0xF91;
  67          BYTE xdata INTFLG2 _at_ 0xF93;
  68          BYTE xdata INTEN2 _at_ 0xF94;
  69          BYTE xdata RCBBUF2 _at_ 0xF98;
  70          //BYTE xdata TXBBUF2 _at_ 0xF98;
  71          BYTE xdata SLVBADR2 _at_ 0xF99;
  72          BYTE xdata CTRSLVB2 _at_ 0xF9A;
  73          
  74          //  A/D CONVERTER
  75          
  76          BYTE xdata ADC _at_ 0xF10;
  77          //BYTE xdata ADC0 _at_ 0xF10;
  78          BYTE xdata ADC1 _at_ 0xF11;
  79          BYTE xdata ADC2 _at_ 0xF12;
  80          BYTE xdata ADC3 _at_ 0xF13;
  81          
  82          //ISP
  83          BYTE xdata ISPSLV _at_ 0xF0B;
  84          BYTE xdata ISPEN _at_ 0xF0C;
  85          BYTE xdata ISPCMP1 _at_ 0xF0D;
  86          BYTE xdata ISPCMP2 _at_ 0xF0E;
  87          BYTE xdata ISPCMP3 _at_ 0xF0F;
  88          
  89          //HIGH DRIVRING PADS
  90          BYTE xdata DRCTRL _at_ 0xF5C;
  91          
  92          //ETIMER
  93          BYTE xdata ETCTR _at_ 0xF88;
  94          BYTE xdata ETMOD _at_ 0xF89;
  95          BYTE xdata THET _at_ 0xF8A;
  96          BYTE xdata TLET _at_ 0xF8B;
  97          BYTE xdata RCAPETH _at_ 0xF8C;
  98          BYTE xdata RCAPETL _at_ 0xF8D;
  99          BYTE xdata EINT1PEN _at_ 0xF8E;
 100          
 101          //WatchDog Timer
 102          BYTE xdata WDT _at_ 0xF18;
 103          
 104          //INT3&INT4
 105          BYTE xdata INTFLG _at_ 0xF48;
 106          BYTE xdata INTEN  _at_ 0xF49 ;
 107          
 108          
 109          #define ADC0 ADC
 110          #define TXBBUF1  RCBBUF1
 111          #define TXBBUF2  RCBBUF2
 112          
 113          #define EnableInterrupt()  { EA = 1;}
 114          #define DisableInterrupt() { EA = 0;}
 115          
 116          #define EOF  -1
C51 COMPILER V7.50   DVCPU                                                                 01/17/2007 12:46:53 PAGE 3   

 117          
 118          
 119           void initSerialPort(void)
 120          {
 121   1      ETCTR = 0x30;//(Timer2 used to baut rate generator) 
 122   1      ETMOD = 0x01;
 123   1      THET = 0xFF;
 124   1      TLET = 0xB2;
 125   1      RCAPETH = 0xFF;  // the baut rate is 2400
 126   1      RCAPETL = 0xB2;
 127   1      EINT1PEN = 0x00;
 128   1      SCON = 0x50;     //serial port work mode 1,enable serial port receive.
 129   1      ETCTR|= 1<<2;    // TR2 = 1
 130   1      }
 131          
 132          
 133           void initTimer0(void) 
 134          {  
 135   1       // Set Time Base=2ms 
 136   1        TH0=(65536-2000)/256;
 137   1        TL0=(65536-2000)%256;
 138   1      }
 139          
 140           void initIIC(void)
 141          {  
 142   1       IICCTR = 0x00;
 143   1       INTFLG1 = 0x00;
 144   1       INTEN1 = 0x00;
 145   1      }
 146          
 147           void initWatchDog(void)
 148          {   
 149   1        WDT = 0x00; //disable the watchdog 
 150   1      }
 151          
 152           void dvCPUInit(void)
 153          {
 154   1      
 155   1      DisableInterrupt();
 156   1      PAMOD50 = 0x00; 
 157   1      PAMOD51 = 0x00;
 158   1      PAMOD52 = 0x44;
 159   1      PAMOD54 = 0x00;
 160   1      PAMOD55 = 0x00;//0x81;
 161   1      OPTION56 = 0x00;
 162   1      PADMOD57 = 0x00;
 163   1      PADMOD5D = 0xFF;
 164   1      DRCTRL = 0x00;
 165   1      
 166   1      TMOD = 0x01;  //Timer0 16bit timer.
 167   1      initSerialPort();
 168   1      initTimer0();
 169   1      initIIC();
 170   1      initWatchDog();
 171   1      //enable timer0 run
 172   1      TR0 = 1;
 173   1      //enable timer0 interrupt
 174   1      ET0 = 1;
 175   1      //enable extern interrupt 0
 176   1      EX0 = 0;
 177   1      //WDT =0x84;
 178   1      //enable all interrupt
C51 COMPILER V7.50   DVCPU                                                                 01/17/2007 12:46:53 PAGE 4   

 179   1      EnableInterrupt();
 180   1      }
 181          
 182          
 183          
 184          void Timer0(void) interrupt 1
 185          {
 186   1       TR0 = 0;
 187   1       initTimer0();
 188   1       if(m_Timer != 0)
 189   1       m_Timer--;
 190   1       IICTimerProcess();
 191   1       CalibrationTimerProcess();
 192   1       
 193   1       TR0 = 1;
 194   1      }
 195          #ifdef SW
              void SendChar(BYTE ch )
              {
              
                   SBUF = ch;
                   while(1)
                   {
                     if(TI)
                     {
                      TI =0;
                          break;
                     }
                   }
                  // SerialPort =ch;
              
               }
              
              #endif
 213          
 214          
 215          
 216          char putchar(char ch)
 217          {
 218   1      
 219   1          unsigned char cOutput[2];
 220   1           _nop_ ();
 221   1           _nop_ ();
 222   1            _nop_ ();
 223   1            _nop_ ();
 224   1          if ('\n' == ch)  // expand "\n" to CR LF
 225   1          {
 226   2              cOutput[0] = 0x0d;
 227   2              cOutput[1] = ch;
 228   2             #ifdef SW
                      SendChar(cOutput[0]);
                        SendChar(cOutput[1]);
                       #endif
 232   2               #ifdef HW
 233   2                SerialPort = cOutput[0];
 234   2                 _nop_ ();
 235   2                 _nop_ ();
 236   2                 _nop_ ();
 237   2                 _nop_ ();
 238   2                SerialPort= cOutput[1];
 239   2                #endif
 240   2          }
C51 COMPILER V7.50   DVCPU                                                                 01/17/2007 12:46:53 PAGE 5   

 241   1      
 242   1          else
 243   1      
 244   1          {
 245   2             #ifdef HW
 246   2              SerialPort=ch;
 247   2             #endif
 248   2           #ifdef SW
                    SendChar(ch);
                    #endif
 251   2           
 252   2          }
 253   1      
 254   1       
 255   1      
 256   1              return ch;
 257   1      }
 258          
 259          
 260          


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