输入与输出设备接口技术概论_第1页
输入与输出设备接口技术概论_第2页
输入与输出设备接口技术概论_第3页
输入与输出设备接口技术概论_第4页
输入与输出设备接口技术概论_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

输入与输出设备接口技术概论1、通用I/O端口结构(GPIO)3.1I/OGPIO端口:

PORT数据寄存器、DDR数据方向寄存器。输出:置“1”,输出数据;DDR方向寄存器:输入:置“0”,输入数据。117个GPIO端口:

1个23位的PortA;

2个11位的PortB、H;

3个16位的PortC、D、E、G;

1个8位的PortF。2、接口电路通过端口D的GPD1、GPD0控制发光二极管轮流闪烁。端口D控制寄存器寄存器地址描述GPDCON0x56000030使用位[31:0],分别对端口D的16个引脚进行配置。00:输入;01:输出GPDDAT0x56000034数据寄存器,使用位[15:0]GPDUP0x56000038配置上拉电阻1:禁止0:使能GPDCON=GPDCON&0xfffffff0|0x00000005;GPDDAT=GPDDAT&0xfffffffC|0x00000002;GPDCON=GPDCON&0xfff0ffff|0x00050000;GPDDAT=GPDDAT&0xeff|0x200;例题1,判断D端口的输入/输出状态及高低电平3.2A/D转换器接口S3C2410A包含一个8通道的A/D转换器。10位分辨率。采样电压范围是0~3.3V。讨论1当参考电压为3.3V时,输入电压为2.0V,采集的数字量为多少?1、ADC内部结构及ADC控制器相关寄存器A/D转换器和触摸屏接口电路(1)ADC控制寄存器(ADCCON)A/D转换的转换时间计算。例,PCLK为50MHz,PRESCALER

=

49;所有10位转换时间为

50MHz

/

(49

+

1)

=

1MHz

转换时间为1/(1M/5cycles)

=

