收藏 分销(赏)

基于ARM-FPGA结构的便携式数字存储示波器硬件平台设计.docx

上传人:可**** 文档编号:1607765 上传时间:2024-05-06 格式:DOCX 页数:43 大小:688.25KB 下载积分:10 金币
下载 相关 举报
基于ARM-FPGA结构的便携式数字存储示波器硬件平台设计.docx_第1页
第1页 / 共43页
基于ARM-FPGA结构的便携式数字存储示波器硬件平台设计.docx_第2页
第2页 / 共43页


点击查看更多>>
资源描述
设计 摘 要 便携式数字存储示波器是现代示波器发展的方向之一,但由于其技术含量及高,尚无本国产品上市,属于测试仪表方面众目交注的领域。ARM是32位的RISC处理器,高性能、低功耗是其显著特点,已被广泛应用与各种潜入式领域。在便携式电子产品的设计中,采用FPGA器件可以将原来的电路板级产品集成为芯片级产品,做到功耗低、可靠性高。 本文提出了一种基于ARM+FPGA结构的便携式数字存储示波器硬件平台设计方案,FPGA主要用于大量的数据存储,ARM则负责数据的进一步处理和控制波形的重建、显示和数据永久存储。系统的前端芯片选用Altera公司最新一代的MAX Ⅱ系列高性能、低功耗FPGA芯片,系统后端ARM处理器则选用三星公司基于ARM7TDMI-S内核的多功能、低功耗ARM单片机——LPC2210,系统利用彩色LCD作为终端显示设设备,利用其基于自带的存储器存储永久波形数据,且自带有JTAG调试接口,便于设计。 ABSTRACT It is one of the directions of modern oscilloscope development that the portable digital storage oscilloscope, because its technological content is extremely high, there are no national products to go on the market, It is a field concerned by a lot of eyes in testing the instrument. ARM is 32 bits RISC processor, high performance, low consumption are its remarkable characteristic, have already widely used in various kinds of embedded fields. In portable electronic product design, using FPGA may upgrade printed circuit product to integration circuit, depress power consumption and enhance reliability. The paper has proposed a kind of hardware platform design plan of the portable digital storage oscilloscope based on ARM+FPGA structure. FPGA is used as data memory, ARM is responsible for the back end waveform rebuilding, displaying and the data storing for ever. The chip of the systematic front, we select Altera Company’s MAX Ⅱseries for use that is the most new generation high performance, low consumption FPGA chip, the ARM processor of the systematic back end, we select Samsung Company’s the multi-functional、low consumption ARM chip based on ARM7TDMI-S kernel ——lpc2210, the system utilizes multicolor LCD as the terminal display device, to utilize the memory of lpc2210 to store the waveform data for ever, the JTAG debugging interface of lpc2210 make it convenient for design. Key words ARM Embedded Monitoring System, Portable Digital Storage Oscilloscope, Redundant date lost by hardware, LCD 目 录 摘 要 I ABSTRACT II 1 绪 论 1 2 设计要求 2 2.1 方案设计 2 2.2 实现的功能和技术指标 3 3 单片机LPC2210简介 4 3.1 ARM处理器核简介 4 3.1.1 ARM嵌入式系统 4 3.1.2 ARM处理器介绍 5 3.1.3程序状态寄存器 5 3.2 单片32位微控制器-LPC2210 7 3.2.1 LPC2210介绍 7 3.2.2特性 7 3.2.3结构框图 8 3.2.4管脚信息 9 3.2.5功能描述 9 4 硬件平台的模块介绍 12 4.1信号调理电路 12 4.1.1 输入信号保护和衰减电路的设计 12 4.1.2 信号放大电路的设计 13 4.2 A/D转换模块 14 4.2.1特性 14 4.2.2描述 14 4.2.3操作 17 4.3 显示模块 18 4.4键盘输入模块 19 4.4.1 ZLG7290芯片描述 19 4.4.2 I2C接口 22 5 软件开发环境介绍 27 5.1 ADS 1.2 集成开发环境的组成 27 5.2 CodeWarrior IDE 简介 27 5.3 Easy JTAG防真器的安装与运用 27 5.4 安装EasyJTAG仿真器 28 5.5 使用EasyJTAG仿真器 28 6 系统软件设计 29 6.1 硬件丢失和软件丢失 29 6.2 程序设计的方案选择 30 6.3 数字存储示波器的实际性能指标 32 6.4 应用程序 33 结 论 39 参考文献 40 附录A: 液晶模块驱动程序 41 附录B: 液晶模块驱动程序头文件 51 附录C: I2C中断服务程序 57 附录D: I2C中断程序头文件 62 致 谢 63 1 绪 论 便携式数字存储示波器是其发展方向之一,尽管在国际上数字存储示波器的技术产品已经逐渐成熟,但我国目前在其生产领域内还处于起步阶段,还没有其产品上市2 设计要求 2.1 方案设计方案一: 采用一种“CPLD+单片机”的两层控制方案,其底层控制由CPLD或普通IC为核心的高速逻辑控制电路组成,实现对系统的实时控制和高速的数据采集、存储与运输;顶层控制由一个单片机系统组成,实现人-机交互、数据处理等项工作。这种“CPLD+单片机”的控制方案能使单片机和高速逻辑器件扬长避短地结合在一起。 根据以上分析,设计的简易数字存储示波器的总体方案如下图2.1所示。图中主要由CPLD组成的高速逻辑控制电路实施控制。除此之外,为了实现对已经存储在RAM中的测量数据进行处理,单片机也应该能对RAM进行读/写操作,所以还必须把单片机的地址通过数据选择器连接到RAM的地址线上,把数据线通过锁存器连接到RAM的数据线上。 输入 电路 A/D 转换 双口RAM D/A 转换 D/A 转换 触发电路 直接控制逻辑电路(CPLD) (Y输入) (X输入) 普通 示波器 键盘与 显示电路 单片机控制电路 双口 RAM接口 图2.1 数字存储示波器总体方案一 方案二: 由于在上述设计方案中,双口RAM器件非常耗费CPLD的管脚资源,电路接线较多,系统的可靠性不够高。因此,我们在这种方案中采用内含嵌入式阵列的可编程器件FPGA,该类器件包含嵌入式阵列和逻辑阵列,其中嵌入式阵列由一系列具有实现逻辑功能和存储功能的EAB组成,EAB是在输入、输出口上带有寄存器的RAM块,利用它可以非常方便地实现双口RAM和FIFO等功能。因此采用这种可编程器器件可以将直接逻辑控制电路和双口RAM集成在一个芯片中,这样就使系统的硬件连线大幅度减少,进一步提高了系统的可靠性并能缩短研制周期。而单片机我们选择ARM嵌入式单片机,因为它可以选择液晶显示屏作为它的外设,且可以不需要经过D/A转换而直接将数字信号输出到液晶显示屏上,这不仅可以再一步大大减少硬件电路,还能提高显示波形的精度,因此确定为最佳方案,如下调 理 电 路 FPGA(A/D转换、存储) LPC2210 单 片 机 显 示 屏 键 盘 图2.2所示。 图2.2数字存储示波器总体方案二 2.2 实现的功能和技术指标 本设计实现的功能为,将输入端的被测信号经过信号调理电路处理,然后输入到A/D转换器将信号转换为十位的数字信号,再输入到单片机进行处理、控制,同时输入到存储器进行存储,单片机将处理过的数字信号输入在显示屏上控制显示当前的数据,只有当键盘键入要显示某个时间段内历史数据的时间时,单片机根据输入的时间数据,从存储器中找到与时间对应的历史数据块,并将其输送到显示器显示出历史数据。 设计参数: 通道:单通道; 采样速度:>=2.44us(可变的); 垂直分辨率为:10位; 存储深度:32KB; 显示:LCD(彩色:整个屏幕320×240点) 3 单片机LPC2210简介 本设计采用基于ARM内核的LPC2210单片机,用键盘实现控制历史数据和当前数据显示的切换功能,采用2.2英寸240×320TFT液晶屏显示,将实时采集的数据信息经过必要的数据处理后输出到显示屏显示,同时也可以通过键盘输入控制显示所需的时间段内的波形,下面简单介绍设计中用到的单片机的概述和结构以及设计的硬件平台。 3.1 ARM处理器核简介 3.1.1 ARM嵌入式系统 1.ARM嵌入式系统构成 对嵌入式系统比较准确的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。我们日常生活中使用的手机,PDA. MP3播放器,冰箱,空调,微波炉等都是嵌入式系统的具体应用。由于普通单片机无法满足便携式的、复杂的应用对性能、体积和功耗等的苛刻要求,所以目前的高端嵌入式应用都是采用的32位的微处理器,普通8位、16位单片机只能用于低端的控制系统,随着微处理器技术的不断发展,它们将逐渐淡出历史舞台。 一个基于操作系统的完整的ARM嵌入式系统包括软件和硬件,具体可以分为五个部分:ARM硬件平台、板级支持包BSP,操作系统、驱动程序和应用程序。其中的板级支持包BSP是操作系统与硬件的桥梁,其作用相当于PC机中的BIOS.还有一种比较简单的ARM嵌入式系统它不包含操作系统,于是整个系统可以分为三个部分,ARM 硬件平台、系统初始化程序、应用程序。其中系统初始化程序用于初始化系统硬件,作为硬件与应用程序的接口. 2.ARM嵌入式系统的发展趋势 网络、通信、多媒体和信息家电时代的到来,为32 位嵌入式系统高端应用提供了空前巨大的发展空间。一般来说,嵌入式系统的高、低端应用模糊地界定成为:高端用于具有海量数据处理的网络、通信和多媒体领域,低端则用于对象系统的控制领域。32位机的市场需求发展由2 方面所致:一方面是高端新兴领域(网络、通信、多媒体和信息家包)的拓展;另一方面是低端控制领域应用在数据处理能力的提升要求。后PC 时代的到来以及32 位嵌入式系统的高端应用,吸引了大量计算机专业人士的介;加之嵌入式系统软、硬件技术的发展,导致了嵌入式系统应用模式的巨大变化。在众多嵌入式系统厂家参与下,基于ARM 系列处理器的应用技术,会在众多领域取得突破性进展。 3.1.2 ARM处理器介绍 ARM所提供的嵌入式RISC内核有:ARM7,ATM9,ARM9EARM.10.SecurCore等。而本次设计使用的ARM7系列.ARM7系列包括:ARM7TDMI,ARM7TDMIS-S.带有高速缓存处理器宏单元的ARM720T和扩充了Jazelle的ARM7EJ-S.该系列处理器是使用3级流水线的ARM核,它提供16位Thumb压缩指令集和EmbeddedICE JTAG软件调试方式,适合应用于大规模的SoC设计。其中ARM720T芯核提供内存管理功能(MMU)和8KB缓存的高速缓存处理单元.ARM7系列芯片被Linux.SymbianOS和WindowCE等操作系统所支持,广泛应用于多媒体和嵌入式设备,包括Internert设备.网络和调制解调器设备,以及移动电话,PDA等无限设备.3.1.3程序状态寄存器 程序状态寄存器在程序设计中起着十分重要的作用,特别是在定时器的应用和产生中断的程序中均需要用到此知识。因此在此将介绍一下其相关内容。 ARM7TDMI-S 内核包含1 个CPSR 和5 个SPSR 供异常处理程序使用程序状态寄存器 1. 保持条件代码标志 2.控制中断的使能和禁止 3.设置处理器操作模式 位的分配如图3.1所示 图3.1程序状态寄存器格式 (1)条件代码标志 N, Z, C 和V 位都是条件代码标志可以通过算术和逻辑操作来设置这些位,这些标志还可通过MSR和LDM 指令进行设置ARM7TDMI-S 处理器,对这些位进行测试以决定是否执行一条指令。 在ARM 状态中所有指令都可按条件来执行,在Thumb状态中只有分支指令可条件执行,更详细的信息参考ARM 体系结构参考手册。 (2) 控制位 PSR的最低8位为控制位它们分别是:中断禁止位、T 位、模式位。当发生异常时控制位改变,当处理器在一个特权模式下操作时,可用软件操作这些位。 I 和F 位都是中断禁止位:当I 位置位时IRQ 中断被禁止,当F 位置位时FIQ 中断被禁止 T 位反映了正在操作的状态,当T 位置位时处理器正在Thumb 状态下运行,当T 位清零时处理器正在ARM 状态下运行 操作状态通过CPTBIT 外部信号反映 警告绝对不要强制改变CPSR 寄存器中的T 位如果这样做处理器会进入一个无法预知的状态 模式位 M4, M3, M2, M1 和M0 位M[4:0] 都是模式位这些位决定处理器的操作模式见表3.1不是所有模式位的组合都定义了有效的处理器模式因此请小心不要使用表中所没有列出的组合 表3.1 0PSR 模式位值 M[4:0] 模式 可见的Thumb状态寄存器 可见的ARM状态寄存器 10000 用户 r0~r7,SP,LR,PC,CPSR r0~r14,PC,CPSR 10001 FIQ r0~r7,SP_fiq,LR_fiq,PC,CPSR,SPSR_fiq r0~r7, r8_fiq~r14_fiq,PC,CPSR,.SPSR_fiq 10010 IRQ r0~r7, SP_irq,LR_irq,PC,CPSR,.SPSR_fiq r0~r12, r13_irq,r14_irq,PC,CPSR,.SPSR_irq 10011 超级用户 r0~r7, SP_svc,LR_svc,PC,CPSR,.SPSR_svc r0~r12, r13_svc,r14_svc,PC,CPSR,.SPSR_svc 10111 中止 r0~r7 ,SP_abt,LR_abt,PC,CPSR,.SPSR_abt r0~r12, r13_abt,r14_abt,PC,CPSR,.SPSR_abt 11011 未定义 r0~r7, SP_und,LR_und,PC,CPSR,.SPSR_und r0~r12, r13_und,r14_und,PC,CPSR,.SPSR_und 11111 系统 r0~r7,SP,LR,PC,CPSR 注:如果将非法值写入M[4:0]中处理器将进入一个无法恢复的模式 (3)保留位 PSR 中的保留位被保留将来使用。当改变PSR 标志和控制位时,请确认没有改变这些保留位。另外,请确保您的程序不依赖于包含特定值的保留位,因为将来的处理器可能会将这些位设置为1或者0。 3.2 单片32位微控制器-LPC2210 3.2.1 LPC2210介绍 3.2.2特性 双电源:CPU操作电压范围:1.65~1.95 V(1.8 V± 0.15 V);I/O操作电压范围:3.0~3.6 V(3.3 V± 10%),可承受5V电压。3.2.3结构框图 3.2.4管脚信息 管脚排列 图3.3 LQFP144管脚排列3.2.5功能描述 结构概述 ARM7TDMI-S是一个通用的32位微处理器,它可提供高性能和低功耗。ARM结构是基于精简指令集计算机(RISC)原理而设计的。指令集和相关的译码机制比复杂指令集计算机要简单得多。这样使用一个小的、廉价的处理器核就可实现很高的指令吞吐量和实时的中断响应。 由于使用了流水线技术,处理和存储系统的所有部分都可连续工作。通常在执行一条指令的同时对下一条指令进行译码,并将第三条指令从存储器中取出。 ARM7TDMI-S处理器使用了一个被称为THUMB的独特的结构化策略,它非常适用于那些对存储器有限制或者需要较高代码密度的大批量产品的应用。 在THUMB后面一个关键的概念是“超精简指令集”。ARM7TDMI-S处理器基本上具有两个指令集:标准32位ARM指令集和16位THUMB指令集 中断控制器 模块 标志 VIC通道 WDT 看门狗中断(WDINT) 0 - 只保留给软件中断使用 1 ARM内核 EmbeddedICE,DbgCommRx 2 ARM内核 EmbeddedICE,DbgCommTx 3 定时器0 匹配0-3(MR0,MR1,MR2,MR3) 4 定时器1 匹配0-3(MR0,MR1,MR2,MR3) 5 UART0 Rx线状态(RLS) 发送保持寄存器空(THRE) Rx数据可用(RDA) 字符超时指示(CTI) 6 UART1 Rx线状态(RLS) 发送保持寄存器空(THRE) Rx数据可用(RDA) 字符超时指示(CTI) 调制解调器状态中断(MSI) 7 PWM0 匹配0-6(MR0,MR1,MR2,MR3,MR4,MR5,MR6) 8 I2C SI(状态改变) 9 SPI0 SPIF,MODF 10 SPI1 SPIF,MODF 11 PLL PLL时钟(PLOCK) 12 RTC RTCCIF(计数器增加),RTCALF(报警) 13 系统控制 外部中断0(EINT0) 14 外部中断1(EINT1) 15 外部中断2(EINT2) 16 外部中断3(EINT3) 17 A/D A/D转换器 18 管脚连接模块 管脚功能选择寄存器 4 硬件平台的模块介绍 4.1信号调理电路 信号调理电路的主要作用在于完成对被测信号的程控放大和衰减、交/直流耦合、信号平移等预处理,使输入信号适合A/D转换的电气性能。本课题中的信号调理电路主要完成被测信号的程控衰减和程控放大。本课题选择的高速A/D转换器单极性的10位高速A/D转换器,最短采样时间为2.44μs,它所允许的输入信号电压范围是(-0.5V,+0.5V),故我们所设计的信号调理电路要将测量范围之内的所有频率和幅值的信号调理到(-0.5V,+0.5V),而且不能有太大的失真。 4.1.1 输入信号保护和衰减电路的设计 图4.1是其输入保护及衰减电路原理图。 图4.1输入保护及衰减电路原理图 图4.2 电阻衰减网络 被测信号从InPut端输入之后,经过由三个双极性的限幅二极管串联形成的限幅电路,以保护后面的模拟开关、运算放大器和A/D转换器等等。放大其中串联的目的是减小二极管的反向漏电流,限幅电路的幅值为士3V。即只允许幅值为(-3V,+3V)的信号无失真的通过。由于高速A/D转换器允许的输入信号电压范围为(-0.5V,+0.5V),所以在被测信号的幅值大于±0.5V时,就需要对被测信号进行无失真的衰减,使其幅值衰减到(-0.5V,+0.5V)范围之内。 衰减电路的原理如图4.2所示。图4.2给出的是一个电阻衰减网络。开关Kl和K2是联动的,K3 和K4是联动的,即Kl和K2、K3和K4同时闭合和断开。现假设Kl和K2闭合,K3和K4断开,输入信号就从电阻Rl、R2上通过。其中R1=9K,R2=lK,若输入信号的幅值为A,则输出信号的幅值应为×A,即为,也就是说输出信号经电阻衰减网络后变为了原来的了,同理若K1、K2断开,K3、K4闭合,输出信号就变为原来的。 根据实际需要,我们设置了四条通路。第一条通路不进行衰减,第二条通路衰减至原信号的5/8,第三条通路衰减至原信号的1/8,第四条通路衰减至原信号的1/40。这四条通路是在单片机的控制下依次通断的。即第一次不衰减,如果大了(若A/D的输出值出现全0和全1,则说明被测信号的幅值大了),就衰减至原信号的5/8,如果仍然大了,就衰减至原信号的1/8,如果还大了,就衰减至原信号的1/40,即衰减倍数为(1-5/8-1/8-1/40)。由于输入信号的最大幅值为士3V,如果衰减至原信号的1/8,就成了±0.375V,刚好满足要求。模拟开关ADG734内部集成了四个单刀双掷(SPDT)开关。它的真值表如图4.3所示. 图4.3 模拟开关真值表 单片机通过监测A/D转换器送来的数据,来决定这些开关是应该开启还是应该关断,控制的方式非常简单,向这些开关的IN端发送低电平(0)则开关关断,发送高电平(1)则开关开启。这样也就控制了这四条线路的通断。 4.1.2 信号放大电路的设计 和输入大信号衰减电路相对应,调理电路还包括对输入小信号的放大电路,以便使采样值更精确。图4.4给出了比例放大电路的电路原理图。 在这里我们选择同相比例放大电路,放大倍数分别为1倍,6.25倍,12.5倍和25倍,选择同相比例放大倍数的目的;一是可以不改变信号的相位;而是同相比例放大电路的输入阻抗大而输出阻抗很小。但同相比例电路对运算放大器的要求比较高,所以我们选择ADI公司的高性能运算放大器(AD8033)。下面对同相比例电路的原理做一个简要介绍。图4.5给出了同相比例电路的原理图。由图可以看出,在R’=Ri//Rf的条件下,Uo和Ui的关系可以表示为:Au=Uo/Ui=(1+Rf/Ri) 由此可以看出,如果放大倍数要发生变化,则(Rf/Ri)要发生变化,这样就要求R'也相应的发生变化。所以在图4.5中设计了四个电阻分别与相应的放大倍数相对应。 图4.4 比例放大电路的电路原理图 图4.5 同相比例电路 4.2 A/D转换模块 4.2.1特性 4.2.2描述 名称 描述 访问 复位值 地址 ADCR A/D控制寄存器A/D转换开始前,必须写入ADCR寄存器来选择工作模式 读/写 0x00000001 0xE0034000 ADDR A/D数据寄存器该寄存器包含ADC的DONE位 (当DONE位为1时)和10位的转换结果 读/写 NA 0xE0034000 ADCR 名称 描述 复位值 7:0 SEL 从Ain7:0中选择采样和转换输入脚在48或64脚封装中只有位3:0 可置位软件控制模式下只有一位可被置位硬件扫描模式下SEL 可为18中的任何一个值在48或64脚封装中SEL从14中取值 SEL为零时等效于为0x01 0x01 15:8 CLKDIV 将VPB时钟PCK进行CLKDIV的值+1分频得到A/D转换时钟 该时钟必须小于或等于4.5MHz典型地软件将CLKDIV编程为最小 值来得到4.5MHz或稍低于4.5MHz的时钟但某些情况下例如高阻 抗模拟电源可能需要更低的时钟 0 16 BURST 如果该位为0转换由软件控制需要11个时钟方能完成如果该位 为1A/D转换器以CLKS字段选择的速率重复执行转换如果必要 并从DEL字段中为1的位对应的管脚开始扫描A/D转换器起动后的第一次转换的是SEL字段中为1的位中的最低有效位对应的模拟输入然后是为1的更高有效位对应的模拟输入如果可用重复转换通过清零该位终止但该位被清零时并不会中止正在进行的转换 0 19:17 CLKS 该字段用来选择突发模式下每次转换使用的时钟数和所得ADDR转换结果的LS位中可确保精度的位的数目CLKS可在11个时钟10位4个时钟3位之间选择00011个时钟/10位00110个时钟/9 位,…1114个时钟/3位 000 21 PDN 1:A/D转换器处于正常工作模式 0:A/D转换器处于掉电模式 0 23:22 TEST1:0 这些位用于器件测试00正常模式01数字测试模式10DAC 测试模式11一次转换测试模式 0 26:24 START 当BURST为0时这些位控制着A/D转换是否启动和何时启动; 000:不启动PDN清零时使用该值 001:立即启动转换 010:ADCR寄存器位27选择的边沿出现在P0.16/EINT0/ MAT0.2/CAP0.2脚时启动转换 011:ADCR寄存器位27选择的边沿出现在P0.22/TD3/CAP0.0/ MAT0.0脚时启动转换 注意:START的值为100-111时MAT信号不必输出到管脚上 100:ADCR寄存器位27选择的边沿出现在MAT0.1时启动转换 101:ADCR寄存器位27选择的边沿出现在MAT0.3时启动转换 110:ADCR寄存器位27选择的边沿出现在MAT1.0时启动转换 111:ADCR寄存器位27选择的边沿出现在MAT1.1时启动转换 000 27 EDGE 该位只有在START字段为010111时有效 0在所选CAP/MAT信号的下降沿启动转换 1在所选CAP/MAT信号的上升沿启动转换 0 DONE 4.2.3操作 4.3 显示模块 本模块主要包括一个2.2英寸240×RGB×320TFT液晶屏,真彩色262K色。TFT4267液晶模块的工作电压为3.3V,内带白光LED背光灯,可以直接使用8位、16位或18位总线方式与控制器连接(因为液晶模块内部包含了HD66781和HD66783液晶控制驱动器)。为了得到更高的数据传输速率,设计电路时采用16位总线接口,按照HD66781芯片数据手册说明,需要将IM3和IM0引脚接0电平,16位数据分别为DB17~DB10和DB8~DB1引脚,未使用的DBO和DB9引脚应接地,电路连接如图4.6的J1所示,相关控制信号与主板的连接如表4.5所示 图4.6 TFT4267液晶模块应用电路 表4.5 TFT液晶接口电路与主板的信号连接 TFT液晶接口电路 主板LPC2210 备注 DB0~DB15 D0~D15 16位总线接口,操作地址 索引/指令—0x83200000 数据读/写—0x83200002 A1 A1 nCS LCM_Ncs0 nWE nWE nOE nOE RESET P0.22 低电平时TFT4267复位 LEDC P0.21_PWM5 FTF4267背光灯开/关控制 将TFT4267液晶模块的RESET引脚连接到主板LPC2210的P0.22上,使其控制液晶模块复位。TFT4267液晶模块的CS、WR和RD引脚均连接到主板的LPC2210的片选、写和读信号。而RS引脚则使用A1连接,当A1为高电平时为数据操作,当A1为低电平时为命令操作,即使用两个不同的地址来区别向TFT4267液晶模块发送命令还是发送数据。 TFT4267液晶模块的背光是LED背光,采用4个白光LED串连连接,所以要设计相应的升压电路。CAT32TDI就是专门用于白光LED驱动的升压芯片,可以驱动4个串连的白光LED。CAT32TDI的为输出关闭控制引脚,由LEDC信号控制(与主板的LPC2210的PWM引脚P0.21相连,可以使用PWM控制背光的亮度),为了保证LEDC连接的I/O在没有配置为输出时也能点亮LED背光,所以接了10kΩ的上拉电阻R1。CAT32TDI芯片为恒流输出,输出电流由R11控制,即 ILED=225×0.1/R11=225×0.1/1500=0.015A=15mA 4.4键盘输入模块 该模块采用ZLG7290芯片及I2C接口组成键盘输入模块 4.4.1 ZLG7290芯片描述 一、特点 1.I2C串行接口,提供键盘中断信号, 方便与处理器接口: 2.可驱动8位共阴数码管或64只独立LED和64个按键: 3.可控扫描位数 可控任一数码管闪烁: 4.提供数据译码和循环 移位 段寻址等控制: 5.8个功能键,可检测任一键的连击次数: 6.无需外接元件即直接驱LED可扩展驱动电流和驱动电压 7.提供工业级器件,多种封装形式PDIP24,SO24。 二、引脚及说明 采用24引脚封装,引脚图如图4.7所示:其引脚功能分述如下: 图4.7 ZLG7290封装图 三、功能描述 1.键盘部分 ZLG7290可采样64 个按键或传感器,可检测每个按键的连击次数。 其基本功能如下: (1)键盘去抖动处理 当键被按下和放开时,可能会出现电平状态反复变化,称作键盘抖动。若不作处理会引起按键盘命令错误,所以要进行去抖动处理 以读取稳定的键盘状态为准 (2)双键互锁处理 当有两个以上按键被同时按下时,ZLG7290只采样优先级高的按键(优先顺序为S1>S2>…>S64,如同时按下S2 和S18时采样到S2)。 (3)连击键处理 当某个按键按下时,输出一次键值后,如果该按键还未释放,该键值连续有效,就像连续压按该键一样,这种功能称为连击。连击次数计数器(RepeatCnt) 可区别出单击(某些功能不允许连击 如开/关)或连击。判断连击次数可以检测被按时间,以防止某些功能误操作(如连续按5秒经入参数设置状态)。 (4)功能键处理 功能键能实现个2以上按键同时按下来扩展按键数目或实现特殊功能如:PC机上的“Shift”、“ Ctrl”、“ Alt”键。典型应用图中的S57~S64为功能键。 图4.8 系统功能框图即寄存器眏射图 四、寄存器详解 系统状态部分 1.系统寄存器(SystemReg):地址00H,复位值11110000B。系统寄存器保存ZLG7290系统状态,并可对系统运行状态进行配置,其功能分位描述如下: KeyAvi(SystemReg.0):置1时表示有效的按键动作(普通键的单击,连击,和功能键状态变化)/INT引脚信号有效(变为低电平):清0表示无按键动作,/INT引脚信号无效(变为高阻态)。有效的按键动作消失后或读Key后,KeyAvi位自动清0。 键盘部分 2. 键值寄存器(Key):地址01H,复位值00H。Key表示被压按键的键值。当Key=0时,表示没有键被压按。 3. 连击次数计数器(RepeatCnt):地址02H,复位值00H。RepeatCnt=0时,表示单击键。RepeatCnt大于0时,表示键的连击次数。用于区别出单击键或连击键,判断连击次数可以检测被按时间。 4. 功能键寄存器FunctionKey地址03H,复位值0FFH。FunctionKey对应位的值=0表示对应功能键被压按(FunctionKey.7 FunctionKey.0对应S64~S57)。 命令接口部分。 5. 命令缓冲区(CmdBuf0~CmdBuf1):地址07H~08H,复位值00H~00H,用于传输指令。 五 通信接口 ZLG7290的I2C接口传输速率可达32kbit/s。容易与处理器接口。并提供键盘中断信号,提高主处理器时间效率。ZLG7290的从地址(slave address)为70H(01110000B)。 有效的按键动作(普通键的单击,连击和功能键状态变化),都会令系统寄存器(SystemReg) 的KeyAvi位置1,/INT引脚信号有效(变为低电平)。用户的键盘处理程序可由/INT引脚低电平中断触发,以提高程序效率:也可以不采样/INT引脚信号节省系统的I/O数,而轮询系统寄存器的KeyAvi位。要注意读键值寄存器会令KeyAvi位清0,并会令/INT引脚信号无效。为确保某个有效的按键动作所有参数寄存器的同步性,建议利用I2C通信的自动增址功能连续读RepeatCnt,FunctionKey和Key寄存器,但用户无需太担心寄存器的同步性问题,应为键参数寄存器变化速度较缓慢(典型250ms,最快9ms)。 ZLG7290内可通过I2C总线访问的寄存器地址范围为:00H~17H,任一寄存器都可按字节直接读写,也可以通过命令接口间接读写或按位读写,请参考指令详解部分,支持自动增址功能(访问一寄存器后,寄存器子地址(subaddress) 自动加一)和地址翻转功能(访问最后一寄存器(子地址=17H)后,寄存器子地址翻转为00H)。ZLG7290的控制和状态查询全部都是通过读/写寄存器实现的,用户只需象读写24C02内的单元一样,即可实现对ZLG7290的控制,关于I2C 总线访问的细节请参考I2C总线规范 六、键盘硬件设计如下图所示: 图4.9 键盘硬件设计图 4.4.2 I2C接口 I2C是一个双向总线,它使用两条线:串行时钟线(SCL)和串行数据线(SDA)实现互连芯片的控制。每个器件都通过一个唯一的地址来识别,这些器件可以是只接收器件(例如LCD驱动器),或是可以发送和接收信息的发送器(例如存储器)。发送器或接收器可以操作为主或从模式,这取决于芯片是启动数据的发送还是只被寻址。I2C是一个多主总线,它可以由超过一个总线主控制进行控制。 LPC2210所包含的I2C功能支持400Kbit/s(快速I2C)。 1.特性 标准的I2C总线接口 可配置为主机、从机或主/从机 可编程时钟可实现通用速率控制 主机从机之间双向数据传输 多主机总线(无中央主机) 同时发送的主机之间进行仲裁,避免了总线数据的冲突 串行时钟同步使器件在一条串行总线上实现不同位速率的通信 串行时钟同步可作为握手机制使串行传输挂起和恢复 I2C总线可用于测试和诊断 2.应用 与外部标准I2C部件接口,例如串行、RAM、LCD、音调发生器等等 3.描述 I2C总线的典型配置如图4.10所示。根据方向位(R/W)状态的不同,I2C总线上存在以下两种类型的数据传输: 图4.10 I2C总线配置 从主发送器向从接收器发送数据。主机发送的第一个字节
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服