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

📄 isd2560.lst

📁 ISD2560,60秒的模拟语音芯片驱动程序.用来还行
💻 LST
字号:
C51 COMPILER V7.06   ISD2560                                                               11/04/2008 19:06:25 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE ISD2560
OBJECT MODULE PLACED IN ISD2560.OBJ
COMPILER INVOKED BY: F:\keil c\C51\BIN\C51.EXE ISD2560.C BROWSE DEBUG OBJECTEXTEND TABS(16)

stmt level    source

   1          /******************************************************
   2          工程:语音芯片ISD2560的驱动程序
   3          功能:语音芯片ISD2560是一个有60秒的直接存储的芯片
   4          作者:永昌
   5          日期:07.08.08
   6          *******************************************************/
   7          #include<reg52.h>
   8          #include<keyscan.h>
   9          #include<max7219.h>
  10          #define uchar unsigned char
  11          #define uint unsigned int 
  12          
  13          sbit ISD2560_P_R=P3^0;    //录放音,高电平放,低电平录
  14          sbit ISD2560_CE=P3^3;     //片选端,在下降沿可锁存地址
  15          sbit ISD2560_PD=P3^2;     //在高电平的时候进入节电模式,低电平可录音放音
  16          sbit ISD2560_EOM=P3^1;    //在录放音结束时,插入结束标志
  17          
  18          bit play_flag=0;                                 //放音标示
  19          bit record_flag=0;                               //录音标示
  20          
  21          uchar i=0,count=0;
  22          /**************************************************
  23          函数: void start_record()
  24          功能: 开始录制音乐
  25          ***************************************************/
  26          void start_record()
  27          {
  28   1        ISD2560_CE=0;                 //片选
  29   1        ISD2560_P_R=0;                //录制
  30   1        ISD2560_PD=0;                 //非节电模式
  31   1      }
  32          /**************************************************
  33          函数: void start_play()
  34          功能: 开始播放音乐
  35          ***************************************************/
  36          void start_play()
  37          {
  38   1       ISD2560_CE=0;    //片选
  39   1       ISD2560_P_R=1;   //播放
  40   1       ISD2560_PD=0;    //非节电模式
  41   1      }  
  42          
  43          /***************************************************
  44          函数:void time_0() interrupt 1
  45          功能:为了防止录音超过60s.当录音到60s 时自动放音,当有
  46               放音按键按下时,清0 
  47          ***************************************************/
  48          void time_0() interrupt          1
  49          {
  50   1        TH0=0x3c;
  51   1        TL0=0xb0;   //50ms
  52   1        i++;
  53   1        if(i==20)
  54   1        {
  55   2         i=0;
C51 COMPILER V7.06   ISD2560                                                               11/04/2008 19:06:25 PAGE 2   

  56   2         count++;     
  57   2        }
  58   1      }
  59          /***************************************************
  60          主函数
  61          ***************************************************/
  62          void main()
  63          {
  64   1        TMOD=0x11;
  65   1        TH0=0x3c;
  66   1        TL0=0xb0;
  67   1        //TR0=1;
  68   1        ET0=1;
  69   1        EA=1;
  70   1        P1=0;
  71   1        write_7219();
  72   1        init_7219();
  73   1        while(1)
  74   1         {
  75   2           keyscan();
  76   2                       if(key_flag)
  77   2                        {
  78   3                        if(key_val==12) //开始录音,录音的时候,不能放音
  79   3                          {
  80   4                                       record_flag=1;    
  81   4                                       play_flag=0;
  82   4                                       }
  83   3                         if(key_val==13) //开始放音,放音标示为1,录音为0
  84   3                          {
  85   4                                       play_flag=1;
  86   4                                       record_flag=0;
  87   4                                      } 
  88   3                                       if(key_val==14) //停止按键
  89   3                                        {
  90   4                                         TR0=0;
  91   4                                         count=0;
  92   4                                         play_flag=0;
  93   4                                         record_flag=0;
  94   4                 ISD2560_PD=1;          //节电模式,一定要要的东西
  95   4                                        }
  96   3                       if(!ISD2560_EOM)ISD2560_PD=1;   //放音,节电中
  97   3                       if(play_flag)
  98   3                       {
  99   4                        start_play();  //放音
 100   4                        TR0=0;
 101   4                        TR0=1; 
 102   4                        }
 103   3                       if(record_flag)
 104   3                        {
 105   4                        start_record();//录音
 106   4                        TR0=1;
 107   4                         }
 108   3                      } //if(key_flag)
 109   2          if(count>59)count=0;
 110   2          send_7219(k6,count/10);
 111   2          send_7219(k7,count%10);
 112   2        }
 113   1      }  


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    473    ----
C51 COMPILER V7.06   ISD2560                                                               11/04/2008 19:06:25 PAGE 3   

   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      3    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      3    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -