文档库 最新最全的文档下载
当前位置:文档库 › C8051键盘测试程序

C8051键盘测试程序

C8051键盘测试程序
C8051键盘测试程序

#include

#include

//----------------------------------------------------------------------------- #define uchar unsigned char

#define uint unsigned int

#define BAUDRATE

#define SYSCLK

void SYSCLK_Init (void);

void delaynus(unsigned int q) ;

void PORT_Init (void);

void SPI0_Init (void);

void LCD_Init(void);

void SendSPIByte(unsigned char ch);

void delaynms (unsigned int j);

void writecom(unsigned char com);

void writedata(unsigned char d);

void writechar(unsigned char ua);

void Write_COM(uchar ins);

void lcden(datad);

void LCD_set_xy( unsigned char x, unsigned char y );

void LCD_write_string(unsigned char n);

void lcd_key1(void);

void lcd_key2(void);

void lcd_key3(void);

void lcd_key4(void);

void UART0_Init (void);

void presskey(void);

//----------------------------------------------------------------------------- // Global CONSTANTS

//----------------------------------------------------------------------------- sbit S3=P1^0;

sbit S4=P1^1;

sbit S5=P1^2;

sbit S6=P1^3;

sbit lcdcs=P3^0;

unsigned char comd,kk,sdf,ppca;

unsigned char virt_port,v,b,m;

unsigned char lcd_data_count;

unsigned char *lcdpoint;

unsigned char qqq;

unsigned char data8;

unsigned int i;

//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------

void main(void){

WDTCN = 0xde; // disable watchdog timer

WDTCN = 0xad;

SYSCLK_Init ();

PORT_Init ();

UART0_Init() ; // initialize crossbar and GPIO

SPI0_Init ();

LCD_Init() ;

delaynms (20);

delaynus (100);

LCD_set_xy(0X00,0);

delaynus (200);

presskey();

delaynus (200);

LCD_write_string(16);

delaynus (200);

while(1)

{

if(S3==0)

{

Write_COM(0X01);

delaynms (200);

LCD_set_xy(0X00,0);

delaynus (200);

lcd_key1();

delaynus (200);

LCD_write_string(6);

delaynus (200);

}

else if(S4==0)

{

Write_COM(0X01);

delaynms (200);

LCD_set_xy(0X00,0);

delaynus (200);

lcd_key2();

delaynus (200);

LCD_write_string(6);

delaynus (200);

}

else if(S5==0)

{

Write_COM(0X01);

delaynms (200);

LCD_set_xy(0X00,0);

delaynus (200);

lcd_key3();

delaynus (200);

LCD_write_string(6);

delaynus (200);

}

else if(S6==0)

{

Write_COM(0X01);

delaynms (200);

LCD_set_xy(0X00,0);

delaynus (200);

lcd_key4();

delaynus (200);

LCD_write_string(6);

delaynus (200);

}

else

{

}

}

}

//-----------------------------------------------------------------------------

// Initialization Subroutines

//-----------------------------------------------------------------------------

//-----------------------------------------------------------------------------

// PORT_Init

//-----------------------------------------------------------------------------

void PORT_Init (void)

{

XBR0 = 0x27; // XBAR0: Initial Reset Value

XBR1 = 0x00; // XBAR1: Initial Reset Value

XBR2 = 0x5c; // XBAR2: Initial Reset Value

PRT0CF = 0x14; // Output configuration for P0

PRT1CF = 0x10; // Output configuration for P3

PRT3CF = 0x01; // Output configuration for P3

}

//-----------------------------------------------------------------------------

// SYSCLK_Init

//-----------------------------------------------------------------------------

void SYSCLK_Init (void)

