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

DVD

开发平台:

C/C++

  1. #ifndef __UARTCOMM_H
  2. #define __UARTCOMM_H
  3. #include "emuiodrv.h"
  4. #define UART_WRITE_WAIT_SLOW    20000
  5. #define UART_WRITE_WAIT_MAX     10000
  6. #ifdef EMUIO_UART1
  7. #define IsUARTRxEmpty()          (!UART1_rx_rdy())
  8. #define UART_GETC()              (regs0->uart1_data)
  9. #define IsUARTTxFull()           (is_uart1_fifo_full())
  10. #define IsUARTTxEmpty()          (is_uart1_fifo_empty())
  11. #define UART_PUTC(c)             (write_uart1(c))
  12. #define UART_PUTC_EXACT(c)       (write_uart1_exact(c)) 
  13. #else
  14. #define IsUARTRxEmpty()          (!UART0_rx_rdy())
  15. #define UART_GETC()              (regs0->uart0_data)
  16. #define IsUARTTxFull()           (is_uart0_fifo_full())
  17. #define IsUARTTxEmpty()          (is_uart0_fifo_empty())
  18. #define UART_PUTC(c)             (write_uart0(c))
  19. #define UART_PUTC_EXACT(c)       (write_uart0_exact(c)) 
  20. #endif
  21. #define IO_WAIT()
  22. do {
  23.   int timeout = UART_WRITE_WAIT_MAX;
  24.   do {
  25.   if (!IsUARTTxFull()) break;
  26.   } while (--timeout>0);
  27. } while (0)
  28. #define IO_WAIT_EMPTY()
  29. do {
  30.   int timeout = UART_WRITE_WAIT_MAX;
  31.   do {
  32.   if (IsUARTTxEmpty()) break;
  33.   } while (--timeout>0);
  34. } while (0)
  35. #define IO_PUTC(c)
  36.    do {
  37. UART_PUTC(c);
  38. if ((c)==0x0a) UART_PUTC(0x0d);
  39. } while (0)
  40. #define IO_PUTC_WAIT(c)
  41. do {
  42.   IO_WAIT();
  43.   UART_PUTC(c);
  44.   if ((c)==0x0a) {
  45.   IO_WAIT();
  46.   UART_PUTC(0x0d);
  47.   }
  48. } while (0)
  49. #define IO_PUTC_EXACT(c) 
  50. do {
  51.   UART_PUTC_EXACT(c);
  52.   if ((c)==0x0a) {
  53.   IO_WAIT();
  54.   EPP_PUTC_EXACT(0x0d);
  55.   }
  56. } while (0)
  57. #define UART_REV_MAX_BYTE 16
  58. #define UART_TXD_MAX_BYTE 16              //
  59. #define COMMAND_START 0xCC//'X'
  60. #define COMMAND_END 0xDD// 'Z'
  61. #ifndef NEW_UART_COMMAND        //for fuss new uart command
  62. //define Ca720 to 8051 command
  63. #define POWER_ON                0x01
  64. #define MUTE_AMP                0x02
  65. #define AV_MODE                 0x03
  66. #define POWER_OFF               0x04
  67. #define TOTAL_VOL               0x05
  68. #define FRONT_VOL               0x06
  69. #define CENT_VOL                0x07
  70. #define REAR_VOL                0x08
  71. #define FRONT_BALANCE           0x09
  72. #define REAR_BALANCE            0x0A
  73. #define QS_EFFECT               0x0B
  74. #define TREBLE_EFFECT           0x0C
  75. #define BASS_EFFECT             0x0D
  76. #define AC3_STATUS              0x0E
  77. #define ERROR_720               0x7F
  78. //define 8051 to Ca720 command
  79. #define DIGI_ELEC_VAL           0x80
  80. #define ELEC_VOL                0x90
  81. #define ERROR_8051              0xFF
  82. //define POWER ON index
  83. #define POWER_ON_FAIL           0x00
  84. #define POWER_ON_OK             0x01
  85. //define MUTE index
  86. #define MUTE_OFF                0x00
  87. #define MUTE_ON                 0x01
  88. //define MODE index
  89. #define AV1_MODE                0x00
  90. #define AV2_MODE                0x01
  91. #define TUNER_MODE              0x02
  92. #define DVD_MODE                0x03
  93. //define POWER-OFF index
  94. #define POWER_OFF_OK            0x01
  95. //define AC3 index
  96. #define NOT_AC3                 0x00
  97. #define IS_AC3                  0x01
  98. #define VOL_MAX     15
  99. #define VOL_MIN     0
  100. #define QS_MAX     7
  101. #define QS_MIN     0
  102. #define BALANCE_MAX 3
  103. #define BALANCE_MIN -3
  104. #else            //it's fuss new uart command
  105. //define Ca720 to 8051 command
  106. #define POWER_ON                0x01
  107. #define MUTE_AMP                0x02
  108. #define AV1_MODE                0x03
  109. #define AV2_MODE                0x04
  110. #define TUNER_MODE              0x05
  111. #define DVD_MODE                0x06
  112. #define POWER_OFF               0x07
  113. #define TOTAL_VOL               0x08
  114. #define FRONT_VOL               0x09
  115. #define CENT_VOL                0x0A
  116. #define REAR_VOL                0x0B
  117. #define SUBWOOFER_VOL           0x0C
  118. #define FRONT_BALANCE_L         0x0D
  119. #define FRONT_BALANCE_R         0x0E
  120. #define REAR_BALANCE_L          0x0F
  121. #define REAR_BALANCE_R          0x10
  122. #define QS_EFFECT               0x11
  123. #define TREBLE_EFFECT           0x12
  124. #define BASS_EFFECT             0x13
  125. #define VOL_DEFAULT 0x14
  126. #define AC3_STATUS              0x15
  127. #define ERROR_720               0x7F
  128. //define 8051 to Ca720 command
  129. #define DIGI_ELEC_VAL           0x80
  130. #define ELEC_VOL                0x90
  131. #define ERROR_8051              0xFF
  132. //define POWER ON index
  133. #define POWER_ON_FAIL           0x00
  134. #define POWER_ON_OK             0x01
  135. //define MUTE index
  136. #define MUTE_OFF                0x00
  137. #define MUTE_ON                 0x01
  138. //define MODE index
  139. #define AV1_MODE_D              0x00
  140. #define AV2_MODE_D              0x01
  141. #define TUNER_MODE_D            0x02
  142. #define DVD_MODE_D              0x03
  143. //define POWER-OFF index
  144. #define POWER_OFF_OK            0x01
  145. #define VOL_DEFAULT_D 0x00
  146. //define AC3 index
  147. #define NOT_AC3                 0x00
  148. #define IS_AC3                  0x01
  149. #define VOL_MAX     0x3C
  150. #define VOL_MIN     0x00
  151. #define VOL_ADJUST_MAN  6
  152. #define VOL_ADJUST_MIN  -6
  153. #define QS_MAX     5
  154. #define QS_MIN     0
  155. #define BALANCE_MAX 3
  156. #define BALANCE_MIN -3
  157. #define MAINVOL  8
  158. #define FRONTVOL 0
  159. #define CENTERVOL 0
  160. #define REARVOL   0
  161. #define SUBWOOFERVOL 0
  162. #define MAINBALANCE_L 0
  163. #define MAINBALANCE_R 0
  164. #define SURBALANCE_L  0
  165. #define SURBALANCE_R  0
  166. #define QSEFFECT      0
  167. #define TREBLEVOL     0
  168. #define BASSVOL       0
  169. #endif           //end if fuss new uart command
  170. #include "types.h"
  171. int pollingUART51(void);
  172. void do_uart_command(void);
  173. void reset_uart(void);
  174. void IRSwitchMode(void);
  175. void IRSwitchVolMode(void);
  176. void IRAdjustVol(int nUpOrDown);
  177. #ifdef NEW_UART_COMMAND
  178. void Set_Default_Vol(void);
  179. #endif
  180. void Inform_MCUOK(void);
  181. #endif //__UARTCOMM_H