打印

触摸屏画板函数求解

[复制链接]
421|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
3月的尾巴|  楼主 | 2018-6-7 15:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

/******************************************************

* 函数名:Palette_draw_point

* 描述  :在LCD指定位置画一个大点(包含四个小点)

* 输入  : Xpos                --X方向位置

Ypos                --Y方向位置

* 输出  :无

* 举例  :Palette_draw_point(100,100);

* 注意  :该函数是 "触摸画板应用实例" 专用函数

*********************************************************/   

void Palette_draw_point(uint16_t Xpos,uint16_t Ypos)

{

    static u16 Pen_color=0;

                u16 Tmp_xpos = 240-Xpos;

    if(Ypos<40)

    {

        if(Tmp_xpos>30)

            Pen_color =(Tmp_xpos<60)?GREENTmp_xpos<90)?BLUETmp_xpos<120)?BREDTmp_xpos<150)?GREDTmp_xpos<180)?GBLUETmp_xpos<210)?BLACKTmp_xpos<240)?RED:BLUE;

        else

        {

            LCD_Rectangle(40,0,280,240,WHITE);

            return;

        }

    }

    else

    {

                                LCD_ColorPoint(Ypos,240-Xpos,Pen_color);

                                LCD_ColorPoint(Ypos+1,240-Xpos,Pen_color);

                                LCD_ColorPoint(Ypos,(240-Xpos)+1,Pen_color);

                                LCD_ColorPoint(Ypos+1,(240-Xpos)+1,Pen_color);

    }        

}        

该函数是画板程序触摸后在获取的坐标上画点。

请问:xpos和ypos不就是通过触摸函数获得的坐标吗?为什么还需要240-Xpos ,这是什么意思 。分辨率不是应该320(x)*240(y)么?有点搞混了

我自己写了个检测触摸按键的程序,就是直接判断xpos跟ypos作用范围没有按上述 240-xpos  结果跟预想的完全不一样

真心求助大神

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

433

主题

433

帖子

0

粉丝