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

📄 audio.lst

📁 dvr
💻 LST
📖 第 1 页 / 共 2 页
字号:
 171                                     0x01 in playing mode
 172          ###############################################################################
 173          */
 174          void audioif_clear_internal_flag(u8 mode)
 175          {
 176   1              if(!gv_audif) return;
 177   1      #ifdef DEBUG_AUDIOIF
C51 COMPILER V7.50   AUDIO                                                                 12/14/2005 10:05:36 PAGE 4   

                      printf("\n\raudioif_clear_internal_flag(%d)", (int)mode);
              #endif
 180   1              audio_enable();
 181   1              AUDIO_PLAY_REGISTER = AUD_B1_CLEAR_H | mode;
 182   1              delay_time(3,1);
 183   1              AUDIO_PLAY_REGISTER = mode;
 184   1              dv03_enable();
 185   1      }
 186          
 187          /*
 188          ###############################################################################
 189          Start transferring audio data from/to HDD using IDE bus
 190          Input:
 191                          mode : 0x00 in recording mode
 192                                     0x02 in playing mode
 193          ###############################################################################
 194          */
 195          void audioif_get_IDE(u8 mode)
 196          {
 197   1              if(!gv_audif) return;
 198   1              audio_enable();
 199   1              AUDIO_BUS_REGISTER = mode | AUD_B0_AUDIO_IDE;
 200   1              dv03_enable();
 201   1      }
 202          
 203          /*
 204          void audioif_release_IDE(u8 mode)
 205          {
 206                  if(!gv_audif) return;
 207                  audio_enable();
 208                  AUDIO_BUS_REGISTER = mode;
 209                  dv03_enable();
 210          }
 211          */
 212          
 213          /*
 214          ###############################################################################
 215          Clear audio itnerrupt by reading audio interrupt register
 216          ###############################################################################
 217          */
 218          u8 audioif_clear_interrupt(void)
 219          {
 220   1              xdata u8 ret;
 221   1      
 222   1              if(!gv_audif) return 0;
 223   1      
 224   1              audio_enable();
 225   1      
 226   1              ret = AUDIO_INT_REGISTER;
 227   1      
 228   1              dv03_enable();
 229   1              return ret;
 230   1      }
 231          
 232          
 233          /*
 234          ###############################################################################
 235          Stop audio recording/playing
 236          ###############################################################################
 237          */
 238          void audioif_skip_mode(void)
 239          {
C51 COMPILER V7.50   AUDIO                                                                 12/14/2005 10:05:36 PAGE 5   

 240   1              if(!gv_audif) return;
 241   1      #ifdef DEBUG_AUDIOIF
                      printf("\n\raudioif_skip_mode");
              #endif
 244   1              audio_enable();
 245   1              AUDIO_START_REGISTER = AUD_B1_SKIP | AUD_B0_RESET;
 246   1              dv03_enable();
 247   1      
 248   1              gv_audio_run = 0;
 249   1      }
 250          
 251          /*
 252          ###############################################################################
 253          Check audio FPGA is busy
 254          ###############################################################################
 255          */
 256          u8 audioif_IDE_busy(void)
 257          {
 258   1              xdata u8 ret;
 259   1      
 260   1              if(!gv_audif) return 0;
 261   1      
 262   1              audio_enable();
 263   1              ret = (AUDIO_START_REGISTER & AUD_B1_BUSY)>>1;
 264   1              dv03_enable();
 265   1              return ret;
 266   1      }
 267          
 268          
 269          
 270          
 271          /*
 272          ###############################################################################
 273          Initialize audio chip
 274          ###############################################################################
 275          */
 276          void audioif_chip_init(void)
 277          {
 278   1              if(!gv_audif) return;
 279   1      #ifdef DEBUG_AUDIOIF
                      printf("\n\raudioif_chip_init");
              #endif
 282   1              i2c_pkt_write(0xe2, 0x00, 0x99);
 283   1              i2c_pkt_write(0xe2, 0x01, 0x91); /* 0x93 */
 284   1              i2c_pkt_write(0xe2, 0x02, 0x58);
 285   1              i2c_pkt_write(0xe2, 0x03, 0x60);
 286   1      
 287   1              // default value of TLV320AIC1110 audio codec chip
 288   1              // offset       value
 289   1              // 0x00         0xf6
 290   1              // 0x01         0x02
 291   1              // 0x02         0x40
 292   1              // 0x03         0xa0
 293   1              // 0x04         0x00
 294   1              // 0x05         0x00
 295   1              // 0x06         0x00
 296   1      }
 297          
 298          /*
 299          ###############################################################################
 300          Mute audio chip
 301          ###############################################################################
C51 COMPILER V7.50   AUDIO                                                                 12/14/2005 10:05:36 PAGE 6   

 302          */
 303          void audioif_mute(u8 flag)
 304          {
 305   1              if(!gv_audif) return;
 306   1      #ifdef DEBUG_AUDIOIF
                      printf("\n\raudioif_mute(%d)", (int)flag);
              #endif
 309   1              i2c_pkt_write(0xe2, 0x00, (flag)?0x9D:0x99);
 310   1      }
 311          
 312          
 313          //###############################################################################
 314          //change audio source channel
 315          //###############################################################################
 316          #ifdef USE_4954_GP
              extern BYTE Val_EPROM_AUDIO_CH;
              #include "cs4954.h"
              void audio_ch_sel(void)
              {
                  #ifdef USE_4954
                      cs4954_write(0x0A,Val_EPROM_AUDIO_CH&0x03);
                  #endif
              
              #ifdef DEBUG_4AUD
                      printf("\r\nSET AUDIO CH : 0x%02X (0x%02X)",
                              (WORD)Val_EPROM_AUDIO_CH&0x03,
                              (WORD)cs4954_read(0x0A)
                              );
              #endif
              }
              #endif
 333          
 334          


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