{

OSCXCN = 0x67; // start external oscillator with

for (i=0; i < 256; i++) ; // XTLVLD blanking interval (>1ms)

while (!(OSCXCN & 0x80)) ; // Wait for crystal osc. to settle

OSCICN = 0x88; // select external oscillator as SYSCLK }

//-----------------------------------------------------------------------------

// SPI0_Init

//-----------------------------------------------------------------------------

void SPI0_Init (void)

{

SPI0CFG = 0x07; // data sampled on 1st SCK rising edge SPI0CFG|=0xC0; //CKPOL =1;

SPI0CN = 0x03; // Master mode; SPI enabled; flags

SPI0CKR = SYSCLK/2/2000000-1; // SPI clock <= 8MHz (limited by

// EEPROM spec.)

}

//-----------------------------------------------------------------------------

// UART0_Init

//-----------------------------------------------------------------------------

void UART0_Init (void)

{

SCON = 0x50; // SCON: mode 1, 8-bit UART, enable RX TMOD = 0x20; // TMOD: timer 1, mode 2, 8-bit reload TH1 = -(SYSCLK/BAUDRATE/16); // set Timer1 reload value for baudrate TR1 = 1; // start Timer1

CKCON |= 0x10; // Timer1 uses SYSCLK as time base

PCON |= 0x80; // SMOD = 1

TI = 1; // Indicate TX ready

}

//-----------------------------------------------------------------------------

// LCD_Init

//-----------------------------------------------------------------------------

void LCD_Init(void) //向LCD送命令

{

// unsigned int xdata x;

delaynms(100);

datad=0x00;

SendSPIByte(datad);

delaynms(10);

Write_COM(0x30);

delaynms(10);

Write_COM(0x30);

delaynms(10);

Write_COM(0x30);

delaynms(10) ;

Write_COM(0x28);

delaynms(100);

virt_port=0;

SendSPIByte(virt_port);

lcden(virt_port);

Write_COM(0x01);

delaynms(100);

Write_COM(0x06);

delaynms(10) ;

Write_COM(0x0C);

delaynms(500) ;

}

//----------------------------------------------------------------------------- // SendSPIByte

//----------------------------------------------------------------------------- void SendSPIByte(unsigned char ch)

{ lcdcs=1;

delaynus(100);

SPIF = 0;

SPI0DAT = ch;

while (SPIF == 0);

delaynus(100);

lcdcs=0;

delaynus(100);

_nop_(); // 等待写结束

}

//----------------------------------------------------------------------------- // lcden

//----------------------------------------------------------------------------- void lcden(datad)

{

datad|=0x08;

SendSPIByte(datad);

datad&=0xf7;

SendSPIByte(datad);

}

//----------------------------------------------------------------------------- // delaynms

//----------------------------------------------------------------------------- void delaynms (unsigned int uu)

{

unsigned int oo,ll;

for (oo=0;oo

{

for(ll=0;ll<1140;ll++);

}

}

//----------------------------------------------------------------------------- // writechar

//----------------------------------------------------------------------------- void writechar(unsigned char ua)

{

uint j;

uchar t,x;

for(j=0;j<500;j++);

datad|=0x02;

SendSPIByte(datad);

datad|=ua&0xf0;

SendSPIByte(datad);

datad|=0x08;

SendSPIByte(datad);

for(x=0;x<3;x++);

datad&=0xf7;

SendSPIByte(datad);

for(x=0;x<3;x++);

datad&=0x07;

delaynus(100);

SendSPIByte(virt_port);

t|=ua&0x0f;

datad|=t<<4;

SendSPIByte(datad);

for(x=0;x<3;x++);

datad|=0x08;

SendSPIByte(datad);

for(x=0;x<3;x++);

datad&=0xf7;

SendSPIByte(datad);

for(x=0;x<3;x++);

datad=0x00;

t=0x00;

SendSPIByte(datad);

}

//----------------------------------------------------------------------------- // Write_COM

//----------------------------------------------------------------------------- void Write_COM(uchar ins)

{

uchar t;

uint j;

for(j=0;j<5000;j++); //用延时代替查询

virt_port|=ins&0xf0;

SendSPIByte(virt_port);

//LCDE=1;

virt_port|=0x08;

SendSPIByte(virt_port);

for(i=3;i>0;i--);

virt_port&=~0x08;

SendSPIByte(virt_port);

virt_port&=0x07;

SendSPIByte(virt_port);

t=ins<<4;

virt_port|=t&0xf0;

SendSPIByte(virt_port);

virt_port|=0x08;

SendSPIByte(virt_port);

for(i=3;i>0;i--);

virt_port&=~0x08;

SendSPIByte(virt_port);

virt_port=0;

SendSPIByte(virt_port);

}

//-----------------------------------------------------------------------------

// LCD_set_xy

//-----------------------------------------------------------------------------

void LCD_set_xy( unsigned char x, unsigned char y )

{

unsigned char address;

if (y == 0) address = 0x80 + x;

else

address = 0xc0 + x;

Write_COM(address);

}

//-----------------------------------------------------------------------------

// LCD_write_string

//-----------------------------------------------------------------------------

void LCD_write_string(unsigned char n)

{

unsigned char data1;

for(n;n>0;n--)

{

data1=*lcdpoint;

writechar(data1);

delaynms(100);

lcdpoint++;

delaynus(10);

}

}

//-----------------------------------------------------------------------------

// presskey

//-----------------------------------------------------------------------------

void presskey(void)

{

unsigned char xdata DDCdata[16]={0x50,0x4c,0x45,0x41,0x53,0x45,0x20,0x50,0x52,0x45,0x53,0x53,0x20,0x4b,0x4 5,0x59};

lcdpoint=&DDCdata;

}

//-----------------------------------------------------------------------------

// lcd_key1

//-----------------------------------------------------------------------------

void lcd_key1(void)

{

unsigned char xdata key1ok[6]={0x53,0x33,0x20,0x4f,0x4b,0x21};

lcdpoint=&key1ok;

}

//-----------------------------------------------------------------------------

// lcd_key2

//-----------------------------------------------------------------------------

void lcd_key2(void)

{

unsigned char xdata key2ok[6]={0x53,0x34,0x20,0x4f,0x4b,0x21};

lcdpoint=&key2ok;

}

//-----------------------------------------------------------------------------

// lcd_key3

//-----------------------------------------------------------------------------

void lcd_key3(void)

{

unsigned char xdata key3ok[6]={0x53,0x35,0x20,0x4f,0x4b,0x21};

lcdpoint=&key3ok;

}

//-----------------------------------------------------------------------------

// lcd_key4

//-----------------------------------------------------------------------------

void lcd_key4(void)

{

unsigned char xdata key4ok[6]={0x53,0x36,0x20,0x4f,0x4b,0x21};

lcdpoint=&key4ok;

}

//-----------------------------------------------------------------------------

// delaynus

//-----------------------------------------------------------------------------

void delaynus(unsigned int q) //N us延时函数

{

for (i=0;i

{

_nop_();

}

}

本程序已经完全调试通过,欢迎参考。

触摸感应按键设计指南

触摸感应按键设计指南 张伟林 2009-12-09 sales@soujet.com http://www.soujet.com

1. 概述 对触摸屏与触摸按键在手机中的设计与应用进行介绍,对设计的经验数据进行总结。达到设计资料和经验的共享,避免低级错误的重复发生。 2. 触摸按键设计指导 2.1 触摸按键的功能与原理 2.1.1触摸按键的功能 触摸按键起keypad 的作用。与keypad 不同的是,keypad 通过开关或metaldome 的通断发挥作用,触摸按键通过检测电容的变化,经过触摸按键集成芯片处理后,输出开关的通断信号。 2.1.2触摸按键的原理 如下图,是触摸按键的工作原理。在任何两个导电的物体之间都存在电容,电容的大小与介质的导电性质、极板的大小与导电性质、极板周围是否存在导电物质等有关。PCB 板(或者FPC )之间两块露铜区域就是电容的两个极板,等于一个电容器。当人体的手指接近PCB 时,由于人体的导电性,会改变电容的大小。触摸按键芯片检测到电容值大幅升高后,输出开关信号。 在触摸按键PCB 上,存在电容极板、地、走线、隔离区等,组成触摸按键的电容环境,如下图所示。 Finger Time Capacitance C

2.1.3 触摸按键的按键形式 触摸按键可以组成以下几种按键 z单个按键 z条状按键(包括环状按键) z块状按键 单个按键 条状按键块状按键 2.1.4触摸按键的电气原理图如下:

在PCB板上的露铜区域组成电容器,即触摸按键传感器。传感器的信号输入芯片,芯片经过检测并计算后,输出开关信号并控制灯照亮与否。灯构成触摸按键的背光源。 2.2 触摸按键的尺寸设计 按键可以是圆形、矩形、椭圆形或者任何其他的形状。其中以矩形和圆形应用最为普遍,如图所示: 通常在按键的中间挖空,使PCB下方的光线可以通过挖空导到PCB上方,照亮LENS上的字符。根据ADI公司的推荐,按键大小尺寸如下表: 按键的挖空尺寸与按键的大小相关,如下表

ADP 触摸屏说明书

HITECH系列触摸屏ADP6软件使用说明 ADP6软件采用“所见即所得”、“对象导向”理念,实现“拖曳式”编辑。 一、建立新的工程文件 点击菜单中文件→新建或点击快捷工具栏中的打开新文件图标,弹出工作参数对话框,选择人机界面种类和PLC种类(视使用的人机和PLC种类选择,本训练使用PWS6600 Color标准型和Simatic S7200 PPI),其他内容默认。新文件建立之后“确定”即可进入画面编辑。 图1 设定工作参数 二、画面编辑 当前画面为画面1,如需要设计多画面,在菜单中点击画面→新建画面,弹出产生新画面对话框,增加画面2,可以填写画面名称,确定后即为当前画面,其他画面依此方法操作。通过点击画面→画面管理员,显示画面大纲,双击某画面或选中后使用右键弹出菜单→开启画面就可设为当前画面,也可使用快捷按钮在上下画面间切换。 单击查看→放大画面,选择一定比例使画面大小合适。 在HITECH系列触摸屏中,可使用的画面元件有下列几类: ①可触摸元件指在画面上定义的按钮(开关)、切换画面的按键,这些元件一般兼有可触摸功能、数据输入功能和显示功能。

②状态显示元件指在画面上定义的状态灯(指示器)、动态字符信息显示等,触摸这些元件时系统没有反应,仅仅被用作信号的运行状态显示。 ③动态资料及人机记录缓冲区显示元件指在画面上定义的图表(棒图、折线图、圆形图、仪表盘、条形统计图、圆形统计图、折线统计图)或人机界面使用PLC内存作记录缓冲区状态显示元件(历史趋势图、表)。 ④静态显示元件指在画面上定义的静态文字、静态图形(直线、圆、矩形、文字等)背景元件,不受PLC程序控制。 除静态显示元件外,画面元件和PLC控制程序相关,画面元件地址为PLC 内部存储器(位)、变量存储器(字、双字)地址,并出现在PLC程序中,可触摸元件为输入元件,其他为输出元件。 (1)按钮 功能 设ON按钮:按一次对应接点设为ON,手放开或再按仍为ON。 设OFF按钮:按一次对应接点设为OFF,手放开或再按仍为OFF。 交替型按钮:按一次按钮该接点设为ON,手放开仍为ON;再按一次OFF。 保持型按钮:按住此按钮该接点ON,手放开OFF。 复状态按钮:如此按钮有3个状态,按一次按钮送 S0 信号给PLC,再按一次按钮送 S1 信号给PLC,再按一次按钮送 S2信号给PLC,此按钮 可正循环动作(S0→S1→S2→S0)或反循环动作(S0→S2→S1→S0)。 状态数最多可达256个。 设值按钮:触摸此按钮,人机马上就送出指定的常数值给PLC相对应之缓存器。加/减值按钮:触摸此按钮,人机马上先从PLC读取缓存器的内容值并加/减所设数值,再将运算结果写至PLC相对应之缓存器。 换画面按钮:按一次该按钮,人机直接切换到指定画面。属性中—“指定生效位” →当指定的位条件成立才能换页。“认知警报”→表示人机已经收 到目前所发生的警报讯息。“通知”→换画面的同时,触发一接点。回前一画面:按一次该按钮,人机就切换回屏幕先前一次显示的画面。 数据转文字文件:可将记录缓冲区,配方数据,警报历史文件,警报频次文件等数据转成文字文件(*.PRN)存档,亦可由EXCEL,WORD,记事本等 文书软件读出。(SoftPanel 才提供) 功能按钮:在功能键中包含下列17种选项,从对比度上升到执行应用程序等。 对比度上升按该按钮,人机屏幕对比增加。(SoftPanel 不提供) 对比度下降按该按钮,人机屏幕对比减少。(SoftPanel 不提供) 保存对比度按该按钮,人机储存对比。(SoftPanel 不提供) 密码表按一次该按钮,人机就显示系统密码表的窗口。LEVEL=1才能操作。 重新输入密码按一次该按钮,人机就显示重新输入密码的窗口。 设为最低用户等级按一次该按钮,人机系统就切换为密码最低等级 LEVEL=3。 打印画面按一次该按钮,人机就会打印实际应用时此画面的指定打 印区域(HARDCOPY方式)。 回系统目录按一次该按钮,人机就切换回到系统目录画面。LEVEL=1 才能操作。 关闭背灯按一次该按钮,人机就关闭屏幕背灯。(SoftPanel 不提

触摸屏按键说明

HGT833屏幕按钮 Key1 机械手使用/不使用。(当不使用时,欧规信号全部给出,注塑机可以不受机械手信号影响,使用时欧规信号按设定给出,注塑机运行受到机械手的信号的影响。另外,如果需要重置欧规信号输出,可将机械手使用/不使用按钮开关一次。此外还应注意,当机械手和注塑机配合时,要做到:退出自动运行先停注塑机,开始自动运行先开注塑机,可避免注塑机和机械手配合上的时序问题照成的一系列问题) Key2 机械手自动与手动切换。(在手动模式下,按此按钮,机械手准备进入自动运行状态,一切手动操作都将锁定,等待机械手自动开始。在自动运行下,按此按钮退出自动运行并切换到手动模式。) Key3 机械手自动运行开始。(在机械手在等待自动开始时,按此按钮,机械手进入自动运行状态,也就是key2被按下后,按此按钮进入自动运行) Key4 机械手退出自动运行/页面帮助。(当机械手处于自动运行时,按此按钮机械手将退出自动云行,并切换到手动状态;当机械手处于非自动状态时,按此按钮则可显示当前页面的帮助信息,如果key4按钮灯亮则说明此页面有帮助信息,反之没有) Key5 机械手常用IO信号监控。(监控欧规信号,备用IO,吸盘夹具,功能输入输出等)

Key6 机械手复归。(按下此按钮,机械手进入复归模式;当按下急停按钮后,双击此按钮,系统进入触摸屏校准程序;当出现被零除(DIVIDE BY ZERO)错误时,按下急停按钮,并双击此按钮消除这个错误) Key7 单步运行。(当机械手在单步运行模式下,按一次此按钮进行一步动作。一步动作指教导中的一个图标动作。) Key8 切换到单步运行模式。(当系统在自动运行模式下,按此按钮,系统可切换到单步运行模式) Key9 重置吸盘夹具。(按此按钮,将显示需要重置的吸盘夹具,客户可选择需要重置的吸盘夹具) Key10 快速进入教导模式。

电容式触控电路设计的七个步骤

电容式触控电路设计的七个步骤 文章来自赣州宇辉仪器设备有限公司https://www.wendangku.net/doc/2a13634299.html, 中心议题: 电容式触控电路设计的七个步骤 电容式触控技术在厨房设备中的应用已经有几年了,例如在烤箱和煎锅的不透明玻璃面板后面采用分离按键实现。这些触摸控制键逐渐替代了机械按键,因为后者具有使用寿命短、不够卫生等方面的问题,而且还有在面板上开孔安装按键的相关成本,图1是电容式感应技术原理示意图。 图1 技术原理示意图 电容式感应技术由于具有耐用、较易于低成本实现等特点,而逐渐成为触摸控制的首选技术。此外,由于具有可扩展性,该技术还可以提供其它技术所不能实现的用户功能。在显示屏上以软按键方式提供用户界面,这通常被称为触摸屏。 触摸输入滚动/指示功能器件,例如iPod音乐播放器上的点击式转盘,这类器件在消费市场已经获得广泛的认可,正在逐渐出现在更多的消费设备市场。有两种基本类型的滚动器件:第一种是绝对报告类型,提供直接位置输出报告;另外一种是相对类型,这类器件提供用来增加或减少某个值的直接报告。 使用电容式感应的IC设计感应开关电路板与其它电路的开发流程略有不同,因为电容式开关的设计上会受到机构与其它电路设计上的影响,会有比较多的调整程序,所以需要一个比较复杂的开发流程,现就以出道较早且具有代表性的“Quantum ”产品的开发流程及要点介绍给大家,希望对需要的朋友有所帮助。 1.机构设计 a.面板的材质必须是塑胶,玻璃,等非导电物质。 b. 在机构设计阶段同时也必需设计操作流程,以选择合适的产品,如果是按键的产品,要考虑是否有复合按键的设计,或是综合滑动操作及按键操作等,如果

是以滑动操作的产品,就必须考虑是否需要切割出按键。 c.由於感应电极与面板接触点之间不能有空隙,所以机构设计上必须考虑将感应验路板直接黏贴在外壳面板的内侧,以及考虑面板的组装方式。 d.同样的,感应电极与手指之间不能有金属层夹在中间,所以面板上不可以有金属电镀及含金属超过15%的喷漆等会形成导电层的设计。 e.如果必须电镀或高金属含量漆,请在按键区域的边缘保留一圈不要电镀或喷漆,用以隔绝其他感应开关。 f.如果面板是有弧度而非平面,可以利用软板、弹簧、导电橡皮等导电物将感应电极延伸到面板上,并在面板内侧制造出感应电极,如果面板与感应电极之间有空隙也可以用这个方式填补空隙,或加厚感应电极区域的面板。 g.机构设计的外壳厚度会影响感应电极的大小,所以必须先完成机构设计,才能接续开发流程。 h.如果感应电路板後面有大片金属或电路板,必须保留若干空隙,以避免灵敏度降低或干扰感应电极,如果是金属板,金属板必须接地,空隙保留至少0.3mm 以上,如果是电路板,尽量减少高频电路经过,并保留至少1.0mm的空隙。 i.有上述状况的感应电路板,虽然保留了足够的间距,最好能将感应电极再加大,以利後续调整灵敏度的步骤。 j.感应电极可以用电路板铜箔来做,亦可以采用FPC软性电路板,ITO蚀ORGACON (CARBON)印刷等导电物质。 2. 决定感应电极的尺寸 a. 依照机构设计的面板厚度决定感应电极的最小尺寸,面板厚度1mm时感应电极最小3mm直径的圆,面板厚度7mm时感应电极最小10mm直径的圆,在机构及电路板空间的允许下尽量将感应电极加大。

触摸按键设计参考

由于实际应用中,触摸按键基本都需要覆盖层,该文档默认电路设计中都存在覆盖层。 一、走线 在工艺允许情况下,尽可能细和短,和LED等驱动线若出现交叉,尽可能90度交叉,避免近距离平行。尽可能避免过孔。高速信号线同样尽量远离触摸传感器走线,若出现交叉尽量垂直交叉,使用地线与高速信号线进行耦合,避免高速信号线与触摸传感器走线产生耦合。建议触摸按键的直径(边长)在15mm,最好不低于10mm 二、覆盖层材料 覆盖层的厚薄是影响触摸按键效果的重要因素,过厚的覆盖层会影响电容变化率,建议在条件允许的情况尽可能的薄,建议不应超过3mm,在覆盖层比较厚的情况,可以在触摸按键上方开槽填充导电泡沫和垫片等材料。高介电常数的覆盖材料比低介电常数灵敏度更高,但是高介电常数的覆盖层更容易带来串扰,特别是触摸传感器距离较近的情况下。覆盖层和触摸按键之间尽可能避免存在空气,否则会导致介电常数大幅减小,1mm的气隙会导致灵敏度下降1/4~1/2,有可能的情况,尽可能使用粘合剂把覆盖层和PCB粘合好。如果触摸按键之间距离过近,为避免串扰,可以考虑在相邻触摸按键的中部开气隙槽。一般情况下,不建议使用导电覆盖层。 三、主动屏蔽 主动屏蔽能够减少近距离时各个按键之间串扰、寄生电容和其他走线引发的干扰。主动屏蔽线在按键周围走线建议宽度不小于1mm,屏蔽线与按键的建议间距2~3mm。在按键与芯片引脚之间连接线附近,屏蔽线的宽度可与连接线保持一致,间隔可以缩短至0.5mm。 四、电源处理 PCB接地时,因为和人体形成共地回路,触摸效果要比不接地时好。尽可能采用更高的VDD供电。如果没有覆盖层情况下,需要考虑ESD。 五、软件处理 触摸按键必然会引入抖动和噪声,建议在MCU资源允许情况下引入软件二次处理,软件处理方法较多,有针对工频干扰的工频周期采样平均法,针对毛刺的压摆率限流器滤波等。还有较为复杂的数字滤波器等。 工频周期采样平均——若每个工频周期采样次数设置为10次,则利用定时器每2ms触发一次单个或多个通道采样,把采样结果累加平均。

触摸屏说明书

触摸屏使用方法: 触摸区控制是与按钮控件结合在一起的,根据用户在配套软件中的按钮控件设置,当用户点击在该按钮触摸区处时,可指定连接下一页面、发送控件ID 号或者发送坐标值。用户点击在非按钮触摸区时,人机界面终端将不进行任何操作。 发送控件ID号时,前2个字节为“FC FC”为数据帧头,表示发送的数据为触摸屏数据,后面2个字节为控件ID号,低字节在前,高字节在后。 发送坐标值时,前2个字节为“FE FE”为数据帧头,表示发送的数据为触摸屏数据;后面4个字节为触摸屏x、y坐标数据,x坐标在前,y坐标在后,同样低字节在前,高字节在后。 若多层显示时,触摸区控制操作页面默认的是最近一次进行调用操作的页面,此时如果想激活其它的页面,则使用1B 33指令进行操作页面更改。 触摸屏所点之处都有鼠标显示,如果不想显示,可用命令1B 30 00 FF FF EE FF 关掉显示。 触摸屏模式选择命令 格式∶十六进制码∶ 1B 20 MODE FF FF EE FF 解释:1B:为命令帧头,20:为命令。MODE:为模式选择值,一个BYTE。 FF FF EE FF为帧结束。 MODE:0x00:表示单点触发,即按下触摸屏到抬起时只发送一次触摸屏通码 数值,抬起时无断码发送。 0x01:表示单点触发,即按下触摸屏到抬起时只发送一次触摸屏通码 数值,抬起时有断码发送。

如果在上位机按钮控件属性设置中设置为返回控件ID号,断码 为:FC F0 ID;ID为一个WORD,低字节在前高字节在后。 如果在上位机按钮控件属性设置中设置为返回当前点击的坐标 值,断码为:FE F0 X Y ;X,Y均为一个WORD,低字节在前高 字节在后。 0x02:表示连续触发,即按下触摸屏后一直不停地发送触摸屏数值,直到抬起,抬起时无断码发送。发送的每组触摸屏数据之间的 时间间隔可以用命令来控制,命令详见“发送触摸屏数据时间 间隔设置命令”。 0x03:表示连续触发,即按下触摸屏后一直不停地发送触摸屏数值,直到抬起,抬起时有断码发送。 如果在上位机按钮控件属性设置中设置为返回控件ID号,断码 为:FC F0 ID;ID为一个WORD,低字节在前高字节在后。 如果在上位机按钮控件属性设置中设置为返回当前点击的坐标 值,断码为:FE F0 X Y ;X,Y均为一个WORD,低字节在前高 字节在后。 发送的每组触摸屏数据之间的时间间隔可以用命令来控制, 命令详见“发送触摸屏数据时间间隔设置命令”。 例:选择触摸屏模式为单点触发不发送断码值(初始化为这种模式):1B 20 00 FF FF EE FF

电容式触摸按键设计指南

Capacitive Touch Sensor Design Guide October 16, 2008 Copyright ? 2007-2008 Yured International Co., Ltd.1YU-TECH-0002-012-1

(3) (3) (5) (9) (11) (11) (17) (20) Copyright ? 2007-2008 Yured International Co., Ltd.2YU-TECH-0002-012-1

Copyright ? 2007-2008 Yured International Co., Ltd.3 YU-TECH-0002-012-1 1. 2. ( ) 3M 468MP NITTO 500 818

Copyright ? 2007-2008 Yured International Co., Ltd.4 YU-TECH-0002-012-1 3. 4. Front Panel Sensor Pad Sensor Pad Electroplating Or Spray Paint Nothing

Copyright ? 2007-2008 Yured International Co., Ltd.5 YU-TECH-0002-012-1 1. (FPC) ITO (Membrane) ITO ITO ( 10K ) FPC ITO MEMBRANE PCB

Copyright ? 2007-2008 Yured International Co., Ltd.6 YU-TECH-0002-012-1 2.ITO LCD ITO ( 10K ) 3. 1mm 8mm ( 8mm X 8mm ) 1mm 8mm X 8mm 2mm 10mm X 10mm 3mm 12mm X 12mm 4mm 15mm X 15mm 5mm 18mm X 18mm ( ) 196.85 mil (5mm) 0.254mm(10mil) 2mm 5mm 2mm

触摸屏使用说明书

电炉触摸屏使用说明书 ( M T4500T型)

一.前言 随着国民经济和社会科学的不断发展,特别是计算机技术、信息采集技术的日新月异,使得与之相关的自动控制技术日趋智能化、网络化、成熟化,它以自身的高可靠性、高精确度及高效率等特点为众多企业所重视并加以采用,在各行各业中发挥着巨大作用。 根据冶金行业的冶炼设备的发展,触摸屏式的人机对话方式已经获得广大使用者的青睐,它以生动的直观,快捷,准确的方式将设备的工作状态传递给操作人员,及操作人员又能迅速的将控制指令传递给使用的设备,使得操作过程显得简洁,易控. 我公司尊着用户至上技术第一的原则,以将这一先进技术应用到去本公司的大部分产品.欢迎广大用户使用. 二.简介 2.1本公司采用的触摸屏型号有M T4500T和M T510T两种.操作方法大同小异.本书主要介绍M T4500T的使用方法 2.2该型号的触摸屏共设计有九个画面. 1):启始画面. 2):主画面. 3)历史趋势图. 4)时实趋势图. 5)高压柜和变压器. 6)液压站. 7)事件画面. 8)报警画面. 9)仪表板. 当然还可以根据用户的要求增加和减少.下面将一一介绍各画面的功能,怎样进入,和操作. 三操作方法

