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

📄 abl_colors.c

📁 SHARP_ARM720T_LH79524/5软件开发包_支持TFT_LCD_NAND_FLASH_ETH_USB
💻 C
字号:
/***********************************************************************
 * $Workfile:   abl_colors.c  $
 * $Revision:   1.1  $
 * $Author:   WellsK  $
 * $Date:   Aug 04 2003 09:34:08  $
 *
 * Project: Color definitions
 *
 * Description:
 *     See the SMA_colors.h header file for a description of this
 *     package.
 *
 * Revision History:
 * $Log:   //smaicnt2/pvcs/VM/sharpmcu/archives/sharpmcu/software/abl/source/abl_colors.c-arc  $
 * 
 *    Rev 1.1   Aug 04 2003 09:34:08   WellsK
 * Corrected index name (syntax error) when using defines that
 * generate palette table in 8-bit mode.
 * 
 *    Rev 1.0   Jun 09 2003 12:06:26   WellsK
 * Initial revision.
 * 
 *
 ***********************************************************************
 * SHARP MICROELECTRONICS OF THE AMERICAS MAKES NO REPRESENTATION
 * OR WARRANTIES WITH RESPECT TO THE PERFORMANCE OF THIS SOFTWARE,
 * AND SPECIFICALLY DISCLAIMS ANY RESPONSIBILITY FOR ANY DAMAGES, 
 * SPECIAL OR CONSEQUENTIAL, CONNECTED WITH THE USE OF THIS SOFTWARE.
 *
 * SHARP MICROELECTRONICS OF THE AMERICAS PROVIDES THIS SOFTWARE SOLELY 
 * FOR THE PURPOSE OF SOFTWARE DEVELOPMENT INCORPORATING THE USE OF A 
 * SHARP MICROCONTROLLER OR SYSTEM-ON-CHIP PRODUCT. USE OF THIS SOURCE
 * FILE IMPLIES ACCEPTANCE OF THESE CONDITIONS.
 *
 * COPYRIGHT (C) 2001 SHARP MICROELECTRONICS OF THE AMERICAS, INC.
 *     CAMAS, WA
 **********************************************************************/
 
#include "abl_colors.h"

/***********************************************************************
 * Functions
 **********************************************************************/

/***********************************************************************
 *
 * Function: abl_colors_set_palette
 *
 * Purpose:  Generate a palette table (only in 8-bit mode).
 *
 * Processing:
 *     Depending on the target LCD color mapping (either 555 or 565), a
 *     palette table will be generated to convert colors stored in 233
 *     format to either 555 or 565 format through a lookup table.
 *
 * Parameters:
 *     palette_table : Pointer of where to put the 256 8-bit to 16-bit
 *                     palette conversion entries.
 *
 * Outputs: None
 *
 * Returns: Nothing
 *
 * Notes:
 *     If compiled in 16-bit color mode, this will be a NULL function.
 *     Select the appropriate define in this function for 555 or 565
 *     color mode displays when using an 256 color frame buffer.
 *
 **********************************************************************/
void abl_colors_set_palette(UNS_16 *palette_table)
{
#if COLORS_DEF == 8
    INT_32 idx;
    UNS_16 entry, r, g, b;

    /* 256 entries */
    for (idx = 0; idx < NUM_COLORS; idx++)
    {
        r = ((UNS_16) idx & REDMASK) >> REDSHIFT;
        g = ((UNS_16) idx & GREENMASK) >> GREENSHIFT;
        b = ((UNS_16) idx & BLUEMASK) >> BLUESHIFT;

#ifdef COLORS_8_565_MODE
        /* Strip out and scale colors */
        r = r * 0x1F / ((REDMASK >> REDSHIFT) + 1);
        g = g * 0x3F / ((GREENMASK >> GREENSHIFT) + 1);
        b = b * 0x1F / ((BLUEMASK >> BLUESHIFT) + 1);
        entry = b + (g << 5) + (r << 11);

#else
        /* Strip out and scale colors */
        r = r * 0x1F / ((REDMASK >> REDSHIFT) + 1);
        g = g * 0x1F / ((GREENMASK >> GREENSHIFT) + 1);
        b = b * 0x1F / ((BLUEMASK >> BLUESHIFT) + 1);
        entry = b + (g << 5) + (r << 10);
#endif

        /* Save palette entry */
        palette_table [idx] = entry;
    }
#endif /* COLORS_DEF == 8 */
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -