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

📄 hw_mcupanel.c

📁 瑞星微公司RK27XX系列芯片的SDK开发包
💻 C
字号:
/******************************************************************/
/*   Copyright (C) 2007 ROCK-CHIPS FUZHOU . All Rights Reserved.  */
/*******************************************************************
File :  hw_Mcupanel.c
Desc :  Mcupanel面板驱动

Author :  nzy
Date :
Notes :

$Log :
*********************************************************************/
#include "hw_include.h"
#include "hw_Lcdctrl.h"
#include "hwapi_Mcupanel.h"


/*---------------------------------------------------------
Name  :  Mcupanel_Transform
Desc  :
Params:
Return:
Author:  nzy
Date  :
-----------------------------------------------------------*/
UINT32 Mcupanel_Transform(UINT32 Par)
{
    UINT32 R8, G8, B8;

#if (LCDTYPE == MCU18_PANEL)
    R8 = Par & 0x0000fc00;
    G8 = ((Par & 0x00000300) >> 2) + ((Par & 0x000000e0) >> 3);
    B8 = (Par & 0x00000001f) << 3;
    Par = (R8 << 8) + (G8 << 8) + B8;
#elif (LCDTYPE == MCU16_PANEL)
    R8 = (Par & 0x0000f800) << 8;
    G8 = (Par & 0x000007e0) << 5;
    B8 = (Par & 0x0000001f) << 3;
    Par = R8 + G8 + B8;
#endif

    return Par;
}


/*---------------------------------------------------------
Name  :  Mcupanel_Command
Desc  :
Params:
Return:
Author:  nzy
Date  :
-----------------------------------------------------------*/
void Mcupanel_Command(UINT32 Cmd)
{
    WriteReg32(LCD_COMMAND, Mcupanel_Transform(Cmd));
}


/*---------------------------------------------------------
Name  :  Mcupanel_Data
Desc  :
Params:
Return:
Author:  nzy
Date  :
-----------------------------------------------------------*/
void Mcupanel_Data(UINT32 Data)
{
    WriteReg32(LCD_DATA, Mcupanel_Transform(Data));
}


/*---------------------------------------------------------
Name  :  Mcupanel_Reg_Set
Desc  :
Params:
Return:
Author:  nzy
Date  :
-----------------------------------------------------------*/
void Mcupanel_RegSet(UINT32 cmd, UINT32 data)
{
    Mcupanel_Command(cmd);
    Mcupanel_Data(data);
}


/*---------------------------------------------------------
Name  :  Mcupanel_PowerOnInit
Desc  :  Mcupanel上电初始化
Params:
Return:
Author:  nzy
Date  :
-----------------------------------------------------------*/
void Mcupanel_PowerOnInit(void)
{
#if((LCDPANEL == MCUIF_ILI9320_16B)||(LCDPANEL == MCUIF_ILI9320_18B))
    Ili9320_PowerOnInit();
#endif
#if((LCDPANEL == MCUIF_FD5420_16B)||(LCDPANEL == MCUIF_FD5420_18B))
    Fd5420_PowerOnInit();
#endif
#if((LCDPANEL == MCUIF_ER61509_16B)||(LCDPANEL == MCUIF_ER61509_18B))
    Er61509_PowerOnInit();
#endif
}


/*---------------------------------------------------------
Name  :  Mcupanel_Standby
Desc  :  Mcupanel的StandBy模式设置
Params:  NORMAL  -> 恢复正常模式
         STANDBY -> 设置为StandBy模式
Return:
Author:  nzy
Date  :
-----------------------------------------------------------*/
void  Mcupanel_Standby(MCULCDSTATUS Enable)
{
#if((LCDPANEL == MCUIF_ILI9320_16B)||(LCDPANEL == MCUIF_ILI9320_18B))
    Ili9320_Standby(Enable);
#endif
#if((LCDPANEL == MCUIF_FD5420_16B)||(LCDPANEL == MCUIF_FD5420_18B))
    Fd5420_Standby(Enable);
#endif
#if((LCDPANEL == MCUIF_ER61509_16B)||(LCDPANEL == MCUIF_ER61509_18B))
    Er61509_Standby(Enable);
#endif
}


/*---------------------------------------------------------
Name  :  Mcupanel_ScanDirSet
Desc  :  Mcupanel扫描方向设置
Params:  XSize -> X方向的宽度
         YSize -> Y方向的高度
Return:
Author:  nzy
Date  :
-----------------------------------------------------------*/
void Mcupanel_ScanDirSet(UINT16 XSize, UINT16 YSize)
{
#if((LCDPANEL == MCUIF_ILI9320_16B)||(LCDPANEL == MCUIF_ILI9320_18B))
    Ili9320_ScanDirSet(XSize, YSize);
#endif
#if((LCDPANEL == MCUIF_FD5420_16B)||(LCDPANEL == MCUIF_FD5420_18B))
    Fd5420_ScanDirSet(XSize, YSize);
#endif
#if((LCDPANEL == MCUIF_ER61509_16B)||(LCDPANEL == MCUIF_ER61509_18B))
    Er61509_ScanDirSet(XSize, YSize);
#endif
}


⌨️ 快捷键说明

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