4. 自定义画面
本章节主要介绍了K2000的自定义画面教程。
4.1. 编写函数原型
根据需求用c编写好函数原型。
以下例子均为自定义填充画面:
'''
* 描述 : 填充自定义画面
* 参数
* (*fp)(int tem): 函数接口传入
* r : RGB颜色
* g : RGB颜色
* b : RGB颜色
* 返回 : 无
void Img_Full(void (*fp)(int tem),unsigned char r, unsigned char g, unsigned char b)
{
unsigned int i, j;
unsigned int pix;
int Y_Size = 2560; //分辨率Y:根据屏幕实际参数自行修改
int X_Size = 1600; //分辨率X:根据屏幕实际参数自行修改
pix = (r<<16)|(g<<8)|b;
for(j=0;j<Y_Size;j++)
{
for(i=0;i<X_Size;i++)
{
fp(pix); //外部依赖函数
}
}
}
4.2. 生成函数码
需要借助xxx工具
为xxx工具提供MDK_Keil软件解析器路径(默认路径 : 当前电脑安装的路径\ARM\ARMCC\bin)。
![]()
把编写好的函数原型复制到自定义画面代码输入框,点击编译按钮,查看结果,若结果红框中0 errors即为成功。
![]()
打开xxx工具目录下SkyCode_New_Image文件夹里面的Generate_Code_New.txt文件,里面有个函数名+SData的数组即为对应函数码。如下图所视。
![]()
4.3. 执行自定义画面写入
自定义画面
SHARP_Img_custom(fun,*arg)该函数位于sharp_img模块中。
fun自定义函数列表
*arg自定义函数参数自定义画面写入。
from mp_img import *
#转换后的数据
Img_full_SData = [0x2d, 0xe9, 0xf0, 0x47, 0x80, 0x46, 0x08, 0x04, 0x40, 0xea, 0x02, 0x20, 0x00, 0x25, 0x4f, 0xf4, 0x20, 0x67, 0x4f, 0xf4, 0xc8, 0x66, 0x40, 0xea, 0x03, 0x09, 0x00, 0x24, 0x03, 0xe0, 0x41, 0x46, 0x48, 0x46, 0x88, 0x47, 0x64, 0x1c, 0xb4, 0x42, 0xf9, 0xd3, 0x6d, 0x1c, 0xbd, 0x42, 0xf4, 0xd3, 0xbd, 0xe8, 0xf0, 0x87]
Img_custom(Img_full_SData,SHARP_GPU_WrRGB,255,255,255)