11.4 GT-HMI-Engine代码移植

 

GT-HMI-Engine代码移植很重要,在hmi上位机设计的界面需要依赖这些文件才能使用,下面介绍移植步骤(下面介绍的步骤是在keil5环境下完成的)。

第一步:首先用git的下载GT-HMI-Engine源代码。

在git bash上使用

"git clone git@gitee.com:genitop/GT-HMI-Engine.git -b develop"命令拉取代码。

 

 

第二步:将GT-HMI-Engine源码添加到功能目录里面去,并添加到keil5的工程里面去,

 

 

 

 

图11.10

第三步:打开gnu配置进行编译,图11.11为参考的配置,不同的keil5版本配置gnu界面都不一样。这里gnu配置必须打开,不然会报很多错误。

图11.11

图7.4为Target配置,Use MicroLIB也需要打开,不然也会报错。

 

图11.12

第四步:编译通过之后添加spi_wr、_flush_cb、read_cb、read_cb_btn四个函数,spi_wr是读取素材图片的,支持flash、SD卡读取,_flush_cb是刷屏函数接口,read_cb是触摸上报接口,read_cb_btn是按键上报接口。read_cb_btn接口根据客户的要求添加,如果用不到,可定义空函数,就是这函数里面什么也没有,防止编译报错。

第五步:初始化gt_init函数,while(1)循环添加如下图操作,gt_tick_inc为GUI系统提供1ms的心跳。

图11.13

做完上面操作可显示一个按键控件看是否能正常显示,如显示不正常请检查_flush_cb刷屏函数是否正确。

控件能正常使用并能正常触摸,表明GT-HMI-Engine已移植成功

 

11.5 接口函数代码

u8 touch_status;

 

uint32_t spi_wr(uint8_t * data_write, uint32_t len_write, uint8_t * data_read, uint32_t len_read)

{

unsigned long ReadAddr;

unsigned long addr, len;

ReadAddr = *(data_write + 1) << 16; //高八位地址

ReadAddr += *(data_write + 2) << 8; //中八位地址

ReadAddr += *(data_write + 3); //低八位地址

 

spiflash_read(data_read,ReadAddr,len_read);

 

return 1;

}

 

void _flush_cb(struct _gt_disp_drv_s * drv, gt_area_st * area, gt_color_t * color) {

gt_size_t x=area->x,y=area->y;

uint16_t w = area->w,h = area->h;

int i=0;

 

lcd_setblock(x,y,x+w-1,y+h-1);

for(i=0;i<w*h;i++)

{

lcd_wr_data(color->full>>8);

lcd_wr_data(color->full&0xff);

color++;

}

}

void read_cb(struct _gt_indev_drv_s * indev_drv, gt_indev_data_st * data) {

if (!touch_status) {

data->state = GT_INDEV_STATE_RELEASED;

return;

}

touch_status = 0;

data->point.x = tp_dev.point.x;

data->point.y = tp_dev.point.y;

data->state = GT_INDEV_STATE_PRESSED;

}

注:read_cb_btn接口函数,如有需求可联系我司技术人员提供。

 

 

11.6 HMI函数代码移植

GT-HMI-Engine移植成功后,就可以实现HMI设计的界面移植到板子上,下面讲解一下HMI界面移植。

第一步:HMI的工程目录如下图,board和out目录是工程编译生成的字库库文件,图片素材寻址C文件,还有素材bin文件,我们需要做的是将gt_gui_driver.lib、gt_gui_driver.h和gt_port_vf.c文件替换keil工程GT-HMI-Engine/driver原来的文件,向flash烧录bin文件。screen目录是存放HMI设计的界面C文件,将这些界面文件添加到keil5工程里面去。

 

 

图11.14

第二步:在main函数调用gt_ui_init界面初始化接口函数,gt_ui_init是第一步添加到keil5工程界面文件中的函数。

在GT-HMI-Engine移植成功的基础上,按上面介绍的步骤操作完,即可实现HMI的界面移植,如移植不成功,请检查bin文件是否烧写正确。

 

12. 安全注意事项

因本产品属于高精密电子产品 (半成品) ,为避免人为造成的不良,请按指导规则进行相应操作。

1.请勿拆卸液晶显示模块。

2.不要在印制电路板上钻额外的孔 ,修改形状或更改印制线路板上元件的位置。

3.除焊接接口外 ,不要用烙铁做任何更改;焊接温度保证在 320°C-350°C ,焊接时间控制在10S以内 ,焊接时注意不要在同一处停留时间太久以免烫伤 FPC。

4.其他事项在不清楚使用之前 ,请联系我司人员指导进行。

 

 

上一页
    • 联系电话

    • 0755—83453881
    • 服务时间

    • 周一至周五 9:00-18:00
    • 高通GT-HMI交流群