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

📄 main.lst

📁 51单片机C语言常用模块与综合系统设计实例精讲
💻 LST
字号:
C51 COMPILER V7.06   MAIN                                                                  10/18/2006 23:54:20 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include <stdio.h>
   2          #include <absacc.h>
   3          #include <intrins.h>
   4          #include <./Atmel/at89x52.h>
   5          #include "source.h"
   6          void delay_10us(unsigned char tus){//在晶振频率为18.432MHZ时延时10微秒的函数
   7   1              tus--;
   8   1              while(tus--){
   9   2                      _nop_();_nop_();_nop_();
  10   2                      _nop_();_nop_();_nop_();
  11   2                      _nop_();_nop_();_nop_();
  12   2              }
  13   1      }
  14          main(void){
  15   1              unsigned char temp,i;
  16   1              test_sram();//测试写入SRAM的值是否和写入RAM的值是一致的
  17   1              delay_10us(100);//延时1毫秒
  18   1              temp=test_ADC();
  19   1              delay_10us(100);//延时1毫秒
  20   1              test_DAC(0x55);
  21   1              delay_10us(100);//延时1毫秒
  22   1              temp=test_SWITCH();
  23   1              delay_10us(100);//延时1毫秒
  24   1              test_LED_ON();
  25   1              for(i=0;i<500;i++){ //延时LED灯亮500毫秒
  26   2                      delay_10us(100);//延时1毫秒
  27   2              }
  28   1              test_LED_OFF();
  29   1              for(i=0;i<500;i++){ //延时LED熄灭500毫秒
  30   2                      delay_10us(100);//延时1毫秒
  31   2              }
  32   1              test_GPIO();
  33   1      }
  34          void test_sram(void){
  35   1              unsigned char SRAM_BUFFWR[8]={0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08};
  36   1              unsigned char SRAM_BUFFRD[8];
  37   1              unsigned char i;
  38   1              for(i=0;i++;i<8)
  39   1              XBYTE[SRAM+i]=SRAM_BUFFWR[i];           // 向SRAM写数据
  40   1              for(i=0;i++;i<8)
  41   1              SRAM_BUFFRD[i]=XBYTE[SRAM+i];           // 从SRAM读数据
  42   1      }
  43          
  44          unsigned char test_ADC(void){
  45   1              unsigned char result,i;
  46   1              XBYTE[ADC0804]=0;       // 启动ADC
  47   1              for(i=0;i<500;i++){ //延时500毫秒或检测ADC_INT,为低电平时读AD转换值
  48   2                      delay_10us(100);//延时1毫秒
  49   2              }
  50   1              result=XBYTE[ADC0804];//AD转换完毕,读取转换后的值
  51   1              return result;
  52   1      }
  53          
  54          void test_DAC(unsigned char dac){//测试DA转换,把数值dac转换成模拟电压输出
  55   1              XBYTE[AD5330]=dac;//把dac值转换成模拟值
C51 COMPILER V7.06   MAIN                                                                  10/18/2006 23:54:20 PAGE 2   

  56   1      }
  57          
  58          unsigned char test_SWITCH(void){//测试开关
  59   1              unsigned char ret;
  60   1              ret=XBYTE[SWITCH];//读开关的的状态
  61   1              return ret;
  62   1      }
  63          
  64          void test_LED_ON(void){//LED点亮
  65   1              XBYTE[LED]=0;//LED灯寄存器D0设置为0
  66   1      }
  67          void test_LED_OFF(void){//LED等熄灭
  68   1              XBYTE[LED]=1;//LED灯寄存器D0设置为1
  69   1      }
  70          void test_GPIO(void){
  71   1              unsigned char IO3,IO4;
  72   1              XBYTE[GPIO_C]=0x55;                                     // 写GPIO16~GPIO23输出状态
  73   1              XBYTE[GPIO_D]=0xAA;                                     // 写GPIO31~GPIO24输出状态
  74   1              IO3=XBYTE[GPIO_A];                                      // 读GPIO7~GPIO0的状态
  75   1              IO4=XBYTE[GPIO_B];                                      // 读GPIO15~GPIO8的状态
  76   1      }
  77          


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