《嵌入式系统设计5.ppt》由会员分享,可在线阅读,更多相关《嵌入式系统设计5.ppt(175页珍藏版)》请在三一办公上搜索。
1、嵌入式系统设计,信息工程学院计算机科学技术系 牛斗 副教授,第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.1 S3C2410A微处理器简介核心:ARM920TCache:6K指令缓存+16K数据缓存内部其他资源:外部存储器控制器MMULCD控制器PWM X 5DMA通道X 4通用I/O口X 117UART X 3外中断X 24IIC总线控制器ADC 8通道10位IIS总线控制器SPI X 2MMC卡接口USB接口触摸屏接口电子日历时钟,第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.1 S
2、3C2410A微处理器简介中断控制器:管理55个中断源。包括:定时器:5个+看门狗:1个UART:9个SDI:1个外部中断:24个USB:2个DMA:4个LCD:1个RTC:2个电池故障:1个ADC:2个IIC:1个SPI:2个,第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.1 S3C2410A微处理器简介RTC:实时电子日历时钟全部的时钟功能。包括:年、月、日、时、分、秒32.768KHZ频率中断功能,第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.1 S3C2410A微处理器简介GPI
3、O:通用I/O口117个I/O口引脚。其中24个有中断功能每个I/O口引脚都有复用功能,第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.1 S3C2410A微处理器简介UART:通用异步串行I/O口3通道。每个通道支持中断模式/DMA模式每个通道支持5、6、7、8数据位支持外时钟可编程波特率支持IrDA(红外通信)支持环回模式(可以实现自测试),第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.1 S3C2410A微处理器简介DMA控制器:4通道每个通道支持:存储器 存储器存储器 I/O口I/
4、O口 存储器I/O口 I/O口,第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.1 S3C2410A微处理器简介A/D转换器和触摸屏通道:8通道(多路复用)精度:10位速度:500KSPS,第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.1 S3C2410A微处理器简介LCD显示器控制器支持扫描模式:4位单扫/双扫、8位单扫支持显示模式:单色 灰度(4级/16级)彩色(256/4096色)支持屏幕尺寸:640 X 480 320 X 240 160 X 160显示缓存:4MB,第五章 嵌入式
5、系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.1 S3C2410A微处理器简介看门狗定时器16位定时器时间到之后复位/中断,第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.1 S3C2410A微处理器简介IIC总线接口单通道串行、8位数据、双向传输传输速率:标准模式速率:100Kbit/S快速模式速率:400Kbit/S,第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.1 S3C2410A微处理器简介USB接口主设备接口:2个从设备接口:1个标准:US
6、B1.1标准,第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.1 S3C2410A微处理器简介SD接口兼容SD存储卡协议1.0版兼容MMC卡存储协议2.11版接收、发送有FIFO缓冲,第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.1 S3C2410A微处理器简介SPI接口兼容SPI协议2.11版接收、发送具有2 X 8移位寄存器方式接收、发送支持中断、DMA模式,第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.2 基于S3C2410A微处
7、理器的硬件平台结构1S3C2410A微处理器体系结构图(图5-1/P146),第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.2 基于S3C2410A微处理器的硬件平台结构2基于ARM9微处理器的嵌入式硬件平台体系结构(图5-2/P147)包括:1存储器部分包括:Flash 负责系统启动/系统数据存储器SDRAM作为系统内存2人机交互接口部分包括:液晶接口键盘接口+触摸屏接口3I/O口接口部分包括:GPIO接口A/D、D/A接口4总线接口部分包括:RS-232USB接口、IIS接口等等,第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C
8、2410A微处理器的硬件平台体系结构5.1.2 基于S3C2410A微处理器的硬件平台结构S3C2410A微处理器的启动引导第一级引导:系统复位,CPU判断引脚OM1:0状态。如果OM1:0=00则将Flash中前4K内容复制到SDRAM中。并跳转到SDRAM去执行,第五章 嵌入式系统硬件平台与接口设计,5.1 基于S3C2410A微处理器的硬件平台体系结构5.1.2 基于S3C2410A微处理器的硬件平台结构S3C2410A微处理器的启动引导第二级引导:在Flash前4K一般存放Boot Loader(核心部分),当该程序启动后,将初始化SDRAM及Flash控制器,初始化系统总线和其它接口
9、。随后将Boot Loader其它部分复制到SDRAM中,执行Boot Loader引导操作系统、运行其它程序。,第五章 嵌入式系统硬件平台与接口设计,5.2 存储器系统设计5.2.1 存储器系统概述1.存储器系统的层次结构2.高速缓存(Cache)3.内存管理单元,第五章 嵌入式系统硬件平台与接口设计,5.2 存储器系统设计5.2.2 S3C2410A的存储系统设计1.S3C2410A存储器系统的特征1支持大端/小端模式(大端:高地址高字节)2地址空间1GB(256MB X 8 Bank)3每个Bank支持8/16/32位数据总线4其中:固定起始地址的Bank X 7 可变起始地址的Bank
10、 X 15Bank0-Bank5支持ROM/SRAM Bank6-Bank7支持ROM/SRAM FP/EDO/SDRAM(包括刷新、寻址),第五章 嵌入式系统硬件平台与接口设计,5.2 存储器系统设计5.2.2 S3C2410A的存储系统设计1.S3C2410A存储器系统的特征,SRAM(启动),SROM,SROM,SROM,SROM,SROM,SROM/SDRAM,SROM/SDRAM,扩展,nGS1,nGS2,nGS3,nGS4,nGS5,nGS6,nGS7,128M,128M,128M,128M,128M,可选,可选,使用Flash作为启动ROM,第五章 嵌入式系统硬件平台与接口设计,
11、5.2 存储器系统设计5.2.2 S3C2410A的存储系统设计2.存储器的大小端模式当nRESET=“0”时,使用大端模式之后通过ENDIAN寄存器中相应位可以重新定义存储器大小端模式当nRESET=“0”时,BANK0的总线宽度由引脚OM1:0设置OM1OM0启动方式数据宽度00Flash启动0116位总线1032位总线11测试模式其余BANK的总线宽度由寄存器BWSCON中相应位设置,第五章 嵌入式系统硬件平台与接口设计,5.2 存储器系统设计5.2.2 S3C2410A的存储系统设计3.存储器地址引脚连接,第五章 嵌入式系统硬件平台与接口设计,5.2 存储器系统设计5.2.2 S3C2
12、410A的存储系统设计4.典型系统中存储器的分配情况,第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.1 串行通信的基本概念1.串行通信的基本概念(单工、半双工、双工)2.异步通信同步:起始位传送单位:字节数据格式:,起始位,数据位,停止位,第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.1 串行通信的基本概念2.异步通信波特率:传输位数/秒异步通信接口:通用异步收发器(UART)常用UART:NS16650常用数据格式:数制(二进制)编码:ASCIISBCDICBCD,第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.1 串行通信的基本概念
13、3.RS-232-C通用、个人电脑配备(COM1)4.RS-422平衡传输、远距离5.RS-485三态的RS-422,允许多机通信,第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发器(UART),FIFO,发送移位,FIFO,接收移位,波特率发生器,控制单元,TxDn,RxDn,第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发器(UART)与UART相关的寄存器包括:1 UART线控制寄存器2 UART控制寄存器3 UART FIFO控制寄存器4 UART接收/发送状态寄存器5 UART错误状态寄存器6 UART FIFO状态
14、寄存器7 UART 发送缓冲器8 UART 接收缓冲器9 UART波特率因子寄存器,第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发器(UART)1UART线控制寄存器ULCON0:用于UART0ULCON1:用于UART1ULCON2:用于UART2,D7 D6 D5 D4 D3 D2 D1 D0,模式,奇偶校验,停止位,长度,D6=0 正常模式=1 红外模式,D5=0 无校验位=1 有校验位,D4D3=00 奇校验=01 偶校验=10 校验位为0=11 校验位为1,D1D0=00 5位=01 6位=10 7位=11 8位,D2=0 1停止位/D2=1 2停
15、止位,第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发器(UART)2UART控制寄存器UCON0:用于UART0UCON1:用于UART1UCON2:用于UART2,D15 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0,第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发器(UART)2UART控制寄存器,D15 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0,D10=0 选择PCLK=1 选择UCLK,D9=0 TxFIFO变空产生中断=1 TxFIFO为空产生中断,D
16、8=0 RxFIFO进数产生中断=1 RxFIFO有数产生中断,D7=0 禁止Rx超时中断=1 允许Rx超时中断,第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发器(UART)2UART控制寄存器,D15 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0,D6=0 禁止错误中断=1 允许错误中断,D4=0 正常工作=1 发送“空号”信号,D5=0 正常工作模式=1 LOOPBACK模式(测试),第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发器(UART)2UART控制寄存器,D15 D11 D10
17、D9 D8 D7 D6 D5 D4 D3 D2 D1 D0,D3D2 写入发送缓冲区需要资源=00 禁止=01 中断=10 DMA0(UART0)/DMA3(UART2)=11 DMA1(UART1),第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发器(UART)2UART控制寄存器,D15 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0,D1D0 读接收缓冲区需要资源=00 禁止=01 中断=10 DMA0(UART0)=11 DMA1(UART1),第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收
18、发器(UART)3UARTFIFO控制寄存器UFCON0:用于UART0UFCON1:用于UART1UFCON2:用于UART2,D7 D6 D5 D4 D3 D2 D1 D0,D7D6 发送FIFO触发水平=00 0字节(空)=01 4字节=10 8字节=11 12字节,D5D4 接收FIFO触发水平=00 4字节=01 8字节=10 12字节=11 16字节(满),第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发器(UART)3UARTFIFO控制寄存器UFCON0:用于UART0UFCON1:用于UART1UFCON2:用于UART2,D7 D6 D5
19、D4 D3 D2 D1 D0,D2=0 正常=1 TxFIFO清零,D1=0 正常=1 RxFIFO清零,D0=0 禁止FIFO=1 使能FIFO,第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发器(UART)4UARTTx/Rx状态寄存器UTRSTAT0:用于UART0UTRSTAT1:用于UART1UTRSTAT2:用于UART2,D7 D6 D5 D4 D3 D2 D1 D0,D2=0 正常=1 发送器空,D1=0 正常=1 发送缓冲器空,D0=0 正常=1 接收缓冲器满,第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发
20、器(UART)5UART错误状态寄存器UERSTAT0:用于UART0UERSTAT1:用于UART1UERSTAT2:用于UART2,D7 D6 D5 D4 D3 D2 D1 D0,D2=0 正常=1 帧错误,D1=0 正常=1 校验错误,D0=0 正常=1 溢出错误,第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发器(UART)6UARTFIFO状态寄存器,D15 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0,D7 D4 TxFIFO中字符数目 D3 D0 RxFIFO中字符数目,D9=1 TxFIFO满 D8=1 RxFIFO满,第
21、五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发器(UART)7UART发送缓冲寄存器UTXH0:用于UART0UTXH1:用于UART1UTXH2:用于UART28UART接收缓冲寄存器URXH0:用于UART0URXH1:用于UART1URXH2:用于UART2,第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发器(UART)9UART波特率因子寄存器UBRDIV0:用于UART0UBRDIV1:用于UART1UBRDIV2:用于UART2 UBRDIVn=(int)(PCLK/(波特率X16)-1或者:UBRDIVn=(in
22、t)(UCLK/(波特率X16)-1,第五章 嵌入式系统硬件平台与接口设计,5.3 串行接口设计5.3.2 通用异步收发器(UART)硬件连接:三线式A机B机TxD电平转换 电平转换RxDRxD电平转换 电平转换TxDGNDGND,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.1 GPIO接口设计1.I/O接口地位:主机CPU与外部设备之间必要性:1CPU与外设时序配合、通信联络2CPU与外设数据格式转换、匹配3CPU负载能力,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.1 GPIO接口设计2.I/O接口编址方式1I/O接口独立编址2与存储器统一编
23、址S3C2410采用方式2,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.1 GPIO接口设计3.GPIO的原理与结构,D,G,Q,Q,D,G,Q,Q,PORT,DDR,引脚,D0,WR_PORT,RD_DDR,WR_DDR,RD_PORT,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.1 GPIO接口设计3.GPIO的原理与结构数据方向寄存器DDRn:设定I/O口的方向 DDRn中D0位:=1 端口的D0位为输出=0端口的D0位为输入数据端口寄存器PORTn:输出:D0位内容确定D0引脚状态输入:D0位内容由D0引脚状态确定,第五章 嵌入式系统硬件
24、平台与接口设计,5.4 I/O接口设计5.4.1 GPIO接口设计3.GPIO的原理与结构对DDR和PORT的配置举例:将PORTP口的D0位配置为输出bsetPORTP,BIT0bsetDDRP,BIT0先配置数据端口寄存器的目的:避免发生随机状态,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.1 GPIO接口设计4.S3C2410的I/O口I/O口引脚总数:117I/O口介绍:A口:23位输出B口:11位输入/输出C口:16位输入/输出D口:16位输入/输出E口:16位输入/输出F口:8位输入/输出G口:16位输入/输出H口:11位输入/输出,第五章 嵌入式系统硬件平
25、台与接口设计,5.4 I/O接口设计5.4.1 GPIO接口设计4.S3C2410的I/O口几乎每一个引脚都是复用引脚,都可以根据需要进行设置。例如:通用I/O口G口(GPG0GPG15)GPG7(通用I/O口G口的第7脚)功能1:通用I/O口(输出)功能2:通用I/O口(输入)功能3:EINT15(外中断引脚15#)功能4:SPICLK1(1号SPI口的时钟引脚),第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.1 GPIO接口设计4.S3C2410的I/O口通用I/O口的应用步骤:1设置I/O口引脚的功能 写I/O口控制寄存器GPnCON2设置是否需要内部拉动 写I/O
26、口的PULL-UP寄存器 用于:引脚未使用时默认的引脚输出状态3其他设置(根据各引脚设置的功能进一步确定其他设置),第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.1 GPIO接口设计4.S3C2410的I/O口通用I/O口的应用步骤(续):如:被设置成外中断的引脚还要继续设置(使用)以下寄存器1中断屏蔽寄存器:2中断控制寄存器:中断信号的类型(边沿、电平)3中断状态寄存器:,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.1 GPIO接口设计4.S3C2410的I/O口通用I/O口的应用步骤:1设置I/O口引脚的功能 写I/O口控制寄存器GPnCON设
27、置GPG7(通用I/O口G口的第7脚)的功能使用GPGCON寄存器(GPGCON每两位设置一个引脚的功能),D31 D30 D15 D14 D13 D12 D11 D10 D9 D8 D7 D6,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.1 GPIO接口设计4.S3C2410的I/O口通用I/O口的应用步骤:1设置I/O口引脚的功能 写I/O口控制寄存器GPnCON设置GPG7(通用I/O口G口的第7脚)的功能使用GPGCON寄存器(GPGCON每两位设置一个引脚的功能)D15 D14GPG7功能00通用I/O引脚(输入)01通用I/O引脚(输出)10EINT1511
28、SPICLK1,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.1 GPIO接口设计4.S3C2410的I/O口通用I/O口的应用步骤:2设置是否需要内部拉动 写I/O口的PULL-UP寄存器PULL-UP寄存器中每一位管理对应的一位引脚Di=1 禁止上拉功能(i=0-X,X=口长度-1)=0使用上拉功能,D15 D14 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.1 GPIO接口设计4.S3C2410的I/O口通用I/O口的应用步骤(续):通用I/O口的数据存放于GPnDA
29、T中输出:(GPnDAT)GPIOn引脚输入:(GPnDAT)GPIOn引脚,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.2 A/D转换器1.A/D转换器的分类2.A/D转换器的重要指标1)分辨率转换器的能力:只与位数有关。分辨率=1/2n2)精度与转换器质量有关。分为:(1)绝对误差(2)相对误差3)转换时间:从启动到获得数据的时间,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.2 A/D转换器3.ARM自带的10位A/D转换器,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.2 A/D转换器3.ARM自带的10位A/D转换器
30、,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.2 A/D转换器3.ARM自带的10位A/D转换器特点:1分辨率:10位2最大转换速度:500KSPS3通道数:8其中:如果使用触摸屏:AIN4-AIN7用于转换触摸屏如果未使用触摸屏:AIN4-AIN7作为普通模拟输入通道,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.2 A/D转换器3.ARM自带的10位A/D转换器工作过程:1启动2获取转换数据方法包括以下几种:(1)等待(2)查询“转换结束”标志位(3)中断,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.2 A/D转换器3.
31、ARM自带的10位A/D转换器1ADC控制寄存器ADCCON,D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0,D15 ECFLG=1 A/D转换结束=0 A/D转换未结束,D14 PRSCEN=1 使用预分频=0 禁用预分频,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.2 A/D转换器3.ARM自带的10位A/D转换器1ADC控制寄存器ADCCON(续),D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0,D13-D6:预分频系数(0-255)A/D转换频
32、率=GLCK/(分频系数+1),第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.2 A/D转换器3.ARM自带的10位A/D转换器1ADC控制寄存器ADCCON(续),D5-D3:通道选择位000 AIN0111 AIN7,D2=0 正常工作模式=1 待机模式,D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.2 A/D转换器3.ARM自带的10位A/D转换器1ADC控制寄存器ADCCON(续),D1:读操作允许位 0 禁止读操作 1 允许读操作,D
33、0=0=1 启动A/D转换,D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.2 A/D转换器3.ARM自带的10位A/D转换器2ADC数据寄存器0 ADCDAT0,D15:触摸屏点击状态 0 按下(触笔点击)1 抬起(触笔抬起),D14=0 正常转换方式=1 自动测量触摸屏方式,D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.2 A/D转换器
34、3.ARM自带的10位A/D转换器2ADC数据寄存器0 ADCDAT0(续),D13D12:00 01 手动测量X坐标位置 10 手动测量Y坐标位置 11 中断模式,D9-D0 转换数据 触摸屏X坐标位置数据或正常A/D转换数据,D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0,第五章 嵌入式系统硬件平台与接口设计,5.4 I/O接口设计5.4.2 A/D转换器3.ARM自带的10位A/D转换器3ADC数据寄存器1 ADCDAT1,D9-D0 转换数据 触摸屏Y坐标位置数据,D15 D14 D13 D12 D11 D10 D9 D8 D
35、7 D6 D5 D4 D3 D2 D1 D0,D15-D12:同ADCDAT0,第五章 嵌入式系统硬件平台与接口设计,5.5 人机交互接口5.5.1 LCD和触摸屏接口设计1.液晶显示器基本知识,第五章 嵌入式系统硬件平台与接口设计,5.5 人机交互接口5.5.1 LCD和触摸屏接口设计1.液晶显示器基本知识液晶LCD分类1 TN型:Twisted Nematic2 STN型:Super Twisted Nematic3 TFT型:Thin Film TransistorS3C2410ARM的LCD控制器支持:STN型/TFT型其余特点(本PPT第9页),第五章 嵌入式系统硬件平台与接口设计,
36、5.5 人机交互接口5.5.1 LCD和触摸屏接口设计2.LCD的控制方法LCD模块种类1内部带有驱动电路的LCD显示模块优点:便于与单片机接口缺点:体积大、成本高适用:简易型单片机2单独的LCD显示器(屏)优点:体积小、成本低缺点:需要额外的驱动电路适用:适用于带有LCD驱动电路的处理器(如:S3C2410),第五章 嵌入式系统硬件平台与接口设计,5.5 人机交互接口5.5.1 LCD和触摸屏接口设计2.LCD的控制方法1总线驱动方式数据总线:D7-D0控制总线:CS、E、WE、RD、A0。微处理器通过:数据总线送出地址、命令、数据控制总线使能LCD模块、选择内部单元,第五章 嵌入式系统硬件
37、平台与接口设计,5.5 人机交互接口5.5.1 LCD和触摸屏接口设计2.LCD的控制方法2控制器扫描方式将显示缓存中的数据扫描到LCD。支持:灰度:单色、2级、4级、8级灰度彩色:24位彩色由微处理器自己发出接口时间、刷新速率等控制信号通过对内部寄存器编程序实现,第五章 嵌入式系统硬件平台与接口设计,5.5 人机交互接口5.5.2 触摸屏接口设计1.触摸屏原理常用电阻触摸屏工作原理:触点接触导电,形成分压Xi=Lx*Vi/VxLx:水平方向长度Vi:触点电压Vx:水平方向施加电压Yj=Ly*Vj/VyLy:垂直方向长度Vj:触点电压Vy:垂直方向施加电压,第五章 嵌入式系统硬件平台与接口设计
38、,5.5 人机交互接口5.5.2 触摸屏接口设计1.触摸屏原理将电压Vx、Vy送A/D转换器输入端,通过转换获得数值。2.触摸屏的控制适用于简易型单片机。需要扩充器件3.触摸屏与显示器的配合,第五章 嵌入式系统硬件平台与接口设计,5.5 人机交互接口5.5.2 键盘接口设计键盘:嵌入式系统重要的输入设备(标准设备)特点:矩阵式键盘(4X4)、(6X6)。键盘接口方案:1专用键盘处理芯片2通用I/O口+扫描处理软件(常用),第五章 嵌入式系统硬件平台与接口设计,5.5 人机交互接口5.5.2 键盘接口设计键盘模块特征1扫描4 X 4矩阵键盘排列2结合uC/OS-II构成一个消息队列,向主任务发送
39、消息。3支持自动重复输入4跟踪一个键被按下多少时间5允许4 X 4矩阵式键盘的任意组合按键,第五章 嵌入式系统硬件平台与接口设计,5.5 人机交互接口5.5.2 键盘接口设计问题:1按键抖动处理硬件消除抖动软件消除抖动(延迟)2按键识别单键单线式矩阵式,第五章 嵌入式系统硬件平台与接口设计,5.5 人机交互接口5.5.2 键盘接口设计,PA3,+5V,PA2,PA1,PA0,PC3,PC2,PC1,PC0,第五章 嵌入式系统硬件平台与接口设计,5.5 人机交互接口5.5.2 键盘接口设计1.矩阵键盘扫描算法1所有行强制送“0”无键按下:列读入为全“1”有键按下:列读入不为全“1”-转22各行依
40、次送“0”各列为全“1”-此行无键按下各列不为全“1”-此行有键按下-转33判断列号4键抖动和重复按键处理,第五章 嵌入式系统硬件平台与接口设计,5.5 人机交互接口5.5.2 键盘接口设计2.键盘扫描程序的实现U16 GetScanKey()U16 key;U8 i,temp;for(i=1;i0 x10;i=1)/0 x01、0 x02、0 x04、0 x08rPDATD|=0 xf;/rPDATD rPDATD|0 xfrPDATD&=i;/rPDATD rPDATD&ikey=4OSTimeDly(1);/延迟,第五章 嵌入式系统硬件平台与接口设计,5.5 人机交互接口5.5.2 键盘
41、接口设计2.键盘扫描程序的实现U16 GetScanKey()(续)temp=rPDATD;key|=(temp4);return key;全部程序清单(以GetScanKey()函数为中心),第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.1 以太网接口的基本知识1.传输编码2.802.3 MAC层的帧,PR,SD,DA,SA,TYPE,DATA,PDA,FCS,56位 8位 48位 48位 16位=1,500字节 可选 32位,PR:同步位 用于收发双方时钟的同步。56位的10101010组成,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口
42、设计5.6.1 以太网接口的基本知识2.802.3 MAC层的帧,PR,SD,DA,SA,TYPE,DATA,PDA,FCS,SD:分隔位 表示之后是数据而不是时钟。8位的10101011,56位 8位 48位 48位 16位=1,500字节 可选 32位,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.1 以太网接口的基本知识2.802.3 MAC层的帧,PR,SD,DA,SA,TYPE,DATA,PDA,FCS,DA:目的地址 表示本帧传送给哪个网卡。如为FFFFFFFFFFFF,则为广播地址。,56位 8位 48位 48位 16位=1,500字节 可选 32
43、位,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.1 以太网接口的基本知识2.802.3 MAC层的帧,PR,SD,DA,SA,TYPE,DATA,PDA,FCS,SA:源地址 表示本帧是哪个网卡发出的。发送端的网卡地址。,56位 8位 48位 48位 16位=1,500字节 可选 32位,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.1 以太网接口的基本知识2.802.3 MAC层的帧,PR,SD,DA,SA,TYPE,DATA,PDA,FCS,TYPE:数据类型 例如:0800H表示为IP协议包0806H表示为ARP协议包,5
44、6位 8位 48位 48位 16位=1,500字节 可选 32位,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.1 以太网接口的基本知识2.802.3 MAC层的帧,PR,SD,DA,SA,TYPE,DATA,PDA,FCS,DATA:数据 以太网规定:包括DA、SA、TYPE、DATA不能超过1,514字节,56位 8位 48位 48位 16位=1,500字节 可选 32位,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.1 以太网接口的基本知识2.802.3 MAC层的帧,PR,SD,DA,SA,TYPE,DATA,PDA,FC
45、S,PDA:填充位 以太网规定:包括DA、SA、TYPE不能小于60字节。不足部分由PDA填充,56位 8位 48位 48位 16位=1,500字节 可选 32位,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.1 以太网接口的基本知识2.802.3 MAC层的帧,PR,SD,DA,SA,TYPE,DATA,PDA,FCS,FCS:校验位 32位CRC检验码自动计算产生,56位 8位 48位 48位 16位=1,500字节 可选 32位,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.1 以太网接口的基本知识2.802.3 MAC层的
46、帧以太网传输特点:1所有数据从低位开始传输,采用曼彻斯特编码2以太网采用冲突检测-避退算法3以太网数据段长度:60字节-1,514字节之间4以太网地址包括:广播地址组播地址本身地址5以太网网卡有唯一的地址码,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.1 以太网接口的基本知识3.在嵌入式系统中主要处理的以太网协议TCP/IP协议的分层,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.1 以太网接口的基本知识3.在嵌入式系统中主要处理的以太网协议1 ARP协议:实现网络层地址(32位)和 数据链路层地址(48位)之间的转换。2 IC
47、MP协议:用于在IP层传输控制信息3 IP协议:网络层核心协议。不可靠、无连接协议 不可靠:有冲突就丢弃 无连接:每一数据包完全独立4 TCP协议:面向连接的、可靠的传输层协议(确认、实时)5 UDP协议:无连接、不可靠的传输层协议,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.1 以太网接口的基本知识3.在嵌入式系统中主要处理的以太网协议端口:1-255:TCP/IP协议使用256-1023:UNIX服务使用1024-5000:临时应用,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.1 以太网接口的基本知识3.在嵌入式系统中主要
48、处理的以太网协议数据变化情况:,用户数据,用户数据,用户协议,应用数据,用户数据,用户协议,TCP首部,TCP段,用户数据,用户协议,TCP首部,IP数据报,IP首部,用户数据,用户协议,TCP首部,MAC帧,IP首部,MAC协议,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.1 以太网接口的基本知识4.网络编程接口BSD套接字(Sockets)是使用最广泛的网络程序编程办法Sockets分为:流Sockets:提供可靠性的双向数据传输(用于TCP协议)数据Sockets提供不可靠的连接(用于UDP协议),第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统
49、的网络接口设计5.6.1 以太网接口的基本知识4.网络编程接口BSD套接字(Sockets)使用步骤:1创建Sockets:2绑定Sockets:与IP、TCP、UDP端口绑定3使用Sockets:发送、接收、等待4关闭Sockets:一次网络通信终止,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.2 嵌入式以太网接口的实现1嵌入式处理器+网卡芯片(RTL8019A)RTL8019A是与NE2000兼容的网卡,软件设计的时候,可以参考一些开放源码的驱动程序。比如:Linux相关的驱动程序。2带有以太网络接口的嵌入式处理器如:S3C4510,第五章 嵌入式系统硬件
50、平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.3 基于ARM的RTL8019AS网络接口芯片的设计,嵌入式处理器S3C2410,10Mbps以太网芯片,网卡隔离变压器,RJ45接口,第五章 嵌入式系统硬件平台与接口设计,5.6 嵌入式系统的网络接口设计5.6.3 基于ARM的RTL8019AS网络接口芯片的设计在嵌入式系统中,系统的精简一直是一个主要的原则。RTL8019AS作为个人电脑网卡时:需要一片EEPROM(9346)作为配置存储器,来存放通信的端口地址、中断地址、网卡的物理地址、工作模式、制造厂商等信息。RTL8019AS作为嵌入式系统网卡时:尽量使用默认配置、使用引脚连线