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

📄 lm386.lst

📁 STC51系列单片机学习板演示程序(汇编语言) 有详细注释 适合初学单片机的朋友
💻 LST
字号:
C51 COMPILER V7.20   LM386                                                                 03/24/2007 01:10:28 PAGE 1   


C51 COMPILER V7.20, COMPILATION OF MODULE LM386
OBJECT MODULE PLACED IN LM386.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE LM386.C BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*****************************************************************************
   2                                                          MCU8051学习板演示程序
   3                                                                  
   4                                          (c) Copyright 2007-2007,广州恒芯电子
   5                                                          All Rights Reserved
   6          *****************************************************************************/
   7          
   8          /*****************************************************************************
   9          程序说明
  10          名称: MCU8051学习板演示程序(LM386测试)
  11          功能: 发出报警声
  12          版本:2007-03-01
  13          *****************************************************************************/
  14          
  15          /*****************************************************************************
  16          硬件说明
  17          单片机:   兼容MCS-51单片机/STC89C51
  18          晶振频率: 12MHz
  19          *****************************************************************************/
  20          
  21          #include "regx52.h"
  22          
  23          /****************************************************************************
  24          说明: 程序预定义
  25          *****************************************************************************/
  26          #define LM386_DATA  P3_7/*LM386输出端*/
  27          
  28          void Bell();/*发出报警声*/
  29          
  30          /****************************************************************************
  31          名称: Delay
  32          说明: 程序延时
  33          参数: 无
  34          返回: 无
  35          *****************************************************************************/
  36          void Delay();
  37          
  38          unsigned char m_ucTH;
  39          unsigned char m_ucTL;
  40          
  41          /*****************************************************************************
  42          程序开始
  43          *****************************************************************************/
  44          void main()
  45          {       
  46   1              static unsigned char a=0;
  47   1      
  48   1              /*T0中断设定*/
  49   1              TMOD=0x01;/*使用T0:GATE=0,C/T=0(定时),M1 M0=01(工作方式1)*/
  50   1              ET0=1;/*允许T0中断*/
  51   1              TR0=1;/*使T0工作*/
  52   1              EA=1;/*总中断开启*/
  53   1      
  54   1              while(1)
  55   1              {       
C51 COMPILER V7.20   LM386                                                                 03/24/2007 01:10:28 PAGE 2   

  56   2                      a=1-a;
  57   2                      if(a)
  58   2                      {
  59   3                              m_ucTH=0xff;/*输出5K*/  
  60   3                          m_ucTL=0x38;
  61   3                      }
  62   2                      else
  63   2                      {
  64   3                              m_ucTH=0xfc;/*输出1K*/
  65   3                          m_ucTL=0x38;
  66   3              
  67   3                      }
  68   2      
  69   2                      Delay();
  70   2                      Delay();
  71   2              }
  72   1      }
  73          
  74          /*****************************************************************************
  75          名称: Interrupt1Handler
  76          说明: T0中断入口
  77          参数: 无
  78          返回 :无
  79          *****************************************************************************/
  80          void Interrupt1Handler() interrupt 1
  81          {
  82   1              Bell();/*发出报警声*/
  83   1      
  84   1              TH0=m_ucTH;/*重新设置T0定时值*/
  85   1              TL0=m_ucTL;
  86   1      }
  87          
  88          /****************************************************************************
  89          名称: Bell
  90          说明: 发出报警声
  91          参数: 无
  92          返回: 无
  93          *****************************************************************************/
  94          void Bell()
  95          {
  96   1              static unsigned char a=0;
  97   1      
  98   1              a=1-a;
  99   1              if(a)/*LM386输出端取反*/
 100   1              {
 101   2                      LM386_DATA=1;   
 102   2              }
 103   1              else
 104   1              {
 105   2                      LM386_DATA=0;
 106   2              }
 107   1      
 108   1      }
 109          
 110          /****************************************************************************
 111          名称: Delay
 112          说明: 程序延时
 113          参数: 无
 114          返回: 无
 115          *****************************************************************************/
 116          void Delay()
 117          {
C51 COMPILER V7.20   LM386                                                                 03/24/2007 01:10:28 PAGE 3   

 118   1          static unsigned char a,b;
 119   1      
 120   1          for(a=0;a<255;a++)
 121   1                      for(b=0;b<255;b++);
 122   1      }
 123          
 124          
 125          


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