触摸屏是目前最简单、方便、自然的而且又适用于中国多媒体信息查询国情的输入设备,它具有坚固耐用、反应速度快、节省空间、易于交流等许多优点。触摸屏技术被认为是未来人机交互科技的主流方向之一,相关的产业及其产品的应用也正在成为一个热点。但是传统的触摸屏因为成本比较高而难以适用到更广泛的工业控制设备中,目前武汉谷鑫科技的触摸屏设计方案而能够很好的解决这个难题,利用触摸屏、单片机和液晶屏搭建了一个人机界面系统。
在用C8051F020实现对TFT6448BS-5.7的控制过程中,采用总线方式进行控制。因为TFT6448BS-5.7液晶控制器自带有锁存功能,所以在使用总线方式进行控制时并不需要外加锁存芯片,只须使用单片机C8051F020的P0、P2、P3口就可以实现。在系统加电之前,由于C8051F020的典型工作电压为3.3V,TFT6448BS-5.7的工作电压是5V,对P0、P2、P3口相应连接管脚进行驱动能力扩展;根据控制需求,通过P0、P2、P3端口寄存器,将相应端口的引脚配置成漏极输出方式。将P3口配置成为数据/地址输出口,输出地址时,其为地址总线的低八位,P2口提供高位地址;传输数据时,其为8位数据总线口。系统加电后,使得TFT6448BS-5.7的片选信号/CS有效,通过往TFT6448BS-5.7的相应行、列、控制、数据寄存器中写入数据,即可用C8051F020芯片实现对TFT6448BS-5.7的控制,从而实现彩色液晶的显示控制。
该触摸屏硬件接口电路的具体工作过程如下:
1、如图2所示电路,连接好线路,给电源输入端、参考基准电压端接入3.3V的直流电源;
2、结合软件编程对AD0进行初始化,系统处于休眠状态时,软件开中断,截止PNP1、PNP2、NPN1,饱和导通NPN2;
3、等待触摸屏被触摸;
4、若触摸屏上发生触摸,进入中断服务程序,关掉外部中断,进行短暂延时以消除外界抖动。通过判断中断输入口P0.0的电平变化,确定抖动是否结束。通过软件截止PNP2、NPN2,饱和导通PNP1、NPN1,选择模数转换通道AIN0.0,采集触摸点的X方向坐标值,延时等待转换结束,移出转换结果;电极电压切换,通过软件置位,截止PNP1、NPN1,饱和导通PNP2、NPN2,选择模数转换通道AIN0.1,采集触摸点的Y方向坐标值,延时等待转换结束,移出转换结果;
5、通过将采集到的X和Y坐标值与设定的按键边界值进行比较,若比较结果为真,则切换到相应的子页面,否则,重新开中断,并返回主程序;
6、触摸屏硬件接口电路工作过程重新回到步骤3,继续等待下一次触摸。
关键字:C8051F020 单片机 触摸屏 驱动控制
引用地址:
C8051F020单片机对触摸屏的驱动控制
推荐阅读最新更新时间:2024-10-16 10:25
单片机 学习笔记(一)
80C51 系列: 80C51 是 MCS-51 系列中的一个典型品种;以 8051 为基核开发出的 CMOS 工艺单片机产品统称为 80C51系列。 以下是 8051 的内部结构: 8051 的基本构成: CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器; RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据; ROM:用以存放程序、一些原始数据和表格; I / O口:四个8位并行 I / O 口,既可用作输入,也可用作输出; T / C:两个定时 / 记数器,既可以工作在定时模式,也可
[单片机]
PIC单片机延时问题
#include p18f45k22.h //时间函数的测试 非定时器的使用 软件仿真 调试debug的使用 //在watch当中可以添加特殊功能寄存器和变量等 #define uint unsigned int #define uchar unsigned char void delayChar(uchar n);//uchar的取值在0~256之间 否则溢出 void delayInt(uint n);//使用时尽量在对时间要求不精确时使用 void main(void){ ANSELA=0; TRISAbits.RA0=0; PORTAbits.RA0=1; delayChar(5); PORTAbits.RA0=
[单片机]
基于单片机的光伏发电系统太阳自动跟踪器
摘要:由于太阳位置随时间而变化,使光伏发电系统的太阳能电池阵列受光照强度不稳定,从而降低了光伏电池的效率,因此,设计太阳自动跟踪器是提高光伏发电系统工作效率的有效措施。本文采用单片机EM78247为控制核心,设计了一个双轴太阳自动跟踪器,配合两台交流伺服电机实现光伏电池阵列与阳光照射之间的同步跟踪。该控制器在硬件和软件各方面采取了多项抗干扰措施,使其具有较好的跟踪效果和较强的抗干扰能力,且运行可靠稳定,具有较高的实际应用价值。 关键词:光伏发电系统;EM78247;太阳自动跟踪器 当今社会人们的环保意识越来越强,光伏发电系统的应用普遍受到各国政府重视。因为它不仅能为我们提供用之不竭的可持续再生电能,并更好地保护人类
[单片机]
单片机(AVR)串口接收和发送
//串口初始化 void UART_Init(void) { UCSRB = UBRRH = 0; UBRRL = (ClockCPU/Baud)/16-1; UCSRB = (1 RXEN) | (1 TXEN); //enable UART receiver and transmitter UCSRC = (1 URSEL)|(1 USBS)|(3 UCSZ0);//设置帧格式: 8 个数据位, 2 个停止位 } //串口中断使能或屏蔽 void UART_int_enable(void) { UCSRB |= (1 RXCIE); // UCSRB &= ~(
[单片机]
Keil C51单片机开发环境使用小记
用Keil写C51程序是最好不过的了。用伟福也可以写,但伟福的编辑能力就相差太远了。我习惯用Keil写代码,然后用伟福硬件仿真(只有WAVE的仿真头)。不过Keil是好用,但写代码关键还是C51水平,也就是编程能力,写C程序就离不开模块化这个词了。C51和A51,要扬长避短,发挥C的长处,就得将C模块化好。刚刚开始的时候就只是熟悉C51的语法规则了,熟悉了这个然后再追求程序的可读性和可移植性。 下面是的我使用Keil C51的一点心得。 1、程序可读性的提高 要提高程序的可读性,就得养成一良好的编程习惯了,例如变量用小写,常量用大写,函数第一个字母用大写等等。这样成习惯以后,自己看代码就会一目了然。另外还要灵活的在KEIL中使用
[单片机]
单片机与嵌入式系统应用
Microchip公司的MCP3421与其他A/D转换器相比,特点主要表现在:全差分输入;18位分辨率;精密的连续自校准功能;可选择3.75、15、60或240 sps采样速率进行转换;可工作在连续转换或单次转换模式,在单次转换后的空闲期内自动进入待机模式,极大地减小了电流消耗;内部集成2.048 V±0.05%精度,且温度漂移仅为5ppm/℃的基准电压源;可编程增益放大器(PGA)提供1/2/4/8倍增益,允许测量极小的信号并且具有很高的分辨率;内部集成振荡器电路并提供I2C串行接口等。 1 MCP3421封装形式与结构 MCP3421是Microchip公司△-∑A/D转换器系列的一款18位分辨率器件,采用SOT23-6封装
[工业控制]
STM32WB的CKS功能提供在MCU上的密钥安全存储和安全使用方法
我们都知道STM32WB是双核多协议无线微控制器,即主频为64 MHz的 ArmCortex‐M4内核(应用处理器)和主频为32 MHz的ArmCortex‐M0+内核(网络处理器),支持Bluetooth 5和IEEE 802.15.4无线标准。双核的好处是可以优化对资源的安全使用,保证和RF协议栈相关处理的实时性,并可同时提供电源管理的灵活性。 STM32WB的信息安全是以双核隔离为基础的。 STM32WB双核架构和双核间的隔离机制 调试端口访问: 出厂的芯片缺省关闭CM0+一侧的调试端口访问,即使在RDP0的状态下也只能调试CM4内核。 Option Byte: OptionByte中包含双核隔离相关的安全设置,
[单片机]
紫光同芯动力底盘域控MCU THA6412,有何技术亮点?
汽车电子领域什么芯片最难做?那一定是动力底盘域控芯片,它被誉为汽车电子皇冠上的明珠,它象征着汽车电子产品高安全、高可靠、高性能的完美结合。 8月21日,紫光同芯发布了业界期待的高性能动力底盘域控MCU——THA6412,这款MCU背后有什么技术值得关注?本文详细解析其技术。 汽车MCU难在哪里 说起汽车MCU芯片,由于起步晚、研发周期长、回报慢、难度高、生态缺乏,目前国内中低端玩家众多。所以,为什么会出现这样的现状,高端汽车MCU难在哪里? 高端MCU开发难度主要体现在高可靠性实现上。以车规级的AEC-Q100标准为例,高可靠性不仅依赖于测试,更需要在设计阶段就进行充分保障,并在整车应用中经受时间的考验。
[单片机]