经济的快速发展使得人们越来越注重生活质量,对于有害气体的检测成为人们的迫切要求,我国气敏传感器发展迅速,但由于气敏传感器的高阻值特性及接口电路复杂等原因,气敏传感器测量装置发展缓慢。在了解气敏传感器的气敏机理及气敏传感器的工作原理的前提下,设计了一种新型的气体浓度测量装置,并将采集到的信号处理后通过无线传输设备传送。该装置以ARM7为内核的LPC2131 作为微处理器,利用其强大的数据计算处理能力及控制能力,设计出了显示气体浓度值的测量电路。此外由于因LPC2131 内部集成了多种硬件电路接口,有效地降低了成本,减小了装置体积。 在无线传输部分,采用挪威Nordic公司的单片射频收发器nRF403,nRF403工作在433或315MHz国际上通用的ISM频段,双工作频段可以自由切换,FSK 调制解调,采用直接数字合成DSS和锁相环稳频PLL 进行频率合成,频率稳定性好,发射数据时无方向性要求,在高速移动和振动等情况有抗干扰能力。本测量装置的设计主要包括硬件和软件两大部分。硬件部分由四部分组成:数据采集电路、ARM系统模块电路设计、无线收发电路模块、显示模块组成。软件部分的设计包括:通道选择程序设计、A/D转换程序设计、信号处理程序(算法)、无线收发程序、液晶模块程序设计、以及PC端应用程序设计。经过实际的测量,本装置可对外界气体浓度进行准确的测量,精度保持误差在1.5%以内。本装置具有高灵敏度、小型、简单、低耗等优点。
上传时间: 2013-04-24
上传用户:17826829386
随着现代控制技术的飞速发展和传统工业改造的逐步实现,能够独立工作的温度检测和显示系统已经应用于诸多领域。传统的温度监测系统可靠性和实时性相对较差,温度测量的精度和准确度较低,而且大多采用有线方式对整个系统进行控制,这不利于应用的扩展。近年来,嵌入式系统和无线通信技术(特别是短消息业务)受到远程监测领域研究者的密切关注,成为一个研究热点。本文提出了一种将带有I2C总线的ARM嵌入式微处理器和短消息业务(SMS)用于温度检测系统中的方法,实现了温度的多点监测。本文的主要研究内容如下: (1)多点温度监测系统硬件设计。采用以ARM微处理器LPC2290芯片为核心的嵌入式工控板,通过对Benq无线通信模块M22的控制,接收并识别监测中心发过来的短消息内容,实现了多点温度的采集及显示;采用八个带有I2C总线接口的数字温度传感器LM75,组成八点温度采集电路:利用带有I2C总线接口的LED驱动器件ZLG7290及共阴式数码管为温度显示电路,保证了温度测量的精度和准确度。 (2)多点温度监测系统软件设计。根据整个监测系统的特点,提出了软件设计的总体思路,并以ADS1.2为集成开发环境,将μC/OS-Ⅱ嵌入式操作系统的相关代码移植到LPC2290中;采用分层体系思想,使用标准C语言编写程序,结合嵌入式操作系统的任务管理、信号量等机制,并调用相关的应用程序接口函数(API函数),设计了包括温度采集、温度显示、短消息接收与发送等多个子程序。 (3)监测中心软件设计。为了增强系统控制和数据管理功能,使用Visual C++6.0及ADO数据库技术编写了监测中心软件人机交互界面,通过串口使另一M22无线通信模块同监测中心上位机的通信,实现了在PC机上发送短消息指令对下位机进行远程控制,并将接收到的数据存储在Access数据库中以便分析处理。 嵌入式技术和短消息业务在一定程度上提高了多点温度监测系统的测量精度、可靠性、稳定性和实时性,对改进远程监测系统的控制方式和数据传输方式有一定的意义,也为对嵌入式应用项目的开发奠定了基础。
上传时间: 2013-07-08
上传用户:feichengweoayauya
激光测距技术被广泛应用于现代工业测量、航空与大地的测量、国防及通信等诸多领域。本文从已获得广泛应用的脉冲激光测距技术入手,重点分析了近年提出的自触发脉冲激光测距技术(STPLR)特别是其中的双自触发脉冲激光测距技术(BSTPLR),通过分析发现其核心部件之一就是用于测量激光脉冲飞行时间(周期)的高精度高速计数器,而目前一般的方式是采用昂贵的进口高速计数器或专用集成电路(ASIC)来完成,这使得激光测距仪在研发、系统的改造升级和自主知识产权保护等诸多方面受到制约,同时在其整体性能上特别是在集成化、小型化和高可靠性方面带来阻碍。为此,本文研究了采用现场可编程门阵列(FPGA)来实现脉冲激光测距中的高精度高速计数及其他相关功能,基本解决了以上存在的问题。 论文通过对双自触发脉冲激光测距的主要技术要求和技术指标进行分析,对其中的信号处理单元采用了FPGA+单片机的设计形式。由FPGA主控芯片(EPF10K20TC144-4)作为周期测量模块,在整个测距系统中是信号处理的核心部件,借助其用户可编程特性及很高的内部时钟频率,设计了专用于BSTPLR的高速高精度计数芯片,负责对测距信号产生电路中的时刻鉴别电路输出信号进行计数。数据处理模块则主要由单片机(AT89C51)来实现。系统可以通过键盘预置门控信号的宽度以均衡测量的精度和速度,测量结果采用7位LED数码管显示。本设计在近距离(大尺寸)范围内实验测试时基本满足设计要求。
上传时间: 2013-04-24
上传用户:dapangxie
特点: 精确度0.1%满刻度 可作各式數學演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A|/ 16 BIT类比输出功能 输入与输出绝缘耐压2仟伏特/1分钟(input/output/power) 宽范围交直流兩用電源設計 尺寸小,穩定性高
上传时间: 2014-12-23
上传用户:ydd3625
特点(FEATURES) 精确度0.1%满刻度 (Accuracy 0.1%F.S.) 可作各式数学演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A| (Math functioA+B/A-B/AxB/A/B/A&B(Hi&Lo)/|A|/etc.....) 16 BIT 类比输出功能(16 bit DAC isolating analog output function) 输入/输出1/输出2绝缘耐压2仟伏特/1分钟(Dielectric strength 2KVac/1min. (input/output1/output2/power)) 宽范围交直流两用电源设计(Wide input range for auxiliary power) 尺寸小,稳定性高(Dimension small and High stability)
上传时间: 2013-11-24
上传用户:541657925
/*--------- 8051内核特殊功能寄存器 -------------*/ sfr ACC = 0xE0; //累加器 sfr B = 0xF0; //B 寄存器 sfr PSW = 0xD0; //程序状态字寄存器 sbit CY = PSW^7; //进位标志位 sbit AC = PSW^6; //辅助进位标志位 sbit F0 = PSW^5; //用户标志位0 sbit RS1 = PSW^4; //工作寄存器组选择控制位 sbit RS0 = PSW^3; //工作寄存器组选择控制位 sbit OV = PSW^2; //溢出标志位 sbit F1 = PSW^1; //用户标志位1 sbit P = PSW^0; //奇偶标志位 sfr SP = 0x81; //堆栈指针寄存器 sfr DPL = 0x82; //数据指针0低字节 sfr DPH = 0x83; //数据指针0高字节 /*------------ 系统管理特殊功能寄存器 -------------*/ sfr PCON = 0x87; //电源控制寄存器 sfr AUXR = 0x8E; //辅助寄存器 sfr AUXR1 = 0xA2; //辅助寄存器1 sfr WAKE_CLKO = 0x8F; //时钟输出和唤醒控制寄存器 sfr CLK_DIV = 0x97; //时钟分频控制寄存器 sfr BUS_SPEED = 0xA1; //总线速度控制寄存器 /*----------- 中断控制特殊功能寄存器 --------------*/ sfr IE = 0xA8; //中断允许寄存器 sbit EA = IE^7; //总中断允许位 sbit ELVD = IE^6; //低电压检测中断控制位 8051
上传时间: 2013-10-30
上传用户:yxgi5
TLC2543是TI公司的12位串行模数转换器,使用开关电容逐次逼近技术完成A/D转换过程。由于是串行输入结构,能够节省51系列单片机I/O资源;且价格适中,分辨率较高,因此在仪器仪表中有较为广泛的应用。 TLC2543的特点 (1)12位分辩率A/D转换器; (2)在工作温度范围内10μs转换时间; (3)11个模拟输入通道; (4)3路内置自测试方式; (5)采样率为66kbps; (6)线性误差±1LSBmax; (7)有转换结束输出EOC; (8)具有单、双极性输出; (9)可编程的MSB或LSB前导; (10)可编程输出数据长度。 TLC2543的引脚排列及说明 TLC2543有两种封装形式:DB、DW或N封装以及FN封装,这两种封装的引脚排列如图1,引脚说明见表1 TLC2543电路图和程序欣赏 #include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int sbit clock=P1^0; sbit d_in=P1^1; sbit d_out=P1^2; sbit _cs=P1^3; uchar a1,b1,c1,d1; float sum,sum1; double sum_final1; double sum_final; uchar duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar wei[]={0xf7,0xfb,0xfd,0xfe}; void delay(unsigned char b) //50us { unsigned char a; for(;b>0;b--) for(a=22;a>0;a--); } void display(uchar a,uchar b,uchar c,uchar d) { P0=duan[a]|0x80; P2=wei[0]; delay(5); P2=0xff; P0=duan[b]; P2=wei[1]; delay(5); P2=0xff; P0=duan[c]; P2=wei[2]; delay(5); P2=0xff; P0=duan[d]; P2=wei[3]; delay(5); P2=0xff; } uint read(uchar port) { uchar i,al=0,ah=0; unsigned long ad; clock=0; _cs=0; port<<=4; for(i=0;i<4;i++) { d_in=port&0x80; clock=1; clock=0; port<<=1; } d_in=0; for(i=0;i<8;i++) { clock=1; clock=0; } _cs=1; delay(5); _cs=0; for(i=0;i<4;i++) { clock=1; ah<<=1; if(d_out)ah|=0x01; clock=0; } for(i=0;i<8;i++) { clock=1; al<<=1; if(d_out) al|=0x01; clock=0; } _cs=1; ad=(uint)ah; ad<<=8; ad|=al; return(ad); } void main() { uchar j; sum=0;sum1=0; sum_final=0; sum_final1=0; while(1) { for(j=0;j<128;j++) { sum1+=read(1); display(a1,b1,c1,d1); } sum=sum1/128; sum1=0; sum_final1=(sum/4095)*5; sum_final=sum_final1*1000; a1=(int)sum_final/1000; b1=(int)sum_final%1000/100; c1=(int)sum_final%1000%100/10; d1=(int)sum_final%10; display(a1,b1,c1,d1); } }
上传时间: 2013-11-19
上传用户:shen1230
#include<iom16v.h> #include<macros.h> #define uint unsigned int #define uchar unsigned char uint a,b,c,d=0; void delay(c) { for for(a=0;a<c;a++) for(b=0;b<12;b++); }; uchar tab[]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,
上传时间: 2013-10-21
上传用户:13788529953
摘要: 串行传输技术具有更高的传输速率和更低的设计成本, 已成为业界首选, 被广泛应用于高速通信领域。提出了一种新的高速串行传输接口的设计方案, 改进了Aurora 协议数据帧格式定义的弊端, 并采用高速串行收发器Rocket I/O, 实现数据率为2.5 Gbps的高速串行传输。关键词: 高速串行传输; Rocket I/O; Aurora 协议 为促使FPGA 芯片与串行传输技术更好地结合以满足市场需求, Xilinx 公司适时推出了内嵌高速串行收发器RocketI/O 的Virtex II Pro 系列FPGA 和可升级的小型链路层协议———Aurora 协议。Rocket I/O支持从622 Mbps 至3.125 Gbps的全双工传输速率, 还具有8 B/10 B 编解码、时钟生成及恢复等功能, 可以理想地适用于芯片之间或背板的高速串行数据传输。Aurora 协议是为专有上层协议或行业标准的上层协议提供透明接口的第一款串行互连协议, 可用于高速线性通路之间的点到点串行数据传输, 同时其可扩展的带宽, 为系统设计人员提供了所需要的灵活性[4]。但该协议帧格式的定义存在弊端,会导致系统资源的浪费。本文提出的设计方案可以改进Aurora 协议的固有缺陷,提高系统性能, 实现数据率为2.5 Gbps 的高速串行传输, 具有良好的可行性和广阔的应用前景。
上传时间: 2013-11-06
上传用户:smallfish
摘要: 串行传输技术具有更高的传输速率和更低的设计成本, 已成为业界首选, 被广泛应用于高速通信领域。提出了一种新的高速串行传输接口的设计方案, 改进了Aurora 协议数据帧格式定义的弊端, 并采用高速串行收发器Rocket I/O, 实现数据率为2.5 Gbps的高速串行传输。关键词: 高速串行传输; Rocket I/O; Aurora 协议 为促使FPGA 芯片与串行传输技术更好地结合以满足市场需求, Xilinx 公司适时推出了内嵌高速串行收发器RocketI/O 的Virtex II Pro 系列FPGA 和可升级的小型链路层协议———Aurora 协议。Rocket I/O支持从622 Mbps 至3.125 Gbps的全双工传输速率, 还具有8 B/10 B 编解码、时钟生成及恢复等功能, 可以理想地适用于芯片之间或背板的高速串行数据传输。Aurora 协议是为专有上层协议或行业标准的上层协议提供透明接口的第一款串行互连协议, 可用于高速线性通路之间的点到点串行数据传输, 同时其可扩展的带宽, 为系统设计人员提供了所需要的灵活性[4]。但该协议帧格式的定义存在弊端,会导致系统资源的浪费。本文提出的设计方案可以改进Aurora 协议的固有缺陷,提高系统性能, 实现数据率为2.5 Gbps 的高速串行传输, 具有良好的可行性和广阔的应用前景。
上传时间: 2013-10-13
上传用户:lml1234lml