当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]本设计以控制能力突出,外设接口丰富,运算速度快的ARM芯片LPC1788作为控制、数据处理核心,使用了位于AHB总线上能进行快速访问的多个GPIO口以扩展定制的宽温液晶屏,对各种信息的显示明确、清晰、实时、稳定可靠,并能在恶劣的环境中正常工作。

石油行业中的测井技术是一种井下油气勘探方法,用于发现油气藏,评估油气储量及其产量。从1927年发展至今已经出现第五代测井系统,即成像测井系统。成像测井系统通过成像井下仪传感器阵列扫描或旋转扫描测量,沿井眼纵向、周向或径向采集地层信息,经测井电缆传输到井上成像测井地面系统,使用图象处理技术得到井壁的二维图象或井眼周围某一探测深度以内的三维图象。这比以往测井系统的曲线表示方法更精确、更直观、更方便。

第四代数控测井地面系统以LED指示灯、数码管等作为显示器件,存在显示信息量小,扩展不灵活,电路复杂等诸多缺点。本设计以控制能力突出,外设接口丰富,运算速度快的ARM芯片LPC1788作为控制、数据处理核心,使用了位于AHB总线上能进行快速访问的多个GPIO口以扩展定制的宽温液晶屏,对各种信息的显示明确、清晰、实时、稳定可靠,并能在恶劣的环境中正常工作。

1 NXP LPC1788 ARM处理器简介

LPC1788是恩智浦公司新推出的一款基于ARM Cortex-M3的微控制器,用于处理要求高集成度和低功耗的嵌入式应用。本系统选用此芯片作为主控芯片是由于它具备以下突出特点:

1)LPC1788是下一代内核Cortex—M3架构,在相同的时钟速率下能提供比ARM7更高的性能,频率可以高达120 MHz.

2)多达165个可配置上拉/下拉电阻、开漏模式的通用I/O管脚,控制能力强大。

3)一个以太网MAC带MII/RMII,便于数据的传输。5个UART,带小数波特率发生功能,支持RS-485/EIA-485.

4)12位模数转换器(ADC),可在8只管脚之间实现多路输入,转换速率高达400 kHz,并具有多个结果寄存器。12位ADC可以与GPDMA控制器一起使用。

5)LPC1788的管脚引出线可与LPC24xx和LPC23xx保持管脚功能兼容,方便系统的升级。

2 ARM显示系统组成

图1是ARM显示系统工作原理示意图。ARM LPC1788是整个系统的核心,它主要有以下几个方面的功能:一方面负责收发网络和串口上的数据,另一方面用内置AD采集直流交流供电回路上的电压电流信号,并控制液晶屏显示相关信息。



图2是实际电路图截选。

ARM LPC1788、晶振电路、供电电源、复位电路、驱动电路和其他外围电路封装成一个小模块LPC1788 MODULE,通用化,以方便系统共用。程序调试和下载使用JTAG口。D2为MC1413,负责控制继电器的通断。XS10:RJ45接网线,和上位机进行数据交换。XS8为液晶屏接口,分别把数据线D0-D7,地址线A0-A1,控制线CS0、WR、RD接到液晶屏相应端口上去。ARM模块管脚70-73是LPC1788内部AD收入,采集模拟信号。串口为49、50两管脚,与单片机C8051F040转发数据。



2.1显示部分

电路成像测井地面系统在野外环境工作,条件比较恶劣,要求高温和低温情况下都能正常地使用。为了达到这点,本系统选用了宽温型芯片(达到-40~85℃的指标)及宽温型液晶显示屏。基本原理如图3所示。



LPC1788 P3口、P4口出来的地址信号、片选信号、读写信号和数据信号,经三态输出到16位总线收发器SN74LVC16245并经驱动连接到液晶屏控制电路上的CPLD进行逻辑控制,并和其相应的存储器进行数据交换。同时,DC/DC电压变化器供给液晶屏所需各种电压,背光供电电路给液晶屏背光灯供电。逻辑控制部分加入缓冲技术,可以让写入与显示同时进行,避免雪花现象,实现高速刷新。

此液晶屏为点阵型液晶屏,由480x272个显示单元组成,显示字符相对复杂。每一个汉字都可以认为是由许多个点组成点阵所构成的。此屏每8列对应一个字节的8位,即每行由60字节共60x8=480个点组成,屏上272x60个显示单元与显示存储器区16 320字节对应,每一字节的内容和显示屏上相应位置的亮暗对应。当一行的字节写满刷新屏幕后,自动跳转到下一行写新的字节,如此,写满整屏。本设计每一个字符由20x16点阵组成,共需要40字节才能写完一个字。

控制液晶屏方式为并行总线控制(片选信号/CS、读信号/RD、写信号/WR、数据总线D[7:0]、地址总线A[1:0])。既可以像普通存储器一样使用EMC方式控制,所有操作均对寄存器进行读写;也可以用GPIO方式控制,严格按照时序控制相应端口置高低电平。液晶屏需要四个寄存器,列地址寄存器(X)、行地址寄存器(Y)、状态寄存器(CME))和数据寄存器(DAT)。每个寄存器的位宽是8bit,而行(列)寄存器地址取值范围均超过255,需占9bit,所以行(列)地址寄存器必须连续写两次,第一次写低8位,第二次写高位地址。在此期间,不可以对其他三个寄存器做任何操作。在单点写时,控制寄存器写0就可以。显示数据通过数据寄存器写入和读出,每次读写操作后地址自动沿X方向加一。