5us注意:完成一次A/D转换需要5个时钟周期。A/D转换器的最大工作时钟为2.5MHz,所以最大的采样率可以达到500kbit/s。1、要使A/D转换器正常启动,预分频因子取50,应向ADCCON写入什么控制字?01001100010000012、要启动A/D转换器读第2号通道数据启动(预分频因子取16),应向ADCCON写入什么控制字?0100001111010011例题2(2)ADC触摸屏控制寄存器(ADCTSC)在正常A/D转换时,AUTO_PST和XY_PST都置成0即可,其他各位与触摸屏有关,不需要进行设置。(3)ADC转换数据寄存器(ADCDAT0和ADCDAT1)在触摸屏应用中,分别使用ADCDAT0和ADCDAT1保存X位置和Y位置的转换数据。对于正常的A/D转换,使用ADCDAT0来保存转换后的数据。(4)ADC启动延时寄存器(ADCDLY)思考1如何判断ADC转换完成?如何启动ADC转换?A/D转换的数据可以通过中断或查询的方式来访问,如果是中断方式,则全部的转换时间(从A/D转换的开始到数据读出)要更长。如果是查询方式,则要检测ADCCON[15](转换结束标志位)来确定从ADCDAT寄存器读取的数据是否是最新的转换数据。A/D转换开始的一种方式是将ADCCON[0]置为1,另一种方式是将ADCCON[1]置为1,这时只要有读转换数据的信号,A/D转换就会同步开始。A/D转换的流程图2、ADC接口编程例题3、ADC转换定义与A/D转换相关的寄存器定义如下:#definerADCCON(*(volatileunsigned*)0x58000000)//ADC控制寄存器#definerADCTSC(*(volatileunsigned*)0x58000004)//ADC触摸屏控制寄存器#definerADCDLY(*(volatileunsigned*)0x58000008)//ADC启动或间隔延时寄存器#definerADCDAT0(*(volatileunsigned*)0x5800000c)//ADC转换数据寄存器0#definerADCDAT1(*(volati1eunsigned*)0x58000010)//ADC转换数据寄存器对A/D转换器进行初始化程序中的参数ch表示所选择的通道号,程序如下:voidAD_Init(unsignedcharch){rADCDLY=100;//ADC启动或间隔延时rADCTSC=0;//选择ADC模式rADCCON=(1<<14)|(49<<6)|(ch<<3)|(0<<2)|(0<<1)|(0);//设置ADC控制寄存器}获取A/D的转换值程序中的参数ch表示所选择的通道号,程序如下:intGet_AD(unsignedcharch){inti;intval=0;if(ch>7)return0;//通道不能大于7for(i=0;i<16;i++)//为转换准确,转换16次{rADCCON|=0x1;//启动A/D转换rADCCON=rADCCON&0xffc7|(ch<<3);while(rADCCON&0x1);//避免第一个标志出错while(!(rADCCON&0x8000));//避免第二个标志出错val+=(rADCDAT0&0x03ff);Delay(10);}return(val>>4);//为转换准确,除以16取均值}例题4、预分频值为32,采集0—7个信道,进行ADC转换。3.3LCD显示接口1、LCD基本结构2、LCD显示原理在LCD中,通过给不同的液晶单元供电,控制其光线的通过与否,达到显示的目的。在LCD中,显示面板薄膜被分成很多小栅格,每个栅格由一个电极控制,通过改变栅格上电极的电压状态,来控制栅格内液晶分子的排列,从而控制光路的通断。偏振片透光原理:偏振片只允许偏振方向与它的偏振化方向平行的光透过,如果让两个偏振片的偏振化方向相互垂直,由于第一次出射光的偏振方向与第二个偏振片的偏振化方向垂直,光不能通过第二个偏振片。如果有光线进入,通过第一个偏振片后,将被液晶分子逐渐改变偏振方向,由于光线沿着液晶分子排列的方向传播,光线最终将从另一端射出。彩色LCD利用三原色混合的原理显示不同的色彩。在彩色LCD中,每一个像素都是由3格液晶单元格构成的,其中每一个单元格前面都分别有红色、绿色或蓝色的过滤片,光线经过过滤片的处理变成红色、蓝色或者绿色,利用三原色的原理,组合出不同的色彩。彩色显示原理问题:LCD如何显示黄色、白色?问题:如何生成红光?3、LCD类型①段式液晶②字符型液晶③图形点阵式液晶根据液晶材料和液晶效应分为TN、STN、TFT等几类。STN-LCD(超扭曲向列型液晶显示器)SuperTwistedNematic-LCDTFT-LCD(薄膜型液晶显示器)ThinFilmTransistor-LCD4、S3C2410A的LCD控制器一块LCD屏显示图像,不但需要LCD驱动器,还需要有相应的LCD控制器。通常LCD驱动器会以COF/COG的形式与LCD玻璃基板制做在一起,而LCD控制器则由外部电路来实现。而S3C2410内部已经集成了LCD控制器,因此可以很方便地去控制各种类型的LCD屏。S3C2410A的LCD控制器支持单色,4级、16级灰度LCD显示,以及8位彩色、12位彩色LCD显示,彩色显示采用RGB的格式,通过软件编程可以实现332的RGB调色格式。

可以通过对LCD控制器中的各寄存器写入不同的值,来配置不同尺寸、不同的垂直和水平像素点、数据宽度、接口时间及刷新率的LCD。LCD控制器的结构框图S3C2410A的LCD控制器内部结构方框图如图所示,由REGBANK、LCDCDMA、VIDPRCS、TIMEGEN和LPC3600等模块组成。

REGBANK是LCD控制器的寄存器组,具有17个用于配置LCD控制器的可编程寄存器和256×16的调色存储器。用来对LCD控制器的各项参数进行设置。

LCDCDMA

则是LCD控制器专用的DMA信道,负责将视频资料从系统总线(SystemBus)上取来,通过VIDPRCS从VD[23:0]发送给LCD屏。

TIMEGEN和LPC3600

负责产生LCD屏所需要的控制时序,例如VSYNC、HSYNC、VCLK、VDEN,然后从VIDEOMUX送给LCD屏。S3C2410ALCD控制器的外部接口信号有33个,包括24个数据位和10个控制位:(1)VSYNC:垂直同步信号(TFT)LCD控制器和LCD驱动器之间的帧同步信号。该信号告诉LCD屏的新的一帧开始了,LCD控制器在一个完整帧显示完成后立即插入一个帧信号,开始新一帧的显示。

