Lcd_auto.h
上传用户:xmyjxjd
上传日期:2013-05-04
资源大小:1517k
文件大小:5k
开发平台:

C/C++

  1. #define EVEN    0
  2. #define ODD     1
  3. //------ERROR message : SUCCESS(MSB=0)
  4. #define ERROR_SUCCEED       0x00
  5. #define ERROR_SUCCESS_1     0x01
  6. #define ERROR_SUCCESS_2     0x02
  7. #define ERROR_SUCCESS_4     0x04
  8. #define ERROR_SUCCESS_8     0x08
  9. #define ERROR_SUCCESS_16    0x10
  10. #define ERROR_SUCCESS_32    0x20
  11. #define ERROR_SUCCESS_64    0x40
  12. //------ERROR message : ERROR(MSB=1)
  13. #define ERROR_NOTACTIVE     0xf8
  14. #define ERROR_NOISE_TOO_BIG 0xf9
  15. #define ERROR_TOO_SMALL     0xfa
  16. #define ERROR_TOO_BIG       0xfb
  17. #define ERROR_INPUT         0xfc
  18. #define ERROR_TIMEOUT       0xfd
  19. #define ERROR_ABORT         0xff
  20. //------------------------------------------------------------------//
  21. // Return Message => ERROR_SUCCESS   : Success                      //
  22. //                   ERROR_TOO_SMALL : Measure Result << ACT_WIDTH  //
  23. //                   ERROR_TOO_BIG   : Measure Result >> ACT_WIDTH  //
  24. //                   ERROR_INPUT     : 1. IVS or IHS changed        //
  25. //                                     2. underflow or overflow     //
  26. //                   ERROR_TIMEOUT   : Measure Time_Out             //
  27. //                                     Process Time_Out             //
  28. //                   ERROR_NOTACTIVE : No Avtive Image              //
  29. //------------------------------------------------------------------//
  30. //------------------------------------------------------------------//
  31. // Return Message => ERROR_SUCCESS   : Success                      //
  32. //                   ERROR_SUCCESS_1 : Vertical Start > Max         //
  33. //                   ERROR_SUCCESS_2 : Vertical Start < Min         //
  34. //                   ERROR_SUCCESS_4 : Vertical Start/End Fail      //
  35. //                   ERROR_SUCCESS_8 : Horizontal Start > Max       //
  36. //                   ERROR_SUCCESS_16: Horizontal Start < Min       //
  37. //                   ERROR_SUCCESS_32: Horizontal Start/End Fail    //
  38. //                   ERROR_INPUT     : 1. IVS or IHS changed        //
  39. //                                     2. underflow or overflow     //
  40. //                   ERROR_TIMEOUT   : Measure Time_Out             //
  41. //                   ERROR_NOTACTIVE : No Avtive Image              //
  42. //------------------------------------------------------------------//
  43. #define VERTICAL_MARGIN     0x30
  44. #define HORIZONTAL_MARGIN   0x30
  45. #define SELECT_RED          0x01
  46. #define SELECT_GREEN        0x02
  47. #define SELECT_BLUE         0x04
  48. #define SELECT_RGB          (SELECT_RED | SELECT_GREEN | SELECT_BLUE)
  49. #define COLORS_RED          0x02
  50. #define COLORS_GREEN        0x01
  51. #define COLORS_BLUE         0x00
  52. #define COLOR_MAX           0x20
  53. #define COLOR_MIN           0x00
  54. #define PIXEL_1             0x00
  55. #define PIXEL_2             0x01
  56. #define PIXEL_4             0x02
  57. #define PIXEL_8             0x03
  58. #define DEFAULT_BLANK_LINE  0x06
  59. #define IC_REVERSION        0       // 0: For RTD2020 Ver-B and before
  60.                                     // 1: For RTD2020 Ver-C and after
  61. #ifdef __AUTO__
  62. unsigned char code  ADC_DEFAULT[] =
  63. {   
  64.     9,  Y_INC,   REDGAIN_E0, 0x78, 0x78, 0x78, 0x80, 0x80, 0x80,
  65.     0
  66. };
  67. bit bAutoInProgress = 0;
  68. unsigned int idata  usVer_Start = 0;    // Vertical Start
  69. unsigned int idata  usVer_End   = 0;    // Vertical End
  70. unsigned int idata  usH_Start   = 0;    // Horizontal Start
  71. unsigned int idata  usH_End     = 0;    // Horizontal End
  72. void Wait_Finish(void);
  73. unsigned char Auto_Phase(void);
  74. unsigned char Auto_Phase_Do(unsigned char NM);
  75. //unsigned char Auto_Clock(void);
  76. unsigned char Auto_Clock_Do(unsigned char NM);
  77. unsigned char Auto_Position(void);
  78. unsigned char Auto_Position_Do(unsigned char NM);
  79. unsigned char Auto_Config(void);
  80. unsigned char Auto_Balance(void);
  81. unsigned char Measure_PositionV(unsigned char NM_V);
  82. unsigned char Measure_PositionH(unsigned char NM_H);
  83. unsigned char Measure_PositionN(unsigned char NM);
  84. unsigned char Min_Noise_Margin(void);
  85. unsigned char Tune_Balance(void);
  86. unsigned char Measure_Color(unsigned char color, unsigned char margin);
  87. unsigned char Change_ADC_Gain(unsigned char color, unsigned char delta, unsigned char inc);
  88. unsigned char Change_ADC_Offset(unsigned char color, unsigned char delta, unsigned char inc);
  89. #else
  90. extern bit bAutoInProgress;
  91. extern unsigned int idata   usVer_Start;
  92. extern unsigned int idata   usVer_End;
  93. extern unsigned int idata   usH_Start;
  94. extern unsigned int idata   usH_End;
  95. extern unsigned char Auto_Phase(void);
  96. //extern unsigned char Auto_Clock(void);
  97. extern unsigned char Auto_Position(void);
  98. extern unsigned char Auto_Config(void);
  99. extern unsigned char Auto_Balance(void);
  100. extern unsigned char Measure_Color(unsigned char color, unsigned char margin);
  101. #endif