1 /******************************************************************************
2 ** File Name: dal_lcd.h *
5 ** Copyright: 2004 Spreatrum, Incoporated. All Rights Reserved. *
6 ** Description: This file define the color LCD API function for up layer *
7 ** 1. LCD driver support a LCD buffer according to lcd size *
8 ** to hold the pixel color. Up layer can get the buffer *
9 ** pointer and operate on the LCD buffer. *
10 ** 2. LCD driver is only responsible of copying the pixel *
11 ** color in LCD buffer to LCD (hardware). *
12 ******************************************************************************
14 ******************************************************************************
16 ** ------------------------------------------------------------------------- *
17 ** DATE NAME DESCRIPTION *
18 ** 06/03/2004 Jim.zhang Update file used for lcd api for up layer *
19 ** 10/22/2004 Jim.zhang Delete some api. *
20 ******************************************************************************/
25 /**---------------------------------------------------------------------------*
27 **---------------------------------------------------------------------------*/
29 /**---------------------------------------------------------------------------*
31 **---------------------------------------------------------------------------*/
37 #include "sci_types.h"
40 #include "lcd_controller.h"
41 #include "lcdc_types.h"
43 /**---------------------------------------------------------------------------*
45 **---------------------------------------------------------------------------*/
47 #define LCD_VERSION_1 1
56 #define LCD_SUPPORT_MAX 6
58 #define MAX_LCM_PARAM_VALUE ((0x3ee << 10)|(0x3ee))
60 #define LCD_BACKGROUND 0x0
62 //Priority field configures the time ratio of LCM operation to NAND operation.
63 #define LCD_BUSRATIO 1 // Configure the bus priority.
65 #define BLOCK_ID_WITH_SINGLE_PIXEL_ALPHA 1
66 #define BLOCK_IMAGE_ID 0
68 //resolution of lcd data
69 //0:RGB888; 1:RGB666; 2:RGB565;3:RGB555;4:GREY,5:YUV422;6:YUV420;7:YUV400
70 #define LCD_RESOLUTION_RGB888 0
71 #define LCD_RESOLUTION_RGB666 1
72 #define LCD_RESOLUTION_RGB565 2
73 #define LCD_RESOLUTION_RGB555 3
74 #define LCD_RESOLUTION_GREY 4
75 #define LCD_RESOLUTION_YUV422 5
76 #define LCD_RESOLUTION_YUV420 6
77 #define LCD_RESOLUTION_YUV400 7
79 #define LCD_USE_PIXEL_ALPHA 0
80 #define LCD_USE_BLOCK_ALPHA 1
83 // LCD operation fashion
96 LCD_BRUSH_MODE_SYNC = 0,
110 DATA_SIZE_BYTE = 0, //0:DATA_SIZE_BYTE
111 DATA_SIZE_HALFWORD, //1:DATA_SIZE_HALFWORD
112 DATA_SIZE_WORD //2:DATA_SIZE_WORD
120 } LCD_MEMORY_STATE_E;
133 SYS_STATE_ASSERT = 0, // Assert state
134 SYS_STATE_NORMAL , // Normal Run
135 SYS_STATE_INT // Interrupt state
139 /**---------------------------------------------------------------------------*
141 **---------------------------------------------------------------------------*/
143 typedef struct _osd_rect_tag //rectangle
151 typedef struct _osd_size_tag
157 typedef struct _osd_info_tag
163 struct _osd_info_tag *next_ptr;
166 typedef struct _isp_osd_info_tag
169 OSD_SIZE_T background_size;
173 //Block Configuration
174 typedef struct blockcfg_tag
181 uint16 width; //real data width in SDRAM
182 uint8 resolution; //0:RGB888; 1:RGB666; 2:RGB565(RGB555 if OSD)
183 uint8 type; //0:OSD; 1:image
184 uint8 priority; //0~7, high:7,low:0
187 uint8 alpha_sel; //0-pixel alpha;1-block alpha
188 uint8 is_little_endian; //support for 6800H
190 uint32 grey_rgb;//RGB888 value //support for 6800H
195 typedef struct block_tag
197 uint16 is_enable; //1: enable this block;0: disable this block
199 //#ifdef PLATFORM_SC6800H
203 LCD_STATE_E state; //{idle,ready,busy,error}
207 typedef struct block_group_tag
210 BLOCK_T block[BLOCK_SUM];
213 typedef struct lcd_property_tag
215 SCI_SEMAPHORE_PTR semaphore;
216 LCD_BRUSH_MODE_E brush_mode;// 1 if brush lcd with synchronistic mean, or else 0
217 LCD_OPERATION_E operation; //block operation or AHB command operation
218 LCD_STATE_E state ; //{idle, ready,busy, error};
219 uint32 blk_group_num;
222 LCD_SPEC_INFO_T lcd_spec;
227 typedef struct lcd_info_tag
229 uint32 r_bitmask; // R(Red color) bit mask
230 uint32 g_bitmask; // G(Green color) bit mask
231 uint32 b_bitmask; // B(Black color) bit mask
232 uint16 bits_per_pixel; // bit number of one pixel
233 uint16 lcd_width; // lcd width
234 uint16 lcd_height; // lcd height.
235 uint16 contrast_min; // min value of contrast
236 uint16 contrast_max; // max value of contrast
237 uint16 contrast_defaut; // default value of contrast
238 void *lcdbuff_ptr; // lcd buffer pointer
241 typedef struct _lcd_out_position_tag
243 LCD_ID_E lcd_id; //lcd id
244 uint16 start_x; //output start x at lcd
245 uint16 start_y; //output start y at lcd
246 uint16 width; //output data width
247 uint16 height; //output data height
248 uint32 *data_buf;//memory address which lcd output data to
249 } LCD_OUT_POSITION_T;
253 typedef struct _lcd_size_tag
258 typedef struct _lcd_rect_t_tag
260 uint16 left; //LCD display window left position
261 uint16 top; //LCD display window top position
262 uint16 right; //LCD display window right position
263 uint16 bottom;//LCD display window bottom position
266 typedef LCDC_CAP_PARAM_T LCD_CAP_PARAM_T;
267 typedef struct _lcd_memory_info_tag
272 LCD_RECT_T dst_trim_rect;
273 LCD_DATA_FORMAT_E data_type;
274 uint32 data_endian_mode;
277 typedef struct _lcd_block_info_tag
283 struct _lcd_block_info_tag *next_block_info_ptr;
286 typedef struct _lcd_invalidate_param_tag
289 LCD_ANGLE_E rot_angle;
290 LCD_BLOCK_INFO_T blk_info;
291 } LCD_INVALIDATE_PARAM_T;
293 typedef struct _lcd_convert_input_tag
295 uint16 logic_lcd_width;
296 uint16 logic_lcd_height;
297 LCD_RECT_T logic_coordinate;
298 LCD_ANGLE_E logic_angle;
299 } LCD_CONVERT_INPUT_T;
301 typedef struct _lcd_convert_output_tag
303 LCD_RECT_T physical_coordinate;
304 LCD_ANGLE_E rotation_angle;
305 } LCD_CONVERT_OUTPUT_T;
307 //#ifdef PLATFORM_SC8800H
308 typedef void (* lcd_invalidate_done_func_t) (uint32 param); //callback when invalidate end
310 /**---------------------------------------------------------------------------*
311 ** Function Prototypes
312 **---------------------------------------------------------------------------*/
314 /*****************************************************************************/
315 // Description: The function used to initlize the lcd. If have dual lcd,
316 // sub lcd will also be initlized by this function.
317 // Global resource dependence:
319 // Note: If have many lcd, this function will init all lcd.
321 /*****************************************************************************/
322 PUBLIC ERR_LCD_E LCD_Init (void);
324 /*****************************************************************************/
325 // Description: reset lcd module.
326 // Global resource dependence:
329 /*****************************************************************************/
330 PUBLIC void LCD_Reset (void);
332 /*****************************************************************************/
333 // Description: The function is used to close lcd when power off.
334 // Global resource dependence:
336 // Note: When power off , call this function. If have many lcd,
337 // this function will close all lcd.
338 /*****************************************************************************/
339 PUBLIC void LCD_Close (void);
341 /*****************************************************************************/
342 // Description: Get the lcd basic information..
343 // Global resource dependence:
346 /*****************************************************************************/
347 PUBLIC ERR_LCD_E LCD_GetInfo (//Return the operate status
348 LCD_ID_E lcd_id, //id of lcd to operate
349 LCD_INFO_T *lcd_info_ptr //lcd information struct pointer
352 /*****************************************************************************/
353 // Description: Invalidate a rectangle of LCD--Refresh it.
354 // Global resource dependence:
356 // Return: error code.
357 // Note:1. the left up point is (0,0)
358 // 2. Before call InvalidateRect()£¬write LCD buffer with color,
359 // and then InvalidateRect() the spefic area.
360 /*****************************************************************************/
361 PUBLIC ERR_LCD_E LCD_InvalidateRect ( //Return the operate status
362 LCD_ID_E lcd_id, //id of lcd to operate
363 uint16 left, //left of the windows to be refreshed.
364 uint16 top, //top of the widonws to be refreshed.
365 uint16 right, //right of the windows to be refreshed.
366 uint16 bottom //bottom of the windows to be refreshed.
369 /*****************************************************************************/
370 // Description: invalidate a pixel(called by mmi special effect)
371 // Global resource dependence:
374 /*****************************************************************************/
375 PUBLIC void LCD_InvalidatePixel (
382 /*****************************************************************************/
383 // Description: Invalidate a rectangle of LCD--Refresh it with angle.
384 // Global resource dependence:
385 // Author: Jianping.wang
386 // Return: error code.
387 // Note:1. the left up point is (0,0)
388 // 2. Before call InvalidateRect()£¬write LCD buffer with color,
389 // and then InvalidateRect() the spefic area.
390 /*****************************************************************************/
391 PUBLIC ERR_LCD_E LCD_RotateInvalidateRect ( //Return the operate status
392 LCD_ID_E lcd_id, //id of lcd to operate
393 uint16 left, //left of the windows to be refreshed.
394 uint16 top, //top of the widonws to be refreshed.
395 uint16 right, //right of the windows to be refreshed.
396 uint16 bottom, //bottom of the windows to be refreshed.
397 LCD_ANGLE_E angle //rotation angle
399 /*****************************************************************************/
400 // Description: Invalidate a rectangle of LCD--Refresh it by vertical scan mode.
401 // Global resource dependence:
402 // Author: Jianping.wang
403 // Return: error code.
404 // Note:1. the left up point is (0,0)
405 // 2. Before call InvalidateRect()£¬write LCD buffer with color,
406 // and then InvalidateRect() the spefic area.
407 /*****************************************************************************/
408 PUBLIC ERR_LCD_E LCD_VerticalInvalidateRect ( //Return the operate status
409 LCD_ID_E lcd_id, //id of lcd to operate
410 uint16 left, //left of the windows to be refreshed.
411 uint16 top, //top of the widonws to be refreshed.
412 uint16 right, //right of the windows to be refreshed.
413 uint16 bottom //bottom of the windows to be refreshed.
415 /*****************************************************************************/
416 // Description: Invalidate the whole lcd.
417 // Global resource dependence:
420 /*****************************************************************************/
421 PUBLIC ERR_LCD_E LCD_Invalidate ( //Retrurn the operate status
422 LCD_ID_E lcd_id //id of lcd to operate
425 /*****************************************************************************/
426 // Description: Enter/Exit sleep mode to control power consume.
427 // Global resource dependence:
429 // Return: error code.
431 /*****************************************************************************/
432 PUBLIC ERR_LCD_E LCD_EnterSleep ( //Retrun the operate status
433 LCD_ID_E lcd_id, //id of lcd to operate
434 BOOLEAN is_sleep //SCI_TRUE:enter sleep: SCI_FALSE:exit sleep mode
438 /*****************************************************************************/
439 // Description: Set the contrast value of lcd.
440 // Global resource dependence:
442 // Return: return the operate status.
444 /*****************************************************************************/
445 PUBLIC ERR_LCD_E LCD_SetContrast ( //return the operate status
446 LCD_ID_E lcd_id, //id of lcd to operate
447 uint16 contrast //contrast value to set to lcd.
450 /*****************************************************************************/
451 // Description: Set the brightness of LCD.
452 // Global resource dependence:
455 /*****************************************************************************/
456 PUBLIC ERR_LCD_E LCD_SetBrightness (
457 LCD_ID_E lcd_id, //ID of lcd to operate.
458 uint16 brightness //brightness value to set.
462 /*****************************************************************************/
463 // Description: Enable lcd to partial display mode, so can save power.
464 // Global resource dependence:
466 // Return: SCI_TRUE:SUCCESS ,SCI_FALSE:failed.
467 // Note: If all input parameters are 0, exit partial display mode.
468 /*****************************************************************************/
469 PUBLIC ERR_LCD_E LCD_SetDisplayWindow (
470 LCD_ID_E lcd_id,//ID of lcd to operate
471 uint16 left, //left of the display window
472 uint16 top, //top of the display window
473 uint16 right, //right of the display window
474 uint16 bottom //bottom of the display window
480 /*****************************************************************************/
481 // Description: get lcd controller type
482 // Global resource dependence:
483 // Author: Jianping.wang
485 /*****************************************************************************/
486 PUBLIC LCD_CTRL_MODULE_E LCD_GetCtrlModule (LCD_ID_E lcd_id);
487 /*****************************************************************************/
488 // Description: set brush lcd fashion
489 // Global resource dependence:
490 // Author: Jianping.wang
492 /*****************************************************************************/
493 PUBLIC ERR_LCD_E LCD_SetBrushMode (LCD_ID_E lcd_id, LCD_BRUSH_MODE_E mode);
494 /*****************************************************************************/
495 // Description: get brush lcd fashion
496 // Global resource dependence:
497 // Author: Jianping.wang
500 // lcd_id - specify LCD
505 /*****************************************************************************/
506 PUBLIC LCD_BRUSH_MODE_E LCD_GetBrushMode (LCD_ID_E lcd_id);
507 /*****************************************************************************/
508 // Description:get memory status
509 // Global resource dependence:
510 // Author: Jianping.wang
513 // lcd_id - specify LCD
517 // lcd status: LCD_IDLE - don't use LCD ID
518 // LCD_BUSY - is brushing this LCD
519 // LCD_READY - finish brushing this LCD
521 /*****************************************************************************/
522 PUBLIC LCD_STATE_E LCD_GetLCDState (LCD_ID_E lcd_id);
523 /*****************************************************************************/
524 // Description: configure block parameters
525 // Global resource dependence:
526 // Author: Jianping.wang
528 /*****************************************************************************/
529 PUBLIC ERR_LCD_E LCD_ConfigBlock (
535 /*****************************************************************************/
536 // Description: get block parameters
537 // Global resource dependence:
538 // Author: Jianping.wang
540 /*****************************************************************************/
541 PUBLIC ERR_LCD_E LCD_GetConfigBlock (
546 /*****************************************************************************/
547 // Description: Enable Block
548 // Global resource dependence:
549 // Author: Jianping.wang
551 /*****************************************************************************/
552 PUBLIC ERR_LCD_E LCD_EnableBlock (LCD_ID_E lcd_id, uint32 blk_num);
553 /*****************************************************************************/
554 // Description:disable block
555 // Global resource dependence:
556 // Author: Jianping.wang
558 /*****************************************************************************/
559 PUBLIC ERR_LCD_E LCD_DisableBlock (LCD_ID_E lcd_id, uint32 blk_num);
560 /*****************************************************************************/
561 // Description: Malloc memory
562 // Global resource dependence:
563 // Author: Jianping.wang
565 /*****************************************************************************/
566 PUBLIC uint32 *LCD_Malloc (uint32 size);
567 /*****************************************************************************/
568 // Description: free memory
569 // Global resource dependence:
570 // Author: Jianping.wang
572 /*****************************************************************************/
573 PUBLIC void LCD_Free (uint32 *addr_ptr);
574 /*****************************************************************************/
575 // Description: set display memory
576 // Global resource dependence:
577 // Author: Jianping.wang
579 /*****************************************************************************/
580 PUBLIC ERR_LCD_E LCD_SetBlockBuffer (
585 /*****************************************************************************/
587 // Global resource dependence:
588 // Author: Jianping.wang
590 /*****************************************************************************/
591 PUBLIC LCD_MEMORY_STATE_E LCD_GetMemoryStatus (LCD_ID_E lcd_id, uint32 *mem_ptr);
592 /*****************************************************************************/
593 // Description: Update LCD Timing
594 // Global resource dependence:
595 // Author: Jianping.wang
597 /*****************************************************************************/
598 PUBLIC ERR_LCD_E LCD_UpdateTiming (uint32 ahb_clk);
599 /*****************************************************************************/
601 // Global resource dependence:
602 // Author: Jianping.wang
604 /*****************************************************************************/
605 PUBLIC void TV_Open (TV_MODE_E mode);
606 /*****************************************************************************/
608 // Global resource dependence:
609 // Author: Jianping.wang
611 /*****************************************************************************/
612 PUBLIC void TV_Refresh (void);
613 /*****************************************************************************/
615 // Global resource dependence:
616 // Author: Jianping.wang
618 /*****************************************************************************/
619 PUBLIC void TV_Close (void);
620 /*****************************************************************************/
621 // Description: set LCDC Clock
622 // Global resource dependence:
623 // Author: Jianping.wang
624 // Note: this interface isn't called in interrupt handle function
625 /****************************************************************************/
626 PUBLIC int32 LCDC_SetClock (uint32 lcdc_clk);
627 /**********************************************************************************************************/
628 // Description: restore LCDC Clock
629 // Global resource dependence:
630 // Author: Jianping.wang
631 // Note: this interface isn't called in interrupt handle function
632 /**********************************************************************************************************/
633 PUBLIC int32 LCDC_RestoreClock (void);
634 /*****************************************************************************/
635 // Description:Get Block is enabled or not
636 // Global resource dependence:
637 // Author: Jianping.wang
640 // lcd_id - specify LCD
641 // blk_num - LCDC Block number ,0~5
646 /*****************************************************************************/
647 PUBLIC BOOLEAN LCD_GetBlockIsEnable (LCD_ID_E lcd_id, uint32 blk_num);
648 /*****************************************************************************/
649 // Description: get display memory
650 // Global resource dependence:
651 // Author: Jianping.wang
654 // lcd_id - specify LCD
655 // blk_num - LCDC Block number ,0~5
660 /*****************************************************************************/
661 PUBLIC uint32 *LCD_GetBlockBuffer (LCD_ID_E lcd_id, uint32 blk_num);
662 /*****************************************************************************/
663 // Description: get maximum block number
664 // Global resource dependence:
665 // Author: Jianping.wang
668 // lcd_id - specify LCD
672 // maximum block number
673 /*****************************************************************************/
674 PUBLIC uint32 LCD_GetMaxBlockNum (LCD_ID_E lcd_id);
676 /*****************************************************************************/
678 // Global resource dependence:
679 // Author: Jianping.wang
682 // is_used - SCI_TRUE:use scaling down; SCI_FALSE:don't use scaling down
687 /*****************************************************************************/
688 PUBLIC void LCD_IsSelectScalingDown (BOOLEAN is_used);
692 /*****************************************************************************/
693 // Description: set dest LCD's RGB mode to host
694 // Global resource dependence:
695 // Author: Younger.Yang
697 /*****************************************************************************/
699 PUBLIC void LCD_SetRGBMode (LCD_ID_E lcd_id);
701 /*****************************************************************************/
702 // Description: set the number of pixes in the next frame from OSD
703 // Global resource dependence:
704 // Author: Younger.Yang
706 /*****************************************************************************/
707 PUBLIC void LCD_SetDataNumber (LCD_ID_E lcd_id, uint32 number);
709 /*****************************************************************************/
710 // Description: change lcd set timing when ahb clk changed
711 // Global resource dependence:
712 // Author: Younger.Yang
714 /*****************************************************************************/
716 PUBLIC ERR_LCD_E LCD_SetParam (uint32 ahb_clk);
719 PUBLIC void LCD_SetBackground (uint32 color);
721 /*****************************************************************************/
722 // Description: get the main lcd 's important parameter for Digital cammera
723 // Global resource dependence:
724 // Author: Zhemin.lin
726 /*****************************************************************************/
727 PUBLIC LCD_SPEC_INFO_T_PTR LCD_GetLcdSpec (
728 LCD_ID_E lcd_id //id of lcd to operate.
732 /*****************************************************************************/
733 // Description: disable/enable lcd invalidate rect
734 /*****************************************************************************/
735 PUBLIC void LCD_InvalidateRect_Enable (BOOLEAN is_enable);
737 /*****************************************************************************/
738 // Description: set rotation mode
739 /*****************************************************************************/
740 PUBLIC void LCD_SetRotateMode (LCD_ROT_MODE_E mode);
742 /*****************************************************************************/
743 // Description: get rotation mode
744 /*****************************************************************************/
745 PUBLIC LCD_ROT_MODE_E _LCD_GetRotateMode (void);
748 /*****************************************************************************/
749 // Description: free semaphore when use LCDC by asyn fashion
750 // Global resource dependence:
751 // Author: Jianping.wang
753 /*****************************************************************************/
754 PUBLIC void LCD_FreeSemaphore (void);
755 /*****************************************************************************/
756 // Description: set brush lcd fashion
757 // Global resource dependence:
758 // Author: Jianping.wang
761 // lcd_id - specify LCD
762 // mode - sync or async
767 /*****************************************************************************/
768 PUBLIC ERR_LCD_E LCD_SetBrushMode (LCD_ID_E lcd_id, LCD_BRUSH_MODE_E mode);
769 /*****************************************************************************/
770 // Description: get brush lcd fashion
771 // Global resource dependence:
772 // Author: Jianping.wang
775 // lcd_id - specify LCD
780 /*****************************************************************************/
781 PUBLIC LCD_BRUSH_MODE_E LCD_GetBrushMode (LCD_ID_E lcd_id);
782 /*****************************************************************************/
783 // Description: set lcd status
784 // Global resource dependence: s_lcd_status
785 // Author: Younger yang
787 /*****************************************************************************/
789 PUBLIC void LCD_SetLCDStatus (LCD_STATUS_E lcd_status);
791 /*****************************************************************************/
792 // Description: get lcd status
793 // Global resource dependence: s_lcd_status
794 // Author: Younger yang
796 /*****************************************************************************/
797 PUBLIC LCD_STATUS_E LCD_GetLCDStatus (void);
799 /*****************************************************************************/
800 // Description: set alpha buffer address when use pixel alpha ,data format of block is RGB565
801 // Global resource dependence:
802 // Author: Jianping.wang
804 /*****************************************************************************/
805 PUBLIC ERR_LCD_E LCD_SetPixelAlphaBuffer (
810 /*****************************************************************************/
811 // Description: get alpha buffer address when use pixel alpha ,data format of block is RGB565
812 // Global resource dependence:
813 // Author: Jianping.wang
815 /*****************************************************************************/
816 PUBLIC uint32 *LCD_GetPixelAlphaBuffer (LCD_ID_E lcd_id, uint32 blk_num);
817 /*****************************************************************************/
818 // Description: set UV buffer for block 0
819 // Global resource dependence:
820 // Author: Jianping.wang
822 /*****************************************************************************/
823 PUBLIC ERR_LCD_E LCD_SetUVBuffer (
828 /*****************************************************************************/
829 // Description: config capture parameters of 6800h
830 // Global resource dependence:
831 // Author: Jianping.wang
833 /*****************************************************************************/
834 PUBLIC ERR_LCD_E LCD_ConfigCapture (LCD_ID_E lcd_id, LCD_CAP_PARAM_T *param_ptr);
835 /*****************************************************************************/
836 // Description: set fmark mode
837 // Global resource dependence:
838 // Author: Jianping.wang
840 /*****************************************************************************/
841 PUBLIC ERR_LCD_E LCD_SetFmarkMode (
842 LCD_FMARK_MODE_E fmark_mode,
843 LCD_FMARK_POL_E fmark_pol
846 //#ifdef PLATFORM_SC8800H
847 /*****************************************************************************/
848 // Description:register callback when invalidate done
849 // Author: Jianping.Wang
850 /*****************************************************************************/
851 PUBLIC void LCD_RegisterCallBack (lcd_invalidate_done_func_t func);
852 /*****************************************************************************/
853 // Description:register callback when invalidate done
854 // Author: Jianping.Wang
855 /*****************************************************************************/
856 PUBLIC void LCD_UnRegisterCallBack (void);
858 /**********************************************************************************************************/
859 // Description: get block information
860 // Global resource dependence:
861 // Author: Jianping.wang
863 /**********************************************************************************************************/
864 PUBLIC ERR_LCD_E LCD_GetBlockInfo (LCD_ID_E lcd_id,BLOCK_T *blk_info_ptr);
865 /*****************************************************************************/
866 // Description: LCD out data to memory
867 // Global resource dependence:
868 // Author: Jianping.wang
871 // pos_param - out position parameter
876 /*****************************************************************************/
877 PUBLIC ERR_LCD_E LCD_InvalidateRectToMemory (LCD_ID_E lcd_id,LCD_MEMORY_INFO_T *param_ptr);
878 /*****************************************************************************/
879 // Description: set UV buffer for block 0
880 // Global resource dependence:
881 // Author: Jianping.wang
883 /*****************************************************************************/
884 PUBLIC ERR_LCD_E LCD_SetUVBuffer (
889 /*****************************************************************************/
890 // Description: get UV memory
891 // Global resource dependence:
892 // Author: Jianping.wang
895 // lcd_id - specify LCD
896 // blk_num - LCDC Block number ,0~5
901 /*****************************************************************************/
902 PUBLIC uint32 *LCD_GetBlockUVBuffer (LCD_ID_E lcd_id, uint32 blk_num);
903 PUBLIC void LCD_DisplayText (uint16 x, uint16 y, char *text, uint16 len);
904 /**---------------------------------------------------------------------------*
906 **---------------------------------------------------------------------------*/