初级会员

- 积分
- 145
- 金钱
- 145
- 注册时间
- 2017-7-25
- 在线时间
- 44 小时
|
5金钱
新人第一次发帖求助排版不好请见谅。。
在按照原子哥给的enWin教程移植完裸跑GUI后,尝试用了GUIBuilder画了个界面,但是下载完程序显示出来部分线条有点花。
问了学长,感觉是GUIDRV_Template.c里打点画线的函数的问题,但是对照了原子哥的pdf,并没有什么不一样。。
还有个问题是GUIDRV_Template里的16 BPP函数,里面的UCGUI_LCD_CMD&UCGUI_LCD_DATA我原本并没有这个定义,百度了下找到了定义加进去,换了两种:
(1)
u32 UCGUI_LCD_CMD = 0X6C000000;
u32 UCGUI_LCD_DATA = 0X6C000800;
(2)
u32 UCGUI_LCD_CMD = 0X6007FFFE;
u32 UCGUI_LCD_DATA = 0X60080000;
发现效果都一样,屏幕还是一样的花。。不清楚为什么。。
希望大佬们能抽空看下程序。。帮我解答一下问题,谢谢~
static void _DrawBitLine16BPP(GUI_DEVICE * pDevice, int x, int y, U16 const GUI_UNI_PTR * p, int xsize)
{
LCD_PIXELINDEX pixel;
LCD_SetCursor(x,y);
*(__IO uint16_t *)(UCGUI_LCD_CMD) = lcddev.wramcmd; //写入颜色值
for(;xsize > 0;xsize--,x++,p++)
{
pixel = *p;
*(__IO uint16_t *)(UCGUI_LCD_DATA) = pixel;
}
}
|
最佳答案
查看完整内容[请看2#楼]
花屏问题解决了
#define DFT_SCAN_DIR L2R_U2D //默认的扫描方向
是扫描方向的问题,之前动过了忘记恢复默认了,导致画线出了问题。。
但是为什么之前改这个扫描方向时,横屏竖屏只有一个方向,不管把DFT_SCAN_DIR改成什么方向都没用呢?
|