3.1当由维修人员给设备接通电源后,触摸屏即被点亮,出现在你面前的就是启始画面,该画面功能就是问候你及本公司业绩照片.还有一个功能健,上写有”到主画面”.你按下该键即可进入主画面.还有一种进入各画面的方法,就是请触摸”菜单”键,即可出现f a s t s e l e c t i o n画面中文意思是快速选择画面.上有八个键你按哪个键即可进入那个键上所写的画面,你按下”到主画面”键就也进入主画面.当然你要再按一下”菜单”键屏幕即可恢复. 3.2进入主画面后你就可以看到眼花缭乱的画面,没关系介绍后你很快就会明白 该画面是全部画面的中心,从它基本上可以监测到电炉的所有状态,报警信息及各种数据,并设定各种数据及控制油泵启停.又从它可以快速的进入到其它画面,并可快速返回.是设备运行中始终打开的画面. 1)首先是左上部分:写有”炉体动作态”下面有诺干个红色长方 块主要是用来监视设备动作上写有炉体和设备的各种状态的. 当炉体和设备改变时它就会呈现出绿色并告诉你现处于的状态. 列如1#电极没到顶时显示紫红色写有”1#电极状态”,当到顶 时就呈现出绿色,并告诉你”1#电极到顶”. 2)中间上部分:写有”分合闸显示”,”档位显示”,当高压柜处 于分闸状态时显示绿色灯及告诉你以分闸,当处于合闸状态时 显示红灯,及告诉你高压以合.档位显示是告诉你目前变压器所 处在的档位位置,如在2档就在一个黄灯上显示”2档”. 3)右上部分:写有”故障报警”,这部分是显示你的设备发生了故 障并告诉你是什么故障,是否跳闸,如发生了重瓦斯,这时就会 呈现出红色写的”重瓦斯”.并提示你跳闸.如故障消除按下消 警按钮即可恢复. 4)中间靠左部分:是弧压显示,非灵敏度设定及显示功能.三个绿 色棒图分别显示三相电极的弧压,最左边有刻度指示0V-300V 绿色填充到达哪个刻度该相电压就是那个刻度表示的电压.该 棒图的顶端也有数字显示时实弧压值.紫色棒图是显示非灵敏 度的大小,旁边有一刻度0-20,和一个数字键是用来设定非灵

