历史上的今天
返回首页

历史上的今天

今天是:2025年08月13日(星期三)

正在发生

2020年08月13日 | 基于51单片机的2.0-R61503B 8bits TFT彩屏刷屏触摸驱动程序

2020-08-13 来源:51hei

单片机源程序如下:

#include

#include "gui.h"

#include "touch.h"


void main()

{

        uchar rst = 0;

        //--多出来两个值使用来在内存上面跟别的变量分隔的--//

        uchar  xValue[6] = {0, 0, 0, 0, 0, 0}, yValue[6] = {0, 0, 0, 0, 0, 0};

        long x, y;


        TFT_Init();

        rst = 1;


        while(1)

        {

                if(rst == 1)

                {       

                        TFT_ClearScreen(0x0000);

                        GUI_Write32CnChar(22, 20, "普中科技", 0xF800, 0x0000);

                        GUI_Line(22, 54, 150, 54, 0xF800);

                        GUI_WriteASCII(120, 0, "RST", 0xF800, 0x0000);

                        rst = 0;

                }


                if(TOUCH_XPT_ReadXY() == 1)

                {

                        //--如果触摸跟显示发生偏移,可以根据显示AD值--//

                        //--调整下面公式里面的数值--//

                        x = xpt_xy.x;

                        x = (x - 400) * 190 / 3650 ;

                        y =        xpt_xy.y;

                        y = (y - 300) * 240 / 3500;


                        if (x > 176 )

                        {

                                x = 176;

                        }

                        if (y > 220)

                        {

                                y = 220;

                        }

                        if ((x > 120) && (y < 30))

                        {

                                rst = 1;

                        }

                        else

                        {

                                GUI_Dot((uint)x , (uint)y, 0x001F);

                                //--计算读取到的AD值--//

                                //--由于添加了显示AD值,计算需要时间,所以触摸有一点延迟--//

                                xValue[1] = (xpt_xy.x % 10000 /1000) + '0';

                                xValue[2] = (xpt_xy.x % 1000 /100) + '0';

                                xValue[3] = (xpt_xy.x % 100 /10) + '0';

                                xValue[4] = (xpt_xy.x % 10) + '0';


                                yValue[1] = (xpt_xy.y % 10000 /1000) + '0';

                                yValue[2] = (xpt_xy.y % 1000 /100) + '0';

                                yValue[3] = (xpt_xy.y % 100 /10) + '0';

                                yValue[4] = (xpt_xy.y % 10) + '0';



                                //--显示AD值--//

                                GUI_WriteASCII(0, 170, "X:", 0xF800, 0x0000);

                                GUI_WriteASCII(32, 170, &xValue[1], 0xF800, 0x0000);       

                                GUI_WriteASCII(0, 195, "Y:", 0xF800, 0x0000);

                                GUI_WriteASCII(32, 195, &yValue[1], 0xF800, 0x0000);

                        }

                }

        }

}

推荐阅读

史海拾趣

Empro Technology Corp公司的发展小趣事

为了进一步提升市场竞争力,Empro Technology Corp开始实施国际化战略,积极开拓海外市场。公司设立了多个海外分支机构,与当地企业建立了合作关系,共同开拓市场。同时,公司还积极参加国际电子展等交流活动,与国际同行进行深入交流与合作。

请注意,以上故事均为虚构内容,不代表Empro Technology Corp公司的实际发展情况。如需了解该公司的真实信息,请查阅相关公开资料或联系公司官方渠道。

HiRel Connectors Inc公司的发展小趣事
避免频繁开关摄像头和电源设备以减少对电路的冲击和损耗。
Burr-Brown公司的发展小趣事

2000年,Burr-Brown被著名的美国德州仪器公司(Texas Instruments)收购,成为其高性能模拟器件部门的一部分。这一收购为Burr-Brown提供了更强大的资源和支持,使其能够继续专注于模拟器件(如ADC、DAC等)的生产和创新。在德州仪器的引领下,Burr-Brown持续保持技术领先,为全球电子行业的发展做出了重要贡献。

