APP下载

基于ARM微处理器LPC2148的LED温度显示器设计

2010-09-12冯若晔沈大伟祖静

电子测试 2010年10期
关键词:低功耗显示器逻辑

冯若晔 , 沈大伟, 祖静

(中北大学 仪器科学与动态测试教育部重点实验室, 山西 太原 030051)

0 引言

随着工农业生产的日益发展,温度测量逐渐被人们所关注,对于温度的合理调节和控制,对于对温度要求较高的生产环境显得至关重要。本文采用LPC2148作为主要处理器,它具有超小LQFP64封装的32位ARM7TDMI-S微控制器。40KB的片内RAM和512KB的片内FLASH程序存储器。LPC2148具有丰富的I/O口并且I/O口的复用功能使设计更加灵活。

1 硬件设计

LED温度显示器硬件模块主要包括:模拟信号处理电路、ARM微处理器电路、CPLD逻辑控制电路和LED显示电路,其总体结构如图1所示。

图1 总体原理图

1.1 模拟信号处理电路

模拟信号经温度传感器被转换成电压信号之后,在被送入A/D转换器之前,需要将此电压信号进行放大和滤波,使其成为适合A/D转化的电压信号。本设计中采用INA128和OPA340来实现放大的作用使用低通滤波器进行滤波以消除干扰信号。INA128为精密低功耗仪表放大器,通过R1进行放大倍数的调节。OPA340为运算放大,两者结合使放大倍数达到理想值。

1.2 ARM微处理器电路

LPC2148自带2个10位逐次逼近模/数转换器(ADC0和ADC1),测量范围为0V~VREF,10位转换时间大于或等于2.44μs。AD0.7:6,AD0.4:1,AD1.7:0,为模拟输入。VREF为A/D模块参考电压。VDDA和VSSA为模拟电源和地。

1.3 CPLD逻辑控制电路

本设计采用CPLD(XCR3128)进行逻辑控制。XCR3128具有丰富的I/O口,通过内部逻辑设计,来控制4个LED的显示。通过XCR3128将ARM的I/O进行扩展到达控制7段LED的目的。ARM微处理器的数据经CPLD进行串并转换后由LED进行逐位显示。通过扩展I/O的方式来驱动LED有其绝对的优点:(1)ARM微处理器不需要反复扫描,只需当LED的输出值改变的时候才通过GPIO来更新LED显示,这样就节省了处理器的时间。(2)每一段LED显示段都有一个I/O来控制,因此不需要过大的电流做驱动。

2 软件设计

软件部分包括A/D转换C语言编程、CPLD逻辑实现和LED显示输出编程,软件框图如图2所示。

2.1 A/D实现

本设计中模拟电压的的输入口选择的是A/D1.6,选用最大10位转换精度,设置全局变量用来存放所得的温度值degree。

Viod cadegree ( )

{

double voltage;

AD1CR= (1<<6) | (Fplck/100000-1)<<8) |(0<<16) | (0<<17) | (1<<21) | (1<<24) ;

//选择A/D转换通道,转换时钟为1MHZ,使用11个时钟转换,启动A/D转换

While((AD1DR& ( (unsigned int)1<<31))==0)

//等待转换结束

votage=2.5*((double) ((AD1DR>>6)&0x3FF))

degree= (int) (votage*100000000/Res);// 通过压降和温度的转换关系得到当前的温度值。

2.2 CPLD逻辑实现

CPLD主要实现I/O的扩展及4位LED的显示。通过逻辑设计达到将数据串并转换的目的,以此来控制每一个LED位的数据显示。

2.3 LED显示输出

viod playLED(int degree)

int i;

int bit4=degree/1000; //得到温度的百位数值

int bit3=(degree%1000)/100; //得到温度的十位数值

int bit2=(degree%100)/10; //得到温度的个位数值

int bit1=degree%10; //得到温度的小数位数值

for(i=7;i>=0;i--)//更新各个位的显示

{.....

}

图2 总体流程图

2.4 仿真结果

图3为CPLD串联并的仿真结果。经过仿真可以明确程序在理论上可顺利通过。因此CPLD对各位LED的显示控制作用可以完成。

图3 Modelsim环境下仿真图

3 总结

本设计采用LPC2148是基于它的内部资源丰富,低功耗,低成本,存储量大等优点作为出发点,可以利用其内部自带的A/D转换模块,同时其内部的Flash可达512KB,该温度显示器适用于生产生活等各个领域测量范围-20°C~100°C(由所选的温度传感器决定),测量精度为0.1°C,应用范围十分广阔,并且操作简单,显示直观。因此有着很高的实用价值。

[1]周立功.ARM嵌入式系统实验教程(二)[M].北京:北京航空航天大学出版社,2005.

[2]王开,姜宇柏.面向CPLD/FPGA的VHDL设计[M].北京:机械工业出版社,2006.

[3]刘宏杰.可编程逻辑器件的VHDL语言优化设计方法[J].测控技术, 2001(06).

[4]刘辉.C语言程序设计[M].北京:科学出版社,2006.

[5]李战明,丁磊等.基于ARM的多路功能温度监测系统的设计[J].仪表技术与传感器,2005(12):20-25.

[6]李海真,孙运强,许鸿鹰.高精度多路温度采集模块硬件电路设计[J].电子测试,2008 (12):50-60.

[7]张素文,项希.基于ARM的温度采集与显示系统的设计[J].自动化技术与应用, .2007,26(6):100-120.

[8]周立功.ARM微控制基础与实战[M].北京:北京航空航天大学出版社,2005:300-350.

猜你喜欢

低功耗显示器逻辑
刑事印证证明准确达成的逻辑反思
逻辑
创新的逻辑
一种高速低功耗比较器设计
把显示器“穿”在身上
IDC发布《2018年PC显示器市场跟踪报告》
一种新型点阵显示器的设计
女人买买买的神逻辑
ADI推出三款超低功耗多通道ADC
IDT针对下一代无线通信推出低功耗IQ调制器