触摸芯片稳定性的测试方法

触摸芯片稳定性的测试方法 关键词:触摸感应,误动作、可靠性测试。 (一)引言 触摸感应的操作面板因为其坚固、耐磨损、可以绝缘、隔尘、隔水,而且外观美观新颖而迅速在很多领域被应用,成为近年的热门技术。但很多采用了触摸感应面板的产品都遇到了诸如生产调试困难,触摸感应面板工作不稳定,在潮湿,强干扰环境下容易误动,造成客户退货的难题。 (二)问题 生产调试困难,无法上批量生产。触摸感应面板工作不稳定。在潮湿,强干扰环境下容易误动,造成客户退货。产品长期工作稳定性差,生产线调试好的产品,经过运输或长期工作以后灵敏度变化或经常误动而增加了很大的售后成本。 这些原因造成了很多厂家既希望采用这一新技术,又对采用了这个技术的产品是否能稳定工作心存疑虑。因为触摸感应面板简单的试用往往无法发现有什么不妥。经常要等到发货后顾客使用一段时间才会出现形形色色的问题。这时不可避免的会给厂家带来成本和声誉上的损失。 顾客遇到触摸感应面板的突出问题就是灵敏度和可靠性(无误动)各种环境下很难保持稳定,尤其是长期工作的情况。 (三)问题分析 触摸感应面板目前主流的技术是采用电容感应技术来实现。因为手指在感应盘上带来的电容变化极小,而且随着隔离的绝缘面板厚度增加,电容的大小会成指数降低。大概隔5mm 的钢化玻璃后,人的手指触摸只能带来不到0.5PF的电容变化。对于这样微小的测量量,湿度、温度的变化、电磁干扰、电源干扰等都会极大的影响测量电路的测量结果。如果没有特

