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

📄 音乐按键实验.lst

📁 用按键来产生不同的频率
💻 LST
字号:
C51 COMPILER V8.02   __乐按键实验                                                          07/31/2008 22:25:02 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE __乐按键实验
OBJECT MODULE PLACED IN 音乐按键实验.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 音乐按键实验.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include<reg52.h>
   2          #include"delay.h"
   3          #include"key.h"
   4          
   5          #define uchar unsigned char
   6          #define uint unsigned int
   7          
   8          uchar count=0;
   9          sbit bell=P3^7;
  10          sbit led=P1^7;
  11          
  12          void Time1_init()
  13          {
  14   1              IE=0x88;
  15   1              TMOD=0x10;
  16   1              TH1=0xb1;                                //初值20ms
  17   1              TL1=0xdf;
  18   1      }
  19          
  20          void Time1_int() interrupt 3
  21          {
  22   1              TH1=0xb1;
  23   1              TL1=0xdf;
  24   1              count++;        
  25   1      }
  26          
  27          void music(uchar frequence,uchar time)
  28          {
  29   1              TR1=1;
  30   1              while(1)
  31   1              {
  32   2                      bell=!bell;                       //蜂鸣器在"frequence"ms内一开一关各一段时间,因"frequence"
  33   2                      led=!led;                         //因"frequence"不同,故产生的频率不同,因此声音就不同
  34   2                      Delay_xMs(frequence);
  35   2                      if(time==count)           //"time*20ms"只决定总的响声时间
  36   2                      {
  37   3                              count=0;
  38   3                              break;
  39   3                      }
  40   2              }
  41   1              TR1=0;
  42   1              bell=1;
  43   1              led=1;
  44   1      }
  45          
  46          void main()
  47          {
  48   1              uchar k;
  49   1              Time1_init();
  50   1              while(1)
  51   1              {
  52   2                      k=getch();
  53   2                      if(k!=255)
  54   2                              music(k,10);
  55   2              }
C51 COMPILER V8.02   __乐按键实验                                                          07/31/2008 22:25:02 PAGE 2   

  56   1      }


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