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

📄 1420.lst

📁 语音芯片1420P。可录音20秒。自己编的程序。
💻 LST
📖 第 1 页 / 共 2 页
字号:
 242   2                                              {
 243   3                                                      key=P2;
 244   3                                                      if(key==0xff)continue;
 245   3                                                      delay_ms(10);
 246   3                                                      key=P2;
 247   3                                                      if(key==0xff)continue;
 248   3                                                      switch(key)
 249   3                                                              {
 250   4                                                                      case 0xfe:
 251   4                                                                              {
 252   5                                                                              P0=0X00;
 253   5                                                                              P0=voice_addr[0];
 254   5                                                                              PLAYE=1;
 255   5                                                                              PLAYE=0;//播放
 256   5      
 257   5      
 258   5                                                                              break;
 259   5                                                                              }
 260   4                                                                      case 0xfd:
 261   4                                                                              {
 262   5                                                                              P0=0X00;
 263   5                                                                              P0=voice_addr[1];
 264   5      
 265   5                                                                              PLAYE=1;
 266   5                                                                              PLAYE=0;
 267   5      
 268   5                                                                              break;
 269   5                                                                              }
 270   4                                                                      case 0xfb:
 271   4                                                                              {
 272   5                                                                              P0=0X00;
 273   5                                                                              P0=voice_addr[2];
 274   5      
 275   5                                                                              PLAYE=1;
 276   5                                                                              PLAYE=0;
 277   5      
 278   5                                                                              break;
 279   5                                                                              }
 280   4      
 281   4                                                                      default:
 282   4                                                                      {
 283   5                                                                              break;
 284   5                                                                      }
 285   4      
 286   4      
 287   4                                                              }
 288   3                                                      flag_playe=0;
 289   3      
 290   3                                              }
 291   2                      }
 292   1      }
 293          
 294          
 295          
 296          //操作模式
 297          void work()
 298          {
 299   1              while(flag==1)
 300   1                {
 301   2                                      key=P2;
 302   2                                              if(key==0xff)continue;
 303   2                                              delay_ms(10);
C51 COMPILER V8.02   1420                                                                  04/03/2008 09:30:30 PAGE 6   

 304   2                                              key=P2;
 305   2                                              if(key==0xff)continue;
 306   2                                              switch(key)
 307   2                                              {
 308   3                                                      case 0xfe:
 309   3                                                      {
 310   4                                                      //      P0=0Xff;
 311   4                                                      //      P0=0xc8;
 312   4                                                              f0=1;//循环
 313   4                                                              break;
 314   4                                                      }
 315   3                                                      case 0xfd:
 316   3                                                      {
 317   4                                                      //      P0=0Xff;
 318   4                                                      //      P0=0xd1;//
 319   4                                                              f1=1;//快进
 320   4                                                              break;
 321   4                                                      }
 322   3      
 323   3      
 324   3                                                      default:
 325   3                                                      {
 326   4                                                              break;
 327   4                                                      }
 328   3                                      }
 329   2                              flag=0;
 330   2                      }
 331   1      
 332   1      
 333   1      }
 334          
 335          
 336          
 337          
 338          /**************************/
 339          //主函数
 340          main()
 341          {
 342   1      
 343   1      P0=0x00;
 344   1      while(1)
 345   1      {
 346   2      //录音
 347   2      if( key_REC==0)
 348   2              {
 349   3                      delay_ms(10);
 350   3                      if( key_REC==0)
 351   3                              {
 352   4                                      flag_rec=1;
 353   4                                      while(key_REC==0);
 354   4                                      delay_ms(8);
 355   4                              //      Record();
 356   4                              }
 357   3       }
 358   2      
 359   2      //电平放音
 360   2      if( key_PLAYL==0)
 361   2       {
 362   3              delay_ms(10);
 363   3              if( key_PLAYL==0)
 364   3                              {
 365   4                              flag_playl=1;
C51 COMPILER V8.02   1420                                                                  04/03/2008 09:30:30 PAGE 7   

 366   4                      //      while(key_PLAYL==0);
 367   4                      //      delay_ms(8);
 368   4           //  Playl();
 369   4            }
 370   3       }
 371   2      
 372   2      
 373   2      
 374   2      //脉冲放音
 375   2      if( key_PLAYE==0)
 376   2        {
 377   3              delay_ms(10);
 378   3              if( key_PLAYE==0)
 379   3                      {
 380   4           flag_playe=1;
 381   4           while(key_PLAYE==0);
 382   4                       delay_ms(8);
 383   4      
 384   4      //               P0=0xc8;
 385   4      //                                                      PLAYE=1;
 386   4      //                                      PLAYE=0;
 387   4      //                                      while(key_PLAYL==1);
 388   4      ////                                    if(key_PLAYL==1)continue;
 389   4      ////                                    delay_ms(10);
 390   4      ////                                    if(key_PLAYL==1)continue;
 391   4      //                                              PLAYL=0;
 392   4      //                                              delay_ms(1000);  
 393   4      //                                                      PLAYL=1;
 394   4      //                              //      key_PLAYL=1;
 395   4      //    //  Playe();
 396   4              }
 397   3      }
 398   2      //操作模式
 399   2      if(key_function==0)
 400   2              {
 401   3              delay_ms(10);
 402   3              if( key_function==0)
 403   3                      {
 404   4              flag=1;
 405   4              while(key_function==0);
 406   4                        delay_ms(8);
 407   4              }
 408   3              }
 409   2      
 410   2      
 411   2      
 412   2      
 413   2      //各函数
 414   2      Record();//
 415   2      Playl();
 416   2      work();
 417   2      Playe();
 418   2      
 419   2      ///测试各录音
 420   2      if(key0==0)
 421   2              {
 422   3                      delay_ms(10);
 423   3                      if(key0==0)
 424   3                              {
 425   4                                      //while(key0==0);
 426   4                                      //delay_ms(10);
 427   4                                      key=0xfe;
C51 COMPILER V8.02   1420                                                                  04/03/2008 09:30:30 PAGE 8   

 428   4                                      flag_playl=1;
 429   4                               Playl1();
 430   4      
 431   4                                      key=0xfb;
 432   4                                flag_playl=1;
 433   4                               Playl1();
 434   4      
 435   4                              }
 436   3              }
 437   2      
 438   2      
 439   2      
 440   2      }
 441   1      
 442   1      }