殊、专业的处理办法很难保证触摸感应面板的工作稳定尤其是各种恶劣环境下的长期稳定性。 现在提供触摸感应芯片和方案的公司较多,他们的水平参差不齐。技术水平高的公司可以解决触摸感应面板设计的难点问题。有些公司提供的芯片和方案宣传作的很好,东西也较便宜,但产品却只能保证“能动”。如果没有经过仔细的验证很难保证顾客在各种使用环境下不会出问题。 我们完成了一个带触摸感应面板的产品设计后,必须自己用贴近顾客使用环境且相对严格的测试方法进行反复、长时间测试来确保产品的可靠性。 (四)测试方法 电子产品尤其是家电类的产品出厂往往需要通过EMC,FCC,EFT 等测试。这些测试需要专业的设备,而且通过了这些测试的产品往往也不能保证在实际的应用环境下就可靠。我们总结出了一些可以模拟实际使用环境下验证触摸感应面板性能的办法,在研发和小批量试产的条件下就能对触摸感应面板的性能做到心中有数。希望能与大家共同分享。 (五)测试前的准备 固定和密封好的待测试触摸感应面板。 蒸汽熨斗或电水壶一个 喷水壶一个 冷柜或电冰箱一台 电烘箱或电吹风一台 40W 老式电抗型镇流器启辉器日光灯一套 GSM手机(NOKIA,或SONY ERICSON)一台 无线对讲机一台

