ddx8000_xq.h
上传用户:poi891205
上传日期:2013-07-15
资源大小:9745k
文件大小:4k
源码类别:

DVD

开发平台:

C/C++

  1. #ifndef __DDX8000_H_
  2. #define __DDX8000_H_
  3. /*****************************************************
  4. Creater: xiongyuyue
  5. Date   : 2003/8/26 
  6. Description: digital amp function using 
  7. *****************************************************/
  8. #ifdef SUPPORT_APOGEE_AMP//xyy 2003-9-24 9:28
  9. #define DDX8K_ADDR      0x30
  10. //BYTE flag = 1;
  11. typedef struct
  12. {
  13. UINT32 b2;
  14. UINT32 b0;
  15. UINT32 a2;
  16. UINT32 a1;
  17. UINT32 b1;
  18. }coef_factor;
  19. //configuration register
  20. #define CONFIGREG_A      0x00   //Configuration Register A
  21. #define CONFIGREG_B      0x01   //Configuration Register B
  22. #define CONFIGREG_C      0x02
  23. #define CONFIGREG_D      0x03
  24. #define CONFIGREG_E      0x04
  25. #define CONFIGREG_F      0x05
  26. //volume adjustment
  27. #define MASTER_MUTE_REG  0x06
  28. #define MASTER_VOL_REG   0x07
  29. #define CHANEL_MUTE_REG  0x08
  30. //#define CHANEL_VOL_REG   0x09
  31. #define C1V_REG          0x09
  32. #define C2V_REG          0x0a
  33. #define C3V_REG          0x0b
  34. #define C4V_REG          0x0c
  35. #define C5V_REG          0x0d
  36. #define C6V_REG          0x0e
  37. #define C7V_REG          0x0f
  38. #define C8V_REG          0x10
  39. //channel mapping
  40. #define C12MAP_REG       0x11
  41. #define C34MAP_REG       0x12
  42. #define C56MAP_REG       0x13
  43. #define C78MAP_REG       0x14
  44. //channel limiter selection
  45. #define CLIMITER_SEL0    0x15
  46. #define CLIMITER_SEL1    0x16
  47. //limiter rates and thresholds
  48. #define L1RATE_REG       0x17
  49. #define L1THRESHOLDS_REG 0x18
  50. #define L2RATE_REG       0x19
  51. #define L2THRESHOLDS_REG 0x1a
  52. //tone control register
  53. #define TONE_CTRL_REG    0x1b
  54. //Bass Management(Configuration #1) for 5.1 Channels
  55. #define FL_SCALE_FACTOR     0x16c310
  56. #define FR_SCALE_FACTOR     0x16c310
  57. #define SL_SCALE_FACTOR     0x16c310
  58. #define SR_SCALE_FACTOR     0x16c310
  59. #define CE_SCALE_FACTOR     0x16c310
  60. #define LFE_SCALE_FACTOR    0x47facc
  61. #define HPF_COEF_B2              0x7fa51f
  62. #define HPF_COEF_B0              0x3fd28f
  63. #define HPF_COEF_A2              0x80b581
  64. #define HPF_COEF_A1              0x7fa4ff
  65. #define HPF_COEF_B1              0x805ae1
  66. #define LPF_COEF_B2              0x000020
  67. #define LPF_COEF_B0              0x000010
  68. #define LPF_COEF_A2              0x80b581
  69. #define LPF_COEF_A1              0x7fa4ff
  70. #define LPF_COEF_B1              0x000020
  71. //#define 
  72. #define MV    0
  73. #define FL    1
  74. #define FR    2
  75. #define SL    3
  76. #define SR    4
  77. #define CE    5
  78. #define SW    6
  79. #define Y_07   7
  80. int y_index;
  81. #define AMPBGCOL 10
  82. typedef struct
  83. {
  84. BYTE mainvol_level;
  85. BYTE mainvol;
  86. BYTE lfront_level;
  87. BYTE lfrontvol;
  88. BYTE rfront_level;
  89. BYTE rfrontvol;
  90. BYTE lrear_level;
  91. BYTE lrearvol;
  92. BYTE rrear_level;
  93. BYTE rrearvol;
  94. BYTE center_level;
  95. BYTE centervol;
  96. BYTE woofer_level;
  97. BYTE woofervol;
  98. BYTE ddx_Bass_lev;
  99. BYTE ddx_Treble_lev;
  100. BYTE ddx_EQ_sel;
  101. BYTE ddx_Revb_sel;
  102. }s_amp_userSet;
  103. s_amp_userSet amp_userSet;
  104. #define AMP_I2CADDR_START 512
  105. #define BASS_GAIN_ADDR AMP_I2CADDR_START+14
  106. #define TREBLE_GAIN_ADDR BASS_GAIN_ADDR+1
  107. #define DDX_EQ_TYPE_ADDR TREBLE_GAIN_ADDR+1
  108. #define DDX_REVB_TYPE_ADDR DDX_EQ_TYPE_ADDR+1
  109. //EQ types define
  110. #define NONE 0
  111. #define ROCK 1
  112. #define POP 2
  113. #define PARTY 3
  114. #define DANCE 4
  115. #define HARD 5
  116. #define CLASSIC 6
  117. #define SOFT 7
  118. #define MAX_EQ_NUM 7 
  119. //Reverberation types define
  120. #define OFF 0
  121. #define CONCERT 1
  122. #define LIVING 2
  123. #define HALL 3
  124. #define BATH 4
  125. #define CAVE 5
  126. #define ARENA 6
  127. #define CHURCH 7
  128. #define MAX_REVB_NUM 7 
  129. #define MAX_BASSCTRL_LEV 15
  130. #define MAX_TREBLECTRL_LEV 15
  131. extern void ddx_Set_EQ(BYTE EQtype);
  132. extern void ddx_ampvol_func_left(void);
  133. extern void ddx_ampvol_func_right(void);
  134. extern void ddx_ampvol_func_up(void);
  135. extern void ddx_ampvol_func_down(void);
  136. extern BYTE ddx_trebleCtrl(int updown);
  137. extern BYTE  ddx_bassCtrl(int updown);
  138. #endif
  139. #endif//#ifdef SUPPORT_APOGEE_AMP