(2)HSYNC:水平同步信号(TFT)LCD控制器和LCD驱动器之间的水平同步脉冲信号。该信号用于用指示新的一行扫描信号的开始。(3)VCLK:像素时钟信号(TFT)LCD控制器和LCD驱动器之间的像素时钟信号,由LCD控制器送出的数据在VCLK的上升沿处送出,在VCLK的下降沿处被LCD驱动器采样。LCD屏的驱动IC是通过采集VCLK信号来接受RGB数据。(4)VD[23,0]:LCD像素点数据输出端口(TFT),R、G、B分别占用8位,顺序依次从高到低。(5)VDEN:LCD驱动器的AC信号(TFT)VDEN信号被LCD驱动器用于改变行和列的电压极性,从而控制像素点的显示或熄灭。(6)LEND:行结束信号(TFT),LCD驱动器在每扫描一行像素后给出该信号。(7)LCD_PWREN:LCD面板电源使能控制信号,由LCDCON5的PWREN位控制。(8)LCDVF0:SECTFT信号OE(9)LCDVF1:SECTFT信号REV(10)LCDVF2:SECTFT信号REVB5、LCD显示数据格式一个320×240个像素,8bit的256色LCD,显示数据格式什么样?每个像素占一个字节,每个字节中有RGB格式(332或者233)的区分,具体由硬件决定。例如332的RGB格式如图a所示,红、绿、蓝三个颜色分量分别占3位、3位、2位。8位256彩色显示的显示缓存器与LCD屏上的像素点是对应的,每个字节对应LCD上的一个像素点,如图b所示。在彩色图像显示时,要在显示缓存区SDRAM中存放显示数据,缓存区的数据会直接显示到LCD屏上。改变该显示缓存区内数据,LCD显示屏上的图像随之变化。图a图b讨论?为什么数据存放在显示缓存区SDRAM中,然后直接显示到LCD屏上?6、LCD编程基本内容1)设置LCD类型,例如,STN8八位彩色模式

2)LCD像素,例如,320*2403)设置控制信号VFRAME、VLINE、VCLK和数据信号VD0-VD23等,分别在GPCCON,GPDCON中选择相应功能。4)设置视频数据缓冲区的地址详细内容,参照S3C2410A处理器和LCD液晶屏说明书。3.4触摸屏接口触摸屏的应用案例??1、触摸屏的分类电阻式触摸屏

1)四线电阻式触摸屏

2)五线电阻式触摸屏

3)六线电阻式触摸屏

4)七线电阻式触摸屏电容式触摸屏

1)单点触摸屏

2)多点触摸屏红外线触摸屏超声波触摸屏(IPhone)2、触摸屏的结构和工作原理透明导电材料ITO:ITO是IndiumTinOxides的缩写。