触摸按键的检测方法及其终端设备的制作方法

本技术公开了一种触摸按键的检测方法及其终端设备,用于解决现有技术中终端设备的侧边需要额外设置电容传感器才能检测到侧压力按键是否被触摸的问题。所述终端设备包括侧压力按键、绝缘断点、电容处理模块和压力检测模块,其中:所述侧压力按键设置在所述终端设备的边框的内侧;所述绝缘断点在所述边框上截取的金属边框用于检测所述侧压力按键被触摸时产生的电容变化值;所述金属边框与所述电容处理模块连接,所述电容处理模块与所述压力检测模块连接,所述电容处理模块用于在所述金属边框检测到的电容变化值大于或等于预设的触发阈值时,触发所述压力检测模块检测所述侧压力按键被触摸时产生的压力值。 技术要求 1.一种终端设备,其特征在于,包括侧压力按键、绝缘断点、电容处理模块和压力检测模块,其中: 所述侧压力按键设置在所述终端设备的边框的内侧; 所述绝缘断点设置在所述侧压力按键在所述边框上的投影区域的两端,所述绝缘断点在 所述边框上截取的金属边框用于检测所述侧压力按键被触摸时产生的电容变化值; 所述金属边框与所述电容处理模块连接,所述电容处理模块与所述压力检测模块连接, 所述电容处理模块用于在所述金属边框检测到的电容变化值大于或等于预设的触发阈值时,触发所述压力检测模块检测所述侧压力按键被触摸时产生的压力值。 2.如权利要求1所述的终端设备,其特征在于,所述终端设备还包括中央处理器,所述压力检测模块与所述中央处理器连接;

所述压力检测模块在检测到所述侧压力按键被触摸时产生的压力值大于或等于预设的压力阈值时,将所述侧压力按键被触摸的信号发送给所述中央处理器; 所述中央处理器用于基于所述侧压力按键被触摸的信号确定并处理对应的按键事件。 3.如权利要求1所述的终端设备,其特征在于,所述电容处理模块通过通用输入输出GPIO 线路与所述压力检测模块连接; 所述电容处理模块在所述金属边框检测到的电容变化值大于或等于所述预设的触发阈值时,将所述侧压力按键被触摸的信号通过所述GPIO线路发送给所述压力检测模块,以触发所述压力检测模块检测所述侧压力按键被触摸时产生的压力值。 4.如权利要求1~3中任一所述的终端设备,其特征在于,所述侧压力按键按照至上到下的排布包括第一按键、第二按键和第三按键; 所述绝缘断点包括第一绝缘断点和第二绝缘断点,所述第一绝缘断点设置在所述第一按键在所述边框上的投影区域的上端,所述第二绝缘断点设置在所述第三按键在所述边框上的投影区域的下端。 5.如权利要求4所述的终端设备,其特征在于,所述绝缘断点还包括第三绝缘断点和第四绝缘断点; 所述第三绝缘断点设置在所述第一按键在所述边框上的投影区域的上端,所述第四绝缘断点设置在所述第一按键和所述第二按键之间的间隔区域在所述边框上的投影区域。6.如权利要求5所述的终端设备,其特征在于, 第一金属边框用于检测所述第一按键被触摸时产生的电容变化值,所述第一金属边框为所述第一绝缘断点和所述第三绝缘断点在所述边框上截取的金属边框; 第二金属边框用于检测所述第二按键被触摸时产生的电容变化值,所述第二金属边框为所述第三绝缘断点和所述第四绝缘断点在所述边框上截取的金属边框; 第三金属边框用于检测所述第三按键被触摸时产生的电容变化值,所述第三金属边框为所述第二绝缘断点和所述第四绝缘断点在所述边框上截取的金属边框。

触摸按键测试方法

触摸按键测试工具Demo Board 介绍 文件编码文件编码::HA0HA0145145145s s 简介 在使用HOLTEK 触控按键系列IC (如HT45R34、HT45R36、HT45R38等)时,经常需要知道触摸按键感应量的变化值,以便调整按键的灵敏度,为了方便用户将触控程序烧入IC 之后,观察触摸按键感应量的变化值,我们特设计此DEMO BOARD 供用户使用。 此DEMO BOARD 主要功能是将用户发送的数据显示出来,为了方便用户进行通讯,我们也给出了与DEMO BOARD 相对应的发送程序。 此DEMO BOARD 用HT48R10A-1 MCU 来设计。 HT48R10A-1是HOLTEK 公司开发的8-BIT MCU ,ROM 为1K 、RAM 为64Byte 、21个I/O PORT 。 Demo Board 硬件方块图硬件方块图 方块图

硬件方块功能说明 主控芯片为HT48R10A-1 主控芯片作为SLAVE端,通过串行通讯从MASTER端获取显示数据 三个按键,用于设置工作模式以及显示值的切换 Display分为两部分。一部分由四位数码管组成,用于显示通过串行通讯所获取的数据。另一部分由四个LED组成,用于指示数码管当前显示的值的序号 电路说明 电路说明 电路图