C51 COMPILER V8.02   1420                                                                  04/03/2008 09:30:30 PAGE 9   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


P0 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0080H  1
P1 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0090H  1
P2 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00A0H  1
PLAYL. . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0095H  1
Playl. . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
key_REC. . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0090H  1
f0 . . . . . . . . . . . . . . . . . .  PUBLIC   DATA   BIT      0000H  1
voice_addr . . . . . . . . . . . . . .  PUBLIC   DATA   ARRAY    0000H  15
f1 . . . . . . . . . . . . . . . . . .  PUBLIC   DATA   BIT      0001H  1
key_function . . . . . . . . . . . . .  ABSBIT   -----  BIT      0096H  1
flag_playe . . . . . . . . . . . . . .  PUBLIC   DATA   BIT      0002H  1
flag . . . . . . . . . . . . . . . . .  PUBLIC   DATA   BIT      0003H  1
_delay_10us. . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  n. . . . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0007H  1
flag_playl . . . . . . . . . . . . . .  PUBLIC   DATA   BIT      0004H  1
main . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
key_PLAYE. . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0091H  1
key_PLAYL. . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0092H  1
_delay_ms. . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0004H  -----
  n. . . . . . . . . . . . . . . . . .  * REG *  DATA   U_INT    0004H  2
Playl1 . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
flag_rec . . . . . . . . . . . . . . .  PUBLIC   DATA   BIT      0005H  1
work . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
key. . . . . . . . . . . . . . . . . .  PUBLIC   DATA   U_CHAR   000FH  1
REC. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0093H  1
Record . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
key0 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A7H  1
PLAYE. . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0094H  1
Playe. . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    482    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     16    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      6    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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