【宝马 NXP LPC1768试用体验】+ 无OS UCGUI移植

  • 宝马
  • 奔跑小蜗牛
  • LV5工程师
  • |      2016-09-21 09:39:33
  • 浏览量 2695
  • 回复:6
本帖最后由 奔跑小蜗牛 于 2016-9-23 09:18 编辑 bg4.png****************************************************************************************************************************************** ------------------------转载请注明出处 ICKEY--------------------------****************************************************************************************************************************************** ucgui是很早以前的UI了,3.9以前的版本是开源的,后面的版本只提供库,不提供源码了,光盘里提供的源码只有ucosii+ucgui的例程,没有纯ucgui的例程,这里干干净净的移植一个,理论上无OS下ucgui会有更快的刷新率,新建个工程文件夹,把Cmsis和UCGUI文件拷贝进来,这两个文件夹可从提供的综合Demo中找到,Cmsis文件夹中主要是cm3库文件以及lpc17xx头文件和s启动文件,UCGUI文件夹中就是UCGUI的所有核心文件和应用文件 keil新建工程,选择LPC1768器件,找不到器件的自己安装下NXP的驱动库 向工程中添加项目文件夹,名字跟UCGUI中的对应,并把各个对应文件夹下的c文件添加进去 所有的头文件路径全部指定一下 工程搭建完毕,先配置下下GUIconfig文件,主要注意下GUI_OS改为0 LCD与UCGUI的显示接口在UCGUI_LCDDriver文件中,把LCD的画点、画线等函数接口到UCGUI中


void LCD_L0_SetPixelIndex(int x, int y, int PixelIndex) {

  GUI_USE_PARA(x);

  GUI_USE_PARA(y);

  GUI_USE_PARA(PixelIndex);

}



unsigned int LCD_L0_GetPixelIndex(int x, int y) {

  GUI_USE_PARA(x);

  GUI_USE_PARA(y);

  return 0;

}



void LCD_L0_XorPixel(int x, int y) {

  GUI_USE_PARA(x);

  GUI_USE_PARA(y);

}



void LCD_L0_DrawHLine(int x0, int y,  int x1) {

  GUI_USE_PARA(x0);

  GUI_USE_PARA(y);

  GUI_USE_PARA(x1);

}



void LCD_L0_DrawVLine(int x, int y0,  int y1) {

  GUI_USE_PARA(x);

  GUI_USE_PARA(y0);

  GUI_USE_PARA(y1);

}



void LCD_L0_FillRect(int x0, int y0, int x1, int y1) {

  GUI_USE_PARA(x0);

  GUI_USE_PARA(y0);

  GUI_USE_PARA(x1);

  GUI_USE_PARA(y1);

}

写下main.c文件,包括用到的头文件,板卡的初始化,然后调用GUIDEMO即可 下面测试了几个UCGUI自带的DEMO 整体矩形填充还是非常的慢,用的都是例程的驱动代码和接口,估计没怎么优化,后面优化下
  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:3
new world 2016-11-08
冲这个态度,点赞
0   回复
举报
发布
444364615 2016-09-21
:)嗯,板子功能实现的不错哦
0   回复
举报
发布
灵澈 2016-09-21
给精品点个赞!!!
0   回复
举报
发布
x
收藏成功!点击 我的收藏 查看收藏的全部帖子