电路设计说明 P1输入为DC 9V,经C6和C2滤波后送入7805的1脚,7805的3脚的输出为DC 5V给MCU供电;也可以通过V1和V2直接给MCU供电;还可以通过接口H2的PIN1和PIN5给MCU供电。三种供电方法任选一种即可。 C1、C3、C4、R1和R2组成MCU的RESET电路。 D1为四位数码管,用于显示通过串行通讯接收到的数据。DS0~DS3为LED,他们通过十六进制的格式来显示当前D1显示的值所对应的RC通道。 S1、S2、S3分别ADD键、DEC键、MODE键,用于设置显示的通道以及工作模式。 H2为串行通讯的接口,本项目的通讯采用CS、CLK、DATA三线通讯的方式,其中PC0对应CS、PC1对应CLK、PC2对应DATA,数据在CLK的下降沿被读取。 注意:当MCU的供电方式选择为P1输入DC9V供电或通过V1和V2直接给MCU供电时,H2的PIN1可不与被测版连接 通讯协议说明 串行通讯协议说明 本项目所采用的通讯协议为三线通讯协议,HT48R10A-1作为SLAVE端使用,其通讯格式如下: 数据总长度为24-bit,其中显示数据16-bit,显示通道8-bit。 数据传输为先传送16位需要显示的数据,再传送8位显示通道,传输方式均为低位在前(LSB)。 在8位的显示通道中,只有低四位有效,高四位要求与低四位保持一致,用于校验显示通道数据是否接收正确。 数据必须在下降沿准备好,即CLK下降沿数据有效。

老虎触屏控台说明书

Tiger Touch Operator’s Manual Version 3.0 1 控台设置 (8) 1.1 控台向导 (8) 1.2 连接 (12) 1.2.1主电源连接 (12) 1.2.2启动与关闭 (12) 1.2.3 连接DMX线 (12) 1.2.4连接一个VDU(视频显示器) (13) 1.2.5其他连接 (13) 1.3 使用触摸屏和VDU(视频显示器) (14) 1.3.1工作窗口 (14) 1.3.2 触摸屏菜单区 (16) 1.3.3 工具栏 (18) 1.3.6 按键功能配置文件 (21) 1.3.7 宏按键功能 (22) 1.3.8 Tiger Touch Titan的应用 (22) 1.4 读取和保存show (23) 1.4.1手动保存和加载 (23) 1.4.2自动保存 (24) 1.4.3 备份现有的文件在U盘 (25) 1.5 清除控制台 (25) 2.配接 (26) 2.1创建 (26) 2.1.1灯具选择按键 (26) 2.1.2 配接常规灯(Dimmer) (27) 2.1.3 配接电脑灯 (28) 2.1.4 Visualiser自动配接 (30) 2.2 编辑 (30) 2.2.1. 更改电脑灯的DMX地址 (30) 2.2.2 命名 (31) 2.2.3 查看配接 (32) 2.2.4灯具调换(Fixture Exchange) (33) 2.2.5 更新灯库文件 (34) 2.3 复制和移动 (34) 2.3.1 复制或移动配接的电脑灯 (34) 2.3.2 使用复制灯具 (35) 2.4 删除 (36) 2.4.1 删除一个已配接的电脑灯 (36) 2.5 高级选项 (36) 2.5.1 调换水平和垂直功能 (36) 2.5.2 反转属性 (37) 3. 控制常规灯和电脑灯 (38) 3.1 创建 (38) 3.1.1 选择灯具来控制 (38)

AN3236 STM8应用笔记 触摸按键设计(英文)

November 2013DocID17613 Rev 21/15 AN3236 Application note Guidelines to increase the number of touch sensing touchkeys Introduction The touch sensing libraries allow management of the following number of channels depending on the targeted device series : ? up to 24 channels when using devices from the STM32F0 and STM32F3 series.? up to 34 channels when using devices from the STM32L1 series.? up to 6 channels when using devices from the STM8L101 lines.? up to 20 channels when using devices from the STM8L151/152 and the STM8L162 lines.?up to 24 channels when using devices from the STM8S and STM8AF series. The guidelines detailed into this document aim to help designers to overcome channel number limitation. They describe tips and tricks to increase the number of touchkeys and/or to create a touchkey matrix by keeping the same targetted device.Table 1. Applicable products Type Applicable products Microcontrollers STM32F0 series, STM32F3 series, STM32L1 series, STM8L101 lines, STM8L151/152 lines, STM8L162 lines, STM8S series, STM8AF series. https://www.wendangku.net/doc/2a13634299.html,

触摸按键设计规范

cx电压从0开始充电,一直到v1 上图右边是一个最基本的触摸按键,中间圆形绿色的为铜(我们可以称之为按键),在这些按键中会引出一根导线与MAU相连,MAU通过这些导线来检测是否有按键按下,外围的绿色也是铜不过这些铜与GND大地相连,在按键和外围铜直接是空隙(空隙d)上图右边是左图的截面图,当没有手指接触时只有一个电容cp,,当有手指接触时,按键通过手指就形成了电容cf 二。硬件连接 电容式触摸按键原理 现阶段,随着电容式触摸按键在外形美观和使用寿命等方面都优于传统的机械按键,电容式触摸按键的应用领域也日益广泛,包括家电、消费电子、工业控制和移动设备等。本文就一种具体的电容式触摸开关芯片SJT5104介绍一下电容式触摸按键的基本工作原理和材料选择。 一工作原理 任何两个导电的物体之间都存在着感应电容,一个按键即一个焊盘与大地也可构成一个感应电容,在周围环境不变的情况下,该感应电容值是固定不变的微小值。当有人体手指靠近触摸按键时,人体手

指与大地构成的感应电容并联焊盘与大地构成的感应电容,会使总感应电容值增加。电容式触摸按键IC在检测到某个按键的感应电容值发生改变后,将输出某个按键被按下的确定信号。电容式触摸按键因为没有机械构造,所有的检测都是电量的微小变化,所以对各种干扰会更加敏感,因此触摸按键设计、触摸面板的设计以及触摸IC的选择都十分关键。 二触摸PAD设计 1. 触摸PAD材料 触摸PAD可以用PCB铜箔、金属片、平顶圆柱弹簧、导电棉、导电油墨、导电橡胶、导电玻璃的ITO层等。不管使用什么材料,按键感应盘必须紧密贴在面板上,中间不能有空气间隙。当用平顶圆柱弹簧时,触摸线和弹簧连接处的PCB,镂空铺地的直径应该稍大于弹簧的直径,保证弹簧即使被压缩到PCB板上,也不会接触到铺地。 2. 触摸PAD形状 原则上可以做成任意形状,中间可留孔或镂空。作者推荐做成边缘圆滑的形状,可以避免尖端放电效应。一般应用圆形和正方形较常见。 3. 触摸PAD面积大小 按键感应盘面积大小:最小4mm×4mm,最大30mm×30mm。实际面积大小根据灵敏度的需求而定,面积大小和灵敏度成正比。一般来说,

Usart-GPU触摸屏使用说明书

