嵌入式触摸屏的使用

一、1.什么是嵌入式开发

        嵌入式是指将某些程序代码或者某种小型操作系统“内嵌于”集成电路芯片,嵌入式设备是用于控制、监视或者辅助操作机器和设备的装置。嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。

2.嵌入式开发的主要含义

        嵌入式开发是指利用分立元件或集成器件进行电路设计、结构设计,再进行软件编程(通常是高级语言),实验,经过多轮修改设计、制作,最终完成整个系统的开发。这种嵌入式开发,适用于未来产品比较单一,产量比较大,产品开发周期比较长,成本控制比较严格的系统。(简言之,嵌入式开发涵盖了电路硬件设计,软件程序设计,软硬件系统联合调试)

二、1.触摸屏的分类

        触摸屏又称触控面板,它是一种把触摸位置转化成坐标数据的输入设备,根据触摸屏的检测原理,主要分为电阻式触摸屏和电容式触摸屏。相对来说,电阻屏造价便宜,能适应较恶劣的环境,但它只支持单点触控 (一次只能检测面板上的一个触摸位置),触摸时需要一定的压力,使用久了容易造成表面磨损,影响寿命;而电容屏具有支持多点触控、检测精度高的特点,电容屏通过与
导电物体产生的电容效应来检测触摸动作,只能感应导电物体的触摸,湿度较大或屏幕表面有水
珠时会影响电容屏的检测效果。

2.触摸屏的工作原理

        触摸屏的工作原理主要依赖于电容感应或电阻感应技术。电容式触摸屏利用人体的电流感应进行工作,其核心是一块四层复合玻璃屏,内表面和夹层各涂有一层ITO(纳米铟锡金属氧化物),最外层是矽土玻璃保护层。当手指触摸屏幕时,由于人体电场,手指与屏幕表面形成耦合电容,导致高频电流通过,从而吸走一个很小的电流。这个电流从屏幕四角上的电极流出,控制器通过精确计算这四个电极上的电流比例,得出触摸点的位置。12

        电阻式触摸屏则通过两层透明的阻性导体层和一层隔离层工作,当某一层电极加上电压时,会在该网络上形成电压梯度。如有外力使得上下两层在某一点接触,则在电极未加电压的另一层可以测得接触点处的电压,从而知道接触点处的坐标。

        触摸屏由触摸检测部件和触摸屏控制器组成,检测用户触摸位置后将相关信息传送至触摸屏控制器,后者将触摸信息转换成触点坐标并传送给CPU。触摸屏已从单点触屏发展到实现多点触屏。

3.触摸屏的制作

(1)在main函数中调用触摸屏初始化函数

                GTP_Init_Panel();

(2)定义一个结构体

(3)定义按键的事件

//定义按键0的事件
void button_0_clicked()
{
    if(beep_state == 0)
          {
            GPIO_SetBits(GPIOI,GPIO_Pin_11);//开启蜂鸣器
            beep_state = 1;//更新蜂鸣器的状态
          }
          else
          {
            GPIO_ResetBits(GPIOI,GPIO_Pin_11);//关闭蜂鸣器
            beep_state = 0;//更新蜂鸣器的状态
          }
}

(4)获取触摸屏的操作及坐标

//触摸屏被按下时该函数被调用,x,y是按下时的坐标值
void GTP_Press_Event(int32_t x,int32_t y)
{
  uint8_t buf[100] = {0};
	uint8_t i = 0;
  sprintf((char*)buf,"Press point:%d  %d    ",x,y);  //构造字符串,显示按下时的坐标
  LCD_DisplayStringLine(LINE(0),(uint8_t* )buf);
	
	for(i = 0;i<BUTTON_NUM;i++)
{
	if( x >button_list[i].x
	 && x<(button_list[i].x+button_list[i].width) 
	 && y>button_list[i].y 
	 && y<(button_list[i].y+button_list[i].height))//判断按下坐标是否在矩形框内
	{
		 LCD_SetColors(button_list[1].release_color,LCD_COLOR_BLACK);
	//画矩形框
	 LCD_DrawFullRect(button_list[1].x,
									 button_list[1].y,
									 button_list[1].width ,
									 button_list[1].height);
	
	//将画笔颜色改为字体需要的颜色
	 LCD_SetColors(button_list[i].text_color,button_list[i].release_color);
	//在矩形框上写字
	 LCD_DrawCharCN(button_list[1].x+10,
									button_list[1].y+10,
									(uint8_t *)button_list[1].text);
		
		//执行按键事件
		button_list[i].clicked();
	}
		}

}

三、触摸屏的发展趋势和机遇

        随着触摸屏技术的不断创新和应用领域的不断拓展,未来触摸屏市场将呈现以下几个方面的发展趋势和机遇:

        大尺寸化:随着智能电视、智能白板、智能会议系统等产品的普及,大尺寸触摸屏的需求将持续增加。大尺寸触摸屏对技术和成本的要求较高,目前主要采用红外线式和光学影像式两种技术。未来随着新技术的出现和成熟,如微缝式电容触摸屏、金属网格式电容触摸屏等,大尺寸触摸屏将有更多的选择和更好的性能。

        多点触控化:多点触控是指在同一时间内可以识别多个手指或物体在触摸屏上的位置和动作。多点触控可以提供更丰富和更自然的交互方式,提高用户体验。目前多点触控主要应用于个人消费电子领域,如智能手机、平板电脑等。未来随着多点触控技术的进步和成本的降低,多点触控将逐渐扩展到其他领域,如教育、娱乐、医疗等。

        柔性化:柔性触摸屏是指可以弯曲或折叠的触摸屏,具有轻薄、可塑、可穿戴等特点,可以实现更多样化和个性化的设计和应用。柔性触摸屏目前主要采用有机发光二极管(OLED)技术,但由于技术难度大、成本高、寿命短等问题,柔性触摸屏的市场推广还面临一定的挑战。未来随着新材料的开发和新工艺的突破,柔性触摸屏将有望实现大规模商用,为触摸屏行业带来新的增长点。

        智能化:智能触摸屏是指具有自主学习和适应能力的触摸屏,可以根据用户的习惯和喜好,提供更个性化和智能化的服务和功能。智能触摸屏需要结合人工智能(AI)、物联网(IoT)、云计算等技术,实现对用户行为、情感、偏好等数据的收集、分析和反馈。智能触摸屏将为用户带来更便捷和更高效的交互体验,同时也为厂商提供更多的商业价值和创新空间。

        综上所述,学习触摸屏的制作与使用是很有必要的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值