读写时,先指定行列地址。然后从此点开始进行连续读写,无须重新设置行列地址。在显示数据每次写操作后,列地址自动加1.当地址加到行尾时,地址将跳到下一行的行首。当写一个新行时,需重新设置行列地址。

2.2数据收发电路

本设计共有两种数据收发总线:

1)以太网。以太网因应用广泛,技术成熟,具有独立性和灵活性的优点,适用于本系统结构化综合布线格局,且便于和计算机交换数据。故成像测井地面系统各分系统之间连接使用以太网网络总线。ARM LPC1788 MAC通过RMII接口与PHY芯片IAN8720连接,主要负责接收当前系统的控制令、上传采集到的数据和系统工作状态。

2)串口。串口通信原理简单,稳定可靠,主要作为数据通路的转发器,转发控制命令。其主要控制两路DAC提供基准电压,调节整个电路状态以便于AD采集。

2.3 AD采样电路

LPC1788内含8通道12位逐次逼近式模数转换器,转化速度高达400 kHz,并可高速采集多路模拟信号。逐次逼近式模数转换器由一个比较器和D/A转换器通过逐次比较逻辑构成,从MSB开始,顺序地对每一位将输入电压与内置D/A转换器输出进行比较,经n次比较而输出数字值。前级电路对原始信号进行检波、放大、电流电压转换、滤波等预处理以满足AD的测量要求。

3软件设计

ARM LPC1788上电后自动进行初始化操作。首先,程序初始化设置系统时钟,分频晶振频率;设置外设功率寄存器PCONP,使能以太网、串口及GPIO自身和IOCON等外设寄存器,禁止其他外设功能以节省功耗;设置I/O配置寄存器IOCON,控制器件需要使用管脚的功能;设置GPIO端口方向寄存器FIOxDIR、端口屏蔽寄存器FIOxMASK、端口输出设置寄存器FIOxSET、端口输出清零寄存器FIOxCLR、端口管脚值寄存器FIOxPIN等。其次,对液晶屏清屏,配置液晶屏底色及字体颜色;设置8点写模式,提高显示速度,并显示恒定不变的信息。然后,控制输出基准电平以调整电路状态以便能采集到稳定正确的模拟信号。当接收命令和初始化完成后,LPC1788网络口等待接收上位机命令,判断刷新标志是否有效:有效则清除刷新标志,并依次进行数据采集、显示数据、给上位机上传采集到的数据等操作;无效则接收并处理新命令。程序流程图如图4所示。


4结束语

该系统以ARM LPC1788为核心,外扩宽温总线型液晶显示屏输出显示。以10/100M以太网络作为数据传输总线,达到数据快速传输的要求。系统硬件设计简单,显示信息丰富,环境适应性强,扩展灵活,效果美观,电路稳定可靠。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

Arm CPU正在从根本上推动AI变革,并造福地球。Arm架构是未来AI计算的基石。​

关键字: ARM AI

近日,Arm推出了Arm® Ethos™-U85神经网络处理器(NPU)和Arm Corstone™-320物联网参考设计平台,旨在满足海量的数据处理和大规模计算,加速推进边缘AI的发展进程。

关键字: ARM

为了赶超云计算市场上的竞争对手,谷歌正试图通过定制的Arm服务器芯片降低云计算服务成本。

关键字: 谷歌 ARM 定制芯片

在嵌入式系统开发、调试和测试过程中,J-Link作为一种高效的调试工具,为开发者提供了极大的便利。然而,要想充分发挥J-Link的功能,首先需要正确安装其驱动程序。本文将详细介绍J-Link驱动的安装过程,并深入解析其中...

关键字: jlink 嵌入式系统 嵌入式开发

与谷歌的合作使 Nordic 能够在 nRF Connect SDK 中嵌入开发人员软件,以构建与安卓移动设备兼容的谷歌Find My Device和未知跟踪器警报服务

关键字: 谷歌 SoC 嵌入式开发

嵌入式开发作为当今电子工程和信息技术领域的核心分支,涵盖了广泛的软硬件技术和系统集成方法,用于构建高性能、低成本、低功耗、体积小巧且功能专一的嵌入式系统。这些系统无处不在,从微型传感器节点到复杂的工业控制设备,从日常使用...

关键字: 嵌入式开发 Python

嵌入式开发是当今信息技术领域不可或缺的一部分,它融合了硬件设计、软件开发和系统集成等多个学科,专门用于创建那些被嵌入到特定设备或系统中的专用计算机系统。嵌入式开发的主要过程包括利用分立元件或集成器件进行电路设计、结构设计...

关键字: 嵌入式开发 硬件设计 软件开发

嵌入式开发作为一种专业且技术密集型的领域,涵盖了从硬件底层驱动、中间件到应用层软件开发等多个层面的工作,其所需的工具种类繁多,各有针对性,旨在提升开发效率、保证代码质量以及简化调试过程。

关键字: 嵌入式开发 keil

嵌入式开发作为信息技术领域的重要分支,其涉及的语言种类繁多,各具特色。这些语言的选择取决于目标平台的特性、性能需求、开发者的熟练程度以及项目的具体要求。本文将详细介绍几种常见的嵌入式开发语言,包括C语言、C++、汇编语言...

关键字: 嵌入式开发 C语言

嵌入式开发是一项综合了硬件设计、软件编程以及系统整合的技术活动,其目的是为了创造出能够在特定环境中高效、稳定运行的嵌入式系统。这一流程涵盖了多个紧密关联且不可或缺的阶段,从最初的客户需求分析到最终的产品测试和交付,每个环...

关键字: 嵌入式开发 硬件设计
关闭
关闭