博文
基于ARM9的快速对星装置设计与实现(2009-12-10 10:43:00)
摘要:大中型卫星站均具有相应的、完善的天线跟踪伺服系统,天线伺服跟踪系统依据信标信号强弱,决定天线转向,驱动天线旋转,达到准确对星。随着通信技术和电子技术的发展,小型卫星站如车载站、便携站受机动性能和便携性能的局限,不可能采用大中型卫星站才能使用的伺服跟踪系统,采用不同原理,开发适用于小型卫星站天线的对星装置,具有现实意义。 1 系统概述 该装置通过GPS采集地理信息、电子罗盘采集姿态信息,根据GPS采集的地理信息,结合通信卫星位置,计算出对星所需要的标准方位、俯仰、极化参数,同时计算出当地、当年磁偏角数据;通过采集电子罗盘数据,得到初步方位、俯仰、极化数据,其中俯仰和极化均为天线实际指向值,但是方位值是以磁北为标准测量值;通过GPS得到的磁偏角数据,对从电子罗盘得到的以磁北为标准的方位值进行修正,得到比较准确的、以真北为标准的真实方位数据。 2 硬件设计 本装置在设计上,选择S3C2440作为主控制器构成硬件平台,利用其丰富的外部接口和高速处理能力,达到实时采集数据、及时处理数据、快速传输数据、不附加额外接口设备的目的。由于该装置需要测量的参数多,GPS、电子罗盘统一采用RS 232接口,保证了测量数据精度和接口一致性。供电统一采用+5 V锂电池电源供电。 3 软件设计 本装置采用ARM9作为主控制器,以Windows CE.net操作系统作为系统平台,使用EVC4开发环境作为开发工具,软件采用多线程结构,MFC和API编程技术,实时采集传感器数据,计算修正方位值,达到准确对星的目的。 3.1 总体程序设计 本装置程序采用多线程结构,在主线程(用户接口线程)的基础上,增加两个辅助线程(工作者线程),辅助线程负责处理数据采集,主线程负责界面响应、数据融合、数据显示。线程处理采用API,而不采用MFC编程,增加了程序的通用性。程序中还使用Suspend-Thread挂起线程、ResumeThread恢复线程、Exit-Thread退出线程。 线程同步采用临界区域(也称关键区域,即CRITI-CAL SECTION)措施,首先用CRITICAL_SEC-TION申明一个全局变量,再调用InitializeCriticalSec-tion初始化,使用EnterCriticalSection进入关键区域,使用LeaveCriticalSection离开关键区域,......
基于ARM LinuxQT的掌上多媒体系统的设计和实现(2009-12-10 10:42:00)
摘要: 随着人们生活水平的提高,消费结构发生了巨大变化,消费者用于娱乐方面的支出在总支出中所占的比例正在不断扩大。掌上多媒体系统可以满足人们对于试听以及便携的需求,另外还可以实现一些其他功能,如图片浏览、网络下载、以及影音录制等。目前市场上的掌上多媒体系统多是Windows CE、Symbian、Palm OS等商用操作系统,其开放的程序不够高,而且价格偏高,不适于第三方应用软件的移植。ARM体系作为专用嵌入式系统设计的通用处理器内核,具备高性能、低功耗、易扩展的特点。本系统基于ARM9、嵌入式Linux操作系统设计并实现了一个更为开放的嵌入式平台,来实现掌上多媒体系统的诸多功能。 1 多功能掌上媒体播放器系统的硬件设计 LCD采用的是SHARP的TFT屏,3.52in,分辨率240×320;音频控制器是IIS接口的音频控制器,解码芯片是UDA1314TS;另外扩展了用于视频录制的PHILIPS的视频解码芯片SAA7113和ADI的JPEG压缩芯片。 2 多功能掌上媒体播放器系统的软件设计 系统设计和软件设计是本系统的难点。 2.1 嵌入式Linux操作系统 Linux最初由Linux Torvalds编写,后来在网络上被众多的Linux爱好者加以修改和维护,具有内核高效稳定、开源、可移植性强、内核可定制可裁剪、多线程多任务等特点,因此选择其作为本媒体播放器系统的操作系统。图1多功能掌上多媒体系统的硬件设计图2多功能掌上多媒体系统的视频录制系统的框图图3多功能掌上多媒体系统的软件设计总体框架 首先定制裁剪并移植了Linux2.6的内核,然后为使各硬件能正常工作编写了键盘驱动、LCD驱动、触摸屏驱动、音频驱动、USB驱动等驱动。多功能掌上多媒体系统的正常工作首先是进入ARM-Linux操作系统,然后加载各个硬件的驱动程序并初始化各外围设备,接着就进入基于QT/Embedded库的Qtopia桌面系统编写的GUI图形界面程序的播放器,最后选择要进行的操作。 对于Linux内核的移植首先要移植bootloader,系统采用的是VIVI,其功能包括:分区管理、参数管理、启动Linux操作系统、文件系统管理、支持网络、通过串口下载程序到Flash或者RAM等。建立嵌入式开发环境,使得能够交叉编译源代码,对VIVI的源代码进行交叉编译,生成能在ARM Lin......
基于ARM内核目标系统中的代码运行时间测试(2009-12-10 10:42:00)
摘要:在ARM系统中,有时需要精确的时间测量。通常,取时间的C函数(如gettime()等)不仅通用性差(必须包含头文件DOS.H,且不支持Unix、Linux和标准C),明显不适用于ARM系统;更成问题的是,其最短时间只能到10-2 秒级,不能提供更短的时间分度。根本原因在于: 这类函数是基于系统实时时钟(RTC)的,而RTC通常采用标准化钟表晶振,频率只有32.768 kHz而已。 然而很多应用涉及μs级的时间计量,这是标准化了的RTC以及基于它的时间函数所无能为力的。在移植DES算法到ARM系统的实验过程中,便遇到过要定量评估加密算法耗时多少的问题,发现的确不能用上述常规的C函数解决。经对ARM芯片结构的考察,发现其内置的WatchDog系统是以系统时钟驱动的,定量性能应该很好,区分时间间隔的精细程度也应该足够。于是借用 WatchDog编写了自己的计时函数,使用起来也比较方便。考虑到ARM芯片都带有内置看门狗,笔者觉得这种方法可算是一个不错的“过渡性”解决方案,故在此加以介绍,供同行们参考并指正。 1、测量原理 ARM芯片中的看门狗,其原始功能是监视CPU核心运行的某些超时。这些超时的发生,通常是因为干扰和系统错误等造成的程序运行混乱。一旦发生这类情形,看门狗便请求中断服务或发出复位脉冲重启系统。为了达到这样的目的,其计时原理必须独立于系统中的任何进程。实际上,WatchDog是独立的硬件逻辑,其计时脉冲直接取自系统主时钟,因此它与RTC一样具备实时性和独立性,借用看门狗的计时体系来实现高精度时间测量是合理的。 先以实验中用到的S3C44B0X为例(该实验所用的ARM开发板型号为NETARM300),具体谈谈看门狗的工作原理。 系统主时钟MCLK经过可编程预分频、可选固定分频后,进入WTCNT(硬件系统的计时计数器,16位)计数。根据器件手册,计数时间间隔t_watchdog=1/(MCLK/(Prescaler value+1)/Division_factor )。式中,参数Prescaler value的取值为0~28-1;Division_factor有16、32、64、128四种取值。如果复位信号输出允许(即WTCON的位0置1),那么一旦计数器WTCNT的计数超过WTDAT允许的范围,看门狗就会将CPU复位。本实验过程中屏蔽掉了这种复位和中断请......
基于Bootloader的可靠嵌入式软件远程更新机制(2009-12-10 10:41:00)
摘要:1 随着嵌入式系统在各个领域的广泛应用,嵌入式软件的维护变得日益重要。嵌入式系统投入实际环境中运行后,一部分在软件开发过程中无法充分测试的错误便会暴露出来;在嵌入式系统的运行期内,用户也往往会对嵌入式软件提出新的功能要求和性能要求。因此,嵌入式软件的更新逐渐成为嵌入式系统实际应用的一个重要问题。当嵌入式系统安装数量较多,或安装位置不方便的情况下,采用人工更新方式会花费较大的人力和物力。远程自动更新则在嵌入式系统中设计一个有线或无线的通信接口,在异地采用远程通信的方式实现嵌入式软件的自动更新。该方式能有效地降低嵌入式软件的更新和维护成本,因此受到了广泛的关注。当前对嵌入式软件远程自更新技术的研究主要停留在更新方法的设计上,对如何确保更新过程的可靠性还没有深入的研究。更新的可靠性主要受两个方面的影响:一是更新数据远程传输的可靠性;另一方面是系统更新后启动的可靠性。在采用嵌入式Linux、Windows CE等较为复杂的操作系统时,一般设计一个独立的bootloader程序,对系统进行初始化并引导嵌入式操作系统。这种结构的嵌入式系统的启动与bootloader紧密相关。本文针对采用bootloader的嵌入式系统,提出了一种高可靠的嵌入式软件远程自动更新机制,并以基于ARM微处理器、嵌入式Linux操作系统[5]和无线通信接口的嵌入式系统为例进行了软硬件设计。然后将更新机制应用到实际系统中进行测试,最后给出了本文的结论。 2 更新系统的总体结构 本部分以ARM和嵌入式Linux操作系统为例,介绍远程自更新系统的整体结构。支持远程自更新的嵌入式系统可以划分为前端运行模块和后台控制模块两部分。前端运行模块采用基于ARM9核心的S3C2410微处理器,最高主频可达200Mhz,配有8M的RAM和32M的FLASH存储器,运行ARM-Linux嵌入式操作系统,具有独立设计的bootloader程序。后台控制模块用于实现对前端运行模块的远程异地控制,是系统的控制核心。前端运行模块通过无线模块BCM860接入到CDMA2000-1X无线通信系统,继而连接到Internet。CDMA2000-1X是第2.5代移动通信系统,支持较高速率的数据分组业务。后台控制模块采用有线方式直接与Internet相连接,与前台运行模块之间进行标准的基于TCP/IP协议的通信。......
基于DSP的分析仪器CAN网络通信系统(2009-12-10 10:41:00)
摘要:CAN(Controll Area Network)是国际上应用最广泛的现场总线之一,使用了一种串行多控制方通信协议,可以有效地支持分布式实时控制,并且具有很高的安全性和高达1Mbps的通信速率。由于CAN具有多主站控制、无破坏性总线仲裁、可靠的检错和重发机制以及故障节点的判断和自动脱离等等显著优点,在富含噪声和其他要求苛刻的环境中得到越来越广泛的应用,而且其应用领域也在不断的扩大。 1分析仪器网络结构 多组分气体分析平台基于过程分析仪器系统的物流和信息两通道所需的基本共性功能,系统采用模块化设计。各硬件模块具有独立结构,可适应不同分析传感器及其组合以及预处理装置的选择要求;软件系统则为检测信号的数据处理、仪器的自动诊断、自动标定的操作控制以及为与DCS间的信息通信提供支持。 分析平台采用TMS320F2812作为处理器。TMS320F2812是一款用于控制领域的高性能32位数字信号处理器,适用于实时数据处理,并集成了丰富的外设,如片上12位模数转换器(ADC)、SPI、eCAN等功能模块,可以方便地进行功能扩展。平台由数据采集模块、控制模块、开关量输入输出模块、人机交互模块以及通讯接口组成。 根据现场情况,通过不同传感器的组合对样品中不同组分进行检测,配合相应的软件实现不同的数据处理方法,构成组合式分析仪器,每台分析仪器可检测2-4个组分。此处我们以两台分析仪器为例,每台能检测两个组分,一台检测CO2和O2,另一台检测SO2和CO,与上位机一起构建CAN通信网络。 CAN网络系统一般由上位机、CAN适配卡、若干节点以及CAN总线构成。由于PC机上有多条扩展槽,利用局域网络通信卡,使得该系统很容易与其他生产管理部门联网,便于统一调度和管理;另外,选用PC机还可以充分利用现有的软件工具和开发环境,方便快捷地设计功能丰富的计算机软件,所以此处上位机我们选用通用PC机。 CAN适配卡我们选用的是北京科日新工控的KPCI-8110光隔非智能CAN总线通讯卡,符合ISO/ISO11898国际标准,满足2.0B(PeliCAN)兼容CAN2.0A通信协议,通讯距离最长达10km,传输速率最高达1Mbps。基于多组分气体分析平台的组合式分析仪器做为CAN智能节点。总线上的信息传输遵守CAN通信协议,通信介质采用双绞线即可。 2 CAN总线通信协议 CAN技术规范版......
DSP的混合信号解决方案解决高级音频处理难题(2009-10-21 09:54:00)
摘要:从20世纪70年代产生构想以来,特别是在过去十年间,数据信号处理(DSP)在媒体应用激增的推动下,已经成为了一项耳熟能详的技术。从用于军事的语音和图像处理开始,这项技术首先发展进入音频和视频的应用环境,随即又进入了更加主流的电子领域。 今天,设计师们正面临着如下一系列信号处理方面的挑战:要求同时具备先进的功能性、便携性和低耗能性的应用,其要求不断增加。音频领域是个典型应用:从专业耳机到电子听诊器和遥感器,新的应用不断出现,这就要求工程师利用电池供电,以相对较低的成本和小型化设计实现音频压缩和录音、声音管理、回波消除和言语处理。 但是应用的便携性增加了这些挑战的难度:低能耗不仅仅要求提高电池寿命,还要求降低电池的尺寸大小和重量。尺寸限制还要求组件数量越少越好,而设备的复杂性则不断随着市场要求产品所具特色的增加而增加。最后,市场的快速变化向设计师们施压,他们必须比以前更加迅速地完成项目,并尽快将他们的想法转化成销售额。因此,IP复用或某些形式的可编程性至关重要。 有充分证据证明,实现信号处理功能集成的驱动力也对传统上模拟和数字电子技术之间的分离造成了冲击,使得混合信号的IC设计更加普遍。对于芯片设计师来说,这本身就困难重重:例如,他们需要设计具备多重地和电源的组件,并确保模拟和数字两部分之间的充分隔离,因为其中一部分可能干扰到另一部分。 尽管存在这些固有的难题,系统设计师的需求已经使模拟和数字技术集成于芯片上变得不可避免。产业从许多不同的方向解决了这个问题:线性电路的制造商已经开始向他们的设备添加数字功能;同时可编程逻辑技术的供应商也已经尝试集成模拟功能。但是,最重要和最成功的事情可能是,微处理器、DSP以及DSP核心的制造商一直努力在芯片上集成更多外围功能。今天,具有真正专门知识和处理技术的设备供应商可以提供具备ADC、DAC、显示驱动器、电源管理、集成放大器以及许多在特殊应用中普遍使用的外围支持功能的单芯片信号处理解决方案。 单芯片音频处理解决方案 图1展示了由AMI半导体公司开发的经优化的混合信号片上系统音频处理解决方案的示意图。这款被称为BelaSigna? 250的芯片提供了一个极好的例子,证明了当前使用最新的混合信号半导体处理技术而可能达到的集成水平。 该设备以将非同寻常的功率效率与高性能有机结合的平行处理架构为基础,构成了一个完整的音频解决方案,包括ADC......
WCDMA分布式基站低噪声放大器电路设计(2009-10-20 16:15:00)
摘要:LNA用于接收机前端电路,主要用来放大从天线接收到的微弱信号,降低噪声干扰,其噪声指标直接影响接收机的灵敏度,而灵敏度是通信接收机的关键指标之一,所以LNA电路设计的优略对于接收机性能至关重要,且在商业应用中,数字通信技术的发展对无线基站用LNA电路提出了更为苛刻的要求。 1 LNA电路的基本理论 LNA电路的主要技术指标有噪声系数(FN)、增益、工作频带、输入/输出驻波比和增益平坦度等,其中FN和增益对接收机性能的影响较大。 设计LNA电路时,在保证电路绝对稳定,避免产生自激振荡的情况下,尽量降低放大器的FN。对于绝对稳定的晶体管,可以按照最佳噪声匹配得到最低的FN;对于条件稳定的晶体管,要优先考虑稳定性因素。完成匹配后的放大器,要对稳定因子进行测试,在全频段内,要求稳定性因子μ>1。 为保证低噪声性能,通过电抗滤波器提供偏置电压或电流,而不用电阻偏置电路,以避免将电源噪声和偏置电阻的热噪声引入到射频通道。 另外,良好的阻抗匹配设计能够提高电路传输能量,提高系统增益,改善驻波特性,增强系统稳定性,降低噪声等,在设计LNA电路时,应根据不同的性能需求选择不同的匹配方式。 2 LNA电路的设计 2.1 器件的选择和级数的确定 设计LNA电路,首先要选择FN小的放大管。从目前的种类和应用来看,Si和SiGe类低噪声晶体管的FN要高一些,好的可做到0.7 dB左右,FN稍高的为砷化镓材料器件,FN最低的为增强型PHEMT(E-PHEMT)器件。本设计选用Agilent的ATF-54143,该放大管为E-PHEMT器件,此类器件具有较优的射频特性。 本文的LNA电路要求实现增益(30±1)dB,FN<1 dB,输入/输出的驻波小于1.5,OIP3>30 dBm,采用两级LNA电路级联构成。为了保证LNA电路端口驻波、放大器的稳定性和足够大的增益,前级电路采用平衡式结构,后级电路主要考虑端口驻波、线性和稳定性。LNA电路结构框图如图1所示,射频信号从耦合器1脚输入,功率平均分配到2脚和3脚,但是3脚的射频信号相位比2脚相位滞后90 °。如果上下两路LNA性能以及单板布局完全相同,那么两路LNA的反射系数也完全相同,且下支路的输入反射波相位仍然比上支路的输入反射波相位滞后 90°,即假设上支路的反射波相位为0°,则下支路反射波的相位为-90°。两......