Usart-GPU触摸屏使用说明书 概述: ●支持2种模式:点阵模式和热区模式 ●热区模式支持隐藏热区,细线框、粗线框、细线凸凹按钮和粗线凸凹按钮5种模式,并 可自定义颜色,热区点击有反应 ●内部集成触摸屏校准界面,可方便调用 ●每屏支持32个热区,可以方便制作数字键盘 ●热区编号传出,方便编程; ●高密集触摸屏硬识别,优良的软件优化算法,识别流畅性好 第一部分:初次使用 第一步:拆箱,接线,上电,接GPUmaker请参考: Usart-GPU使用说明书: https://www.wendangku.net/doc/2a13634299.html,/share/link?shareid=1486551241&uk=3204894695 第二步:首次使用前,需要做液晶屏的校准:(大部分已经校准) 在GPUmake中输入:TPST(400,240); 点击"整体发送",串口屏进入校准界面 注:由于新品种的串口屏不是400X240的分辨率,因此TPST语句后面的数值应该改成TPST(320,240)或TPST(220,176)

依次点击屏幕4个角上的“+”号后, 校准完成,此时屏幕黑屏,校准完成! 观察串口传出的数据,在TPST 触摸屏校准时,串口是无任何数据传出的,校准完好,串口传出TPSET表示触摸屏设置完成; 【备注:】在单片机设置的程序,需要调用触摸屏校准这个功能时,可以按下步骤进行:

1、制作菜单:校准触摸屏; 2、用户点击进入,串口即发送:TPST(400,240);SPG(1); 其中,后面的SPG(1)为校准完后,触摸屏需要显示的界面,当然也可以直接使用DS语句显示汉字 3、串口等待,直到有数据输出,才表示串口屏校准完成;此时屏幕显示TPST语句后面的语句显示; 第四步:触摸测试: 此时界面进入: 注意4号按钮和8号按钮的区别,4号按钮是被按下的状态 当松开触摸后,串口传出: [BN:4] 表示4号按钮被按下;

触摸按键与触摸屏设计指导

触摸按键与触摸屏设计指导 徐国斌 2007-11-05 homerx@https://www.wendangku.net/doc/2a13634299.html, https://www.wendangku.net/doc/2a13634299.html,/mobilemd 目录: 1.概述 2.触摸按键设计指导 3.触摸屏设计指导 4.Lens Touch Panel设计指导 5.电容式Lens Touch Panel 6.附录:Psoc触摸按键问答

1. 概述 对触摸屏与触摸按键在手机中的设计与应用进行介绍,对设计的经验数据进行总结。达到设计资料和经验的共享,避免低级错误的重复发生。 2. 触摸按键设计指导 2.1 触摸按键的功能与原理 2.1.1触摸按键的功能 触摸按键起keypad 的作用。与keypad 不同的是,keypad 通过开关或metaldome 的通断发挥作用,触摸按键通过检测电容的变化,经过触摸按键集成芯片处理后,输出开关的通断信号。 2.1.2触摸按键的原理 如下图,是触摸按键的工作原理。在任何两个导电的物体之间都存在电容,电容的大小与介质的导电性质、极板的大小与导电性质、极板周围是否存在导电物质等有关。PCB 板(或者FPC )之间两块露铜区域就是电容的两个极板,等于一个电容器。当人体的手指接近PCB 时,由于人体的导电性,会改变电容的大小。触摸按键芯片检测到电容值大幅升高后,输出开关信号。 在触摸按键PCB 上,存在电容极板、地、走线、隔离区等,组成触摸按键的电容环境,如下图所示。 Finger Time Capacitance C

2.1.3 触摸按键的按键形式 触摸按键可以组成以下几种按键 z单个按键 z条状按键(包括环状按键) z块状按键 单个按键 条状按键块状按键 2.1.4触摸按键的电气原理图如下:

触摸屏设计界面操作说明2.33

触摸屏使用说明1.0 编译软件部分: (图一) 触摸屏界面设计软件,遵循的原则是实现用户最大限度的自定义系统。触摸屏设计界面由菜单、工具栏、资源管理区、设计区、属性栏五部分组成。其中工具栏又由指针、打开工程、保存、添加页、添加按钮、编译触摸屏数据、下载触摸屏数据、编译RF、和下载RF组成。 第一步:选择或新建一个页,然后再选择你需要添加的对象按钮。新添加了新页就必须马上在上面建立对象,如果建立多个空页只有最后一页有效。页建好后你随时可以在属性栏修改页的名称和背景颜色。 添加对象:选择工具栏或菜单里工程的添加按钮,然后再设计区按下鼠标左按键向右拉就创建了一个文本按钮对象。 第二步:在资源管理区内选择其中一个对象,对其属性进行编辑。其属性包括状态、名称、标题、字体及颜色、图片及位置、高度、宽度、坐标、风格、外形、亮度、背景、底色、边框颜色、阴影颜色、ID、页切换、数据、自锁、等属性选项。第二步的工作就是对这些对象特性参数进行设置,以达到设计者的要求。(提示:一定要确保First Page和页切换中的“触摸屏系统设置”两个属性的正确设置,正确设置First Page才能在触摸屏启动时正确加载第一页,“触摸屏系统设置”是进入触摸屏参数设置的入口,如果需要,必须将某一个控件的页切换属性设置成“触摸屏系统设置”。)

操作方法:如果要选中多个对象,可以”Ctrl”+鼠标左键,也可以先点击指针,然后再该区域内画矩形框。选中后点击鼠标右键便可以实现对象大小的统一、位置的变化、复制对象、粘贴对象等操作。 删除对象:选择资源管理区的其中一个对象,可以是具体的一个按钮,也可以是一个整页,然后敲键盘上的”Delete”键即可。也可以点击鼠标右键,选择删除项。 按钮对象属性说明: Page Name:表明设计页的名称,可自定义,敲回车键生效。 Page color:选择、修改设计页的颜色(即触摸屏的背景颜色) First Page:该属性表选择后,表明触摸屏启动的第一个显示界面,也是触摸屏系统设置返回的界面,必须对该属性进行设置。动作互锁:如果选则“是“那么该对象在实际运行中实现了自己的互锁和组内多个对象互锁,即一个按钮按第一次,按下的同时发送按下控制码,按第二次才回到原来的状态并发送控制码。它可以控制类是于光区按钮控制键,同一个按键实现两个互锁动作。还可以设置多个这样的按键,从而形成了互锁组,默认状态下互锁组组号是1。也可以通过参数设置栏的互锁组号来修改互锁组组号,一个工程中最多可以设置五个互锁组组号。如果选择“否”即不实现互锁动作,只实现一般的Click动作。名称:名称是不能被修改的,它是用来识别对象的关键符号。 标题:标题是可以修改的,也可以不用标题,改变其值后敲回车键生效。 字体:是对标题栏的内容特征进行设置,如字体、字体号,字体风格等。 字体颜色:是对标题栏的字体颜色进行配置。 (图二)

相关文档