ITO是一种N型氧化物半导体-氧化铟锡,ITO薄膜即铟锡氧化物半导体透明导电膜,通常有两个性能指标:电阻率和透光率。特性是当厚度降到1800个埃(埃=10-10米)以下时会突然变得透明,透光率为80%,再薄下去透光率反而下降,到300埃厚度时又上升到80%。一般是通过真空离子溅射工艺将ITO薄膜镀到塑料或者玻璃上。ITO中其透过率和阻值分别由In2O3与Sn2O3之比例来控制,通常Sn2O3:In2O3=1:9.电阻式触摸屏和电容式触摸屏都用到ITO材料。触摸屏为什么是透明的?触摸屏和LCD屏,哪个放在上面?1)电阻式触摸屏结构四线制的测量坐标位置原理如何测量点坐标(x,y)?测量X坐标:1)在X+,X-两电极加上一个电压Vref,Y+接一个高阻抗的ADC。2)两电极间的电场呈均匀分布,方向为X+到X-。3)手触摸时,两个导电层在触摸点接触,触摸点X层的电位被导至Y层所接的ADC,得到电压Vx。4)通过Lx/L=Vx/Vref,即可得到x点的坐标。Y轴的坐标可同理将Y+,Y-接上电压Vref,然后X+电极接高阻抗ADC得到。2)电容式触摸屏当人手碰到感应电极时,电极和地之间的电容由原来的Cp变为Cp+2Cf,显然增大了。①当用户触摸电容屏时,由于人体电场,用户手指头和工作面形成一个耦合电容。②因为工作面上接有高频信号,于是手指头吸收走很小的电流。③这个电流分别从触摸屏四个角上的电极中流出,并且理论上流经这四个电极的电流与手指到四角的距离成比例。④控制器通过对这四个电流比例的精密计算,得出触摸点的位置。测量坐标位置原理3、S3C2410触摸屏控制器触摸屏接口电路S3C2410A内部具有触摸屏接口,触摸屏接口包含1个外部晶体管控制逻辑和1个带有中断产生逻辑的ADC接口逻辑,它使用控制信号nYPON、YMON、nXPON和XMON控制并选择触摸屏面板,使用模拟信号AIN[7]和AIN[5]分别连接X方向和Y方向的外部晶体管,与触摸屏相连。模式XPXMYPYMX位置转换外部电压GND(地)AIN[5]Hi-Z(高阻状态)Y位置转换AIN[7]Hi-Z(高阻状态)外部电压GND(地)X方向坐标和Y方向坐标控制方法从触摸屏控制器获得X与Y值仅是对当前触摸点的电压值的A/D转换值,它不具有直接利用价值。因为,LCD分辨率与触摸屏分辨率通常是不一样的,坐标也不一样,因此,如果想得到体现LCD坐标的触摸屏位置,还需要在程序中进行转换。转换公式如下:X,=(x-TchScr_Xmin)*LCDWIDTH/(TchScr_Xmax-TchScr_Xmin)Y,=(y-TchScr_Ymin)*LCDHEIGHT/(TchScr_Ymax-TchScr_Ymin)

其中,TchScr_Xmax、TchScr_Xmin、TchScr_Ymax和TchScr_Ymin是触摸屏x、y轴的范围,LCDWIDTH、LCDHEIGHT是液晶屏的宽度和高度。坐标转换4、触摸屏接口编程在S3C2410A构成的嵌入式系统中使用触摸屏,配置过程如下:(1)通过外部晶体管将触摸屏引脚连接到S3C2410A上;(2)选择分开的X/Y位置转换模式或者自动(顺序)X/Y位置转换模式,来获取X/Y位置;(3)设置触摸屏接口为等待中断模式;(4)如果中断发生,将激活相应的转换过程(X/Y位置分开转换模式或者X/Y位置自动(顺序)转换模式);(5)得到X/Y位置的正确值以后,返回等待中断模式。voidTchScr_init(){rGPGCON|=(3<<30)|(3<<28)|(3<<26)|(3<<24);/*[31:30]用来设置GPG15端口,设置为11表示将GPG15用作触摸屏的输入端nYPON;[29:28]用来设置GPG14端口,设置为11表示将GPG14用作触摸屏的输入端YMON;[27:26]位用来设置GPG13端口,设置为11表示将GPG13用作触摸屏的输入端nXPON;[25:24]位用来设置GPG12端口,设置为11表示将GPG12用作触摸屏的输入端XMON*/rADCCON=(1<<14)|(49<<6)|(7<<3);//设置ADC转换控制器

rADCDLY=0xff;//设置启动或间隔延时寄存器

rADCTSC=(1<<7)|(1<<6)|(0<<5)|(1<<4)|(0<<3)|(0<<2)|(3);}

//等待中断模式下的转换条件

触摸屏的初始化函数voidTchScr_GetScrXY(int*x,int*y){inttmp;tmp=rADCTSC;//把触摸屏控制寄存器值保存起来

rADCTSC|=(1<<3)|(1<<2)|(0);//停止上拉;X/Y位置连续转换模式_无操作模式

rADCCON|=1;//开始转换

while(!(rSUBSRCPND&(1<<10)));//等待转

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论