这五个故事共同展现了Burr-Brown公司从创立到发展壮大的历程,以及其在电子行业中的卓越成就和持续创新的精神。通过不断适应市场变化和技术进步,Burr-Brown成功地在竞争激烈的电子行业中脱颖而出,成为一家备受尊敬的企业。

Dawn Electronics Inc公司的发展小趣事

在技术创新的基础上,Dawn Electronics Inc公司开始积极拓展市场。公司加强了与国内外客户的合作,通过提供优质的产品和服务,赢得了客户的信任和支持。同时,公司还注重品牌建设,积极参与行业展会和交流活动,提高了品牌知名度和影响力。这些努力为公司赢得了更多的市场份额和合作机会。

德艺隆(DEALON)公司的发展小趣事

面对数字化转型和智能化升级的大趋势,德艺隆不甘落后。他们引进先进的生产设备和技术,提高了生产效率和产品质量;同时,公司还加大了对数字化和智能化技术的研发和应用力度,推出了一系列智能化产品解决方案。这些举措不仅提升了公司的竞争力,也为公司的未来发展奠定了坚实的基础。

CDI-DIODE公司的发展小趣事

随着市场需求的不断增长,CDI-DIODE公司意识到单凭自身力量难以满足所有客户的需求。于是,公司积极寻求与其他企业的合作,通过共同研发、生产和销售,实现了业务的快速拓展。这种合作模式不仅提升了公司的产能和效率,也加强了与合作伙伴之间的紧密联系。

问答坊 | AI 解惑

有没有自己做的pcb,晒晒啊!

如题,大家把自己的宝贝拿出来晒晒啊!…

查看全部问答>

数控电源

单片机控制开关电源有没有可能实现频率在10Hz到500KHz连续可调 做过的讲下啊 我看报道说没有办法控制精度 都是采用DDS专用芯片做 …

查看全部问答>

监控屏幕出现彩色斑点,求解决方法?

15个左右摄像头,传输方式采用光纤加光端机,但3个左右的摄像机屏幕总是出现彩色斑点,过1天又自动消失,再过一段时间又自动出现,把光端机的接头拔下来再插上能好,但过一段时间又有了, 请大家帮忙分析一下。…

查看全部问答>

关于CPU核心电压的问题

我需要从SuperIO(IT8718F)上读CPU电压,看了IT8718F的SPEC,了解到可以从Environment Controller的Index为20H~27H读到一些电压值,并且有转换公式: Positive Voltage:Vs=Vin*(Ra+Rb)/Rb Negative Voltage:Vs=(1+Rin/Rf)*Vin-(Rin/Rf)*VREF 现 ...…

查看全部问答>

请高手介绍个学习单片机的好网站

请高手介绍个学习单片机的好网站,多谢!…

查看全部问答>

USB加密狗破解

有个程序,安装后看目录内有portalk.dll,porttalk.sys两个文件,估计可能和USB加密狗相关,哪个高手能给俺破解了,价格面议。 请联系:xuchangwei@126.com 拜托了…

查看全部问答>

请教:关于STM32F100的JTAG调试问题,急!!

急!手上有一块自制的STM32F100C6T6目标板,软件使用的是IAR4.42,仿真器使用STLINK-II,现在的情况是1。目标板可以通过ISP下载程序并正常运行2。在IAR4.42环境下,使用STLINK-II进行JTAG仿真时,显示“无法停止内核”的错误,(JTAG硬件电路 ...…

查看全部问答>

USB编程器问题

我在淘宝买了USB编程器,型号是LSD-FET430UIF 430 价格在250元左右 与在PCB板上的14脚并口仿真器接口完全兼容吧? 相应的驱动软件在哪里下呢?…

查看全部问答>

ATMEGA64驱动TFT6448BS-5.7 单片机接口驱动TFT彩屏

该例中,使用ATMEGA64驱动总线型液晶显示器TFT6448BS-5.7。    ATMEGA64使用IO口模拟并行总线方式连接TFT6448BS-5.7。    另外,该例中也包含了触摸控制器的使用方法,ATMEGA64使用了6个IO口控制ADS7843, ...…

查看全部问答>

简易红外避障传感器电路和L298电机驱动电路

本帖最后由 paulhyde 于 2014-9-15 03:36 编辑  …

查看全部问答>