来看看最近在12864 屏上运行的ucGUI效果

2019-12-27 18:50发布

本帖最后由 flyer_4 于 2014-11-23 17:40 编辑

http://v.youku.com/v_show/id_XODMxNzgwODcy.html
12864液晶屏,st7920驱动。使用一个较低优先级的任务把内存中一块虚拟显存中的内容通过SPI发送给st7920,GUI低层的写屏函数只把要显示的数据写入虚拟显存中。目前GUI部分已经完成大部分,剩下的正在领导半天一小催,一天一大催的紧张气氛下往前赶。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
98条回答
worldsing
2020-01-08 20:00
xyz543 发表于 2015-1-21 15:21
worldsing 兄,指导真是不敢当,就当相互学习交流吧!
我不清楚您所指的 "emWin在反处理上的问题" 您是指 ...

多谢xyz543兄耐心指导, 您谦虚了。

1、是的,我打的字有问题,现象是是LISTBOX选择项无法反白显示,从图上来看是直接不显示反白部分,标题栏部分也无法显示;

2、您说的对,我用的不是emWin的底层 API (这个效果没有使用 Draw Bitmap 1 BPP 的功能),我尝试用过emWin的底层API,
   GUICC_1,代码如下:

   #define COLOR_CONVERSION    GUICC_1
   #define DISPLAY_DRIVER         &GUIDRV_Template_API  

    void LCD_X_Config(void)
    {               
        GUI_DEVICE_CreateAndLink(DISPLAY_DRIVER, COLOR_CONVERSION, 0, 0);

        LCD_SetSizeEx    (0, 128, 64);
        LCD_SetVSizeEx   (0, 128, 64);       
   }

   但是,这样的LCD配置无法正常显示,效果是花屏,GUIDRV_Template_API  我自定义实现的
   void LCD_PutPixel(u32 x, u32 y, u8 color);
   uint8_t LCD_GetPixel(uint32_t x, uint32_t y);

   经过测试均正常绘制点;

3、我所用的LCM是ST7920的控制器,是单 {MOD}屏(黑白屏),无 {MOD}阶,同样,emWin所提供的GUICC_1也是单 {MOD}的,黑白两 {MOD}
    可能是我对调 {MOD}板理解的不对?
   

4、我自定义的调 {MOD}板转化的API是(这是替换GUICC_1):
    【 {MOD}彩索引API功能】:无论入口参数是什么颜 {MOD},返回的 {MOD}彩只有黑 {MOD}或者白 {MOD}
     static LCD_COLOR _Index2Color_User(unsigned Index){
        LCD_COLOR Color;
        if(0 == Index)
           Color = 0x00ffffff;  
        else
           Color = 0;
        return Color;
    }
   
    static unsigned _Color2Index_User(LCD_COLOR Color) {
        unsigned Index;
        if(0 == Color)
          Index = 1;
        else
          Index = 0;
        return Index;
   }


值得怀疑有问题两个API接口





一周热门 更多>