MAXQ3120混合信号微控制器的应用案例

发布者:fnfeecjknquc最新更新时间:2014-09-17 来源: eefocus关键字:RISK  DSP  ADC  FSK  EEPROM  ASCII 手机看文章 扫描二维码
随时随地手机看文章
        监视系统的设计者和厂商一直希望微控制器能够为日常监视应用提供不断增加的通用功能,包括满足用电计量、汽车监控、数据搜集和传感器调节等方面的要求。MAXQ3120就是为了满足这些要求而开发的低功耗、高速微控制器。它的主要技术规范如下。
  1. 16位、每秒8百万条指令(8MIPS)、单周期RISK核
  2. 32kB闪存(flash存储器)
  3. 512B RAM
  4. 具有独立波特率产生器的2个UART
  5. 3个定时器,其中1个支持PWM D/A
  6. 红外通信功能
  7. 可驱动112段LCD的控制器
  8. 依靠电池备份、具有日历和亚秒闹钟功能的实时时钟
  9. 16 x 16位单周期乘法器和40位累加器
  10. 2个16位精密模数转换器(ADC)

        下面介绍利用MAXQ3120微控制器的以上特性和模拟I/O及DSP功能可以完成一些什么样的任务。

语音记录子系统 

        概念: 给一组工程师一片ADC,他们就会发现如何用它来记录语音。但是,除了简单的记录声音,MAXQ3120还能够做很多事情。以MAXQ3120为核心,配合用户接口元件和廉价的NAND闪存,就可构建一个功能完善的语音记录子系统。
细节: 可以利用MAXQ3120的一个ADC和PWM定时器实现音频I/O。ADC的额定输入电压为+1V到-1V,其内置的前置放大器的可编程增益可达16。通常,具有内置阻抗匹配的电容式拾音头可以直接连接到ADC的输入端。如果需要低噪声或高增益,可以采用Maxim公司的前置放大器MAX4467,该放大器能为拾音头提供所需的偏置,且为电池供电的应用提供功耗极低的关断模式。在输出端,用一个单级放大器驱动扬声器,该放大器同时还具有一定的抗混叠和PWM平滑功能。 

        音频信号被转换成数字信号后,必须进行压缩和存储,以备重放。8MIPS的处理能力使MAXQ3120拥有足够的“马力”来应付许多常用的标准语音编码任务。此领域的“金科玉律”是ITU G.711编码,其工作速率为64kbps,每秒发送和接收8000个8位采样。ITU G.711编码有两种不同的传递函数,用来将12位采样值转换为8位编码字。这两种函数就是通常所谓的A律(主要用在欧洲)和µ律(主要用在美国)。 

        如果期望更高的压缩率,可以牺牲一些话音质量,采用ITU G.726编码。G.726编码采用自适应差分脉冲编码调制(ADPCM)方案对语音信号进行更高效率的编码。这种编码支持多种位率,最低为16kbps。对大多数应用来说,该编码要求的处理速度不大于3MIPS。ITU G.711和ITU G.726编码都只需要很少的RAM。 

        在录音阶段,定时器每125µs (8MHz时钟频率下每1000个处理器周期)产生一次中断请求,微处理器响应中断后,计算在上一个定时器周期内得到的采样值的平均值(二或三个采样,ADC每48µs采样一次),以便获得需要的8kHz采样率。之后,所采集的16位采样就可采用选定的编码方案进行编码。在回放时,采样数据被线性化后送到PWM控制器,驱动扬声器。 

        压缩后的音频数据就可用于存储,但MAXQ3120微控制器除了程序闪存外没有其他的存储器,因此需用外部存储器来存储语音数据。对于此应用性价比最高的外部存储器是NAND闪存,其容量可达8吉位。对于16kbps编码,这种器件可提供超过6天的语音存储。但是,NAND闪存并不完善。首先,大多数NAND闪存器件都带有一个“瑕疵图”,告诉应用软件在存储器阵列中的何处有“坏点”存在。其次,就像其他的可擦除存储器一样,在长期使用后,NAND闪存的有些单元会丧失存储能力。幸运的是,NAND闪存的这些缺陷对语音应用的影响不大,不像对固态磁盘等应用的影响那么大。在语音应用中,NAND闪存的这些缺陷可以被忽略,它们最多使语音中存在瞬间干扰。 

        对于容量如此巨大的语音存储,必须进行有效的存储管理。这项工作由系统的用户接口部分完成,用户接口部分的核心是LCD控制器。它能够驱动4个公共面上的28段显示,MAXQ3120的LCD控制器兼容于大量现有的3V LCD玻璃。可以非常低的成本获得定制的LCD模块。 

        用户可以通过连接到MAXQ3120通用I/O端口的按钮来控制语音记录系统。MAXQ3120有4个8位通用I/O端口与器件的其他功能共用。 

        还需要做什么? MAXQ3120是用于高级语音记录系统的理想微控制器。在利用它设计语音记录系统时,设计者仅需要完成下列工作: 

  • 设计用户接口:选择一款LCD,确定如何显示信息、设置按钮功能、如何记录和组织语音数据。
  • 选择声码器:可以选用以上提到的两个ITU编码器之一,也可以选用其他的专用编码器,在存储器容量足够大时还可以直接存储语音信号的原始采样值。许多标准编码器的C语言源代码是可以买到的,因此只需要简单地开发接口程序。 
  •  选择存储介质: NAND闪存是理想的选择,但也可以根据实际情况选择其他的存储器,例如,廉价的通用可移动存储器(SD、SmartMedia™或MMC存储卡)。有些厂商还可提供存储卡接口的C语言源代码和开发工具。
  • 电池管理:如果语音记录系统用电池供电,就需要某种形式的电源管理。Maxim有多种高效的低功耗电池管理方案。结合这些方案和MAXQ3120的低功耗停止和睡眠模式,将使语音记录器具有满意的电池寿命。

多普勒雷达 

        概念: 很多年以前执法部门就在使用多普勒测速雷达。如果这种雷达系统的造价能够大大降低,那它的用途就不仅仅限于对付那些道路上的超速者。比如,它可在前方车辆停车时提醒驾驶员。MAXQ3120能在多普勒雷达系统中发挥哪些作用呢? 

        细节:多普勒雷达的工作原理比较简单。雷达装置发射一个连续的、已知频率的微波束(在美国微波频率已上升到Ku波段,约24.150GHz),微波束遇到移动目标后被反射回来。由于反射波的频率稍微高于或低于发射波的频率,所以把反射波和发射波混频后可以得到频率由下式确定的“拍音”:

        f = [v * (f0 / c)] * cos

        其中,ν是待测目标的速度,f0是额定发射频率,是目标运动方向与雷达系统之间的夹角(如图1A所示),c是光速。注意,如果目标直接对着雷达系统而来,则 = 0,cos = 1,目标的运动速度变为:

        v = [f / (f0 / c)]

        例如,如果Ku波段多普勒雷达产生1kHz的“拍音”,则测量的目标直面而来(或而退)的速度为12.4m/s (即每小时28英里或45公里)。可用MAXQ3120处理这种音频信号,框图如图1B所示。

图1A. 接收信号的多普勒频移取决于目标的运动速度和目标运动方向与雷达系统之间的夹角。
图1B. 在多普勒雷达系统中,MAXQ3120控制雷达头,并从雷达模块输出的中频(IF)信号中提取“拍音”信号。
        利用两个ADC通道中的一个,MAXQ3120能够采样雷达模块输出的差分信号,提取出其中的最强频率分量,并把它换算成每小时公里或英里数。此外,利用MAXQ3120的乘-加单元还可进行一些复杂的滤波运算,从复杂的信号中提取出最强的频率分量,并且可能从微弱信号中提取出有用信息(比如,多普勒雷达系统运载车辆本身的运动速度)。 

        很多情况下,用户接口的设计非常琐碎――常常是一些逻辑处理或者通过开关触发音频告警。有些应用中,微控制器还要周期性地记录速度、以及进行速度测量的时间和日期等。 

        还需要做什么? 多数厂家生产的多普勒雷达模块输出音频IF。对简单的测速雷达系统,剩下的工作非常简单。对于更复杂一些的测量分析系统,还需要开发一些有关信号处理的算法。幸运的是,有许多可用于辅助开发滤波算法和识别算法的优秀工具。 

        有些雷达系统需要指示目标的运动方向,即目标是远离还是靠近雷达?传统的多普勒雷达不能完成这项工作;它们对速度一样而方向相反的运动产生相同的频移量。现在,有些厂家生产的雷达模块包含两路正交输出,解调这两路输出,根据它们的相位差雷达系统便可以确定目标的运动方向。MAXQ3120微控制器有两个ADC,用它可以很容易地实现这种功能。

电话管理器 

        概念: 有时人们希望追踪电话的使用情况(谁与谁通了话,什么时候通的话,通话时间是多少),但又不愿购买昂贵、复杂的通话计费系统。这种情况的例子很多。比如,父母想追踪孩子的电话使用情况。职业人员想要一个自动记录他们何时给谁打了电话,以及谁何时给他们打了电话的日志工具。当各个房间的电话公用一条电话线时,那些以住宿加(次日)早餐方式出租房间的房东,就希望有可以追踪电话使用情况的系统。这种系统可以使他们比较容易地向客人收取电话费。 可以利用MAXQ3120微控制器组成监视电话线上所有通话的装置(见图2)。
图2. 电话管理器监视呼出号码、来电振铃、主叫ID以及摘机事件,确定呼出号码、主叫号码以及通话时间。
        细节: 电话管理器必须监视四种情况:电话线的挂机/摘机状态、来电振铃、呼叫号码和主叫ID信息。其中最简单的是摘机信号的监视,因为摘机时,线电压从48V (挂机状态)变为12V以下(摘机状态),电压检测器很容易检测这种变化并通知MAXQ3120微控制器。 

        来电振铃由电话公司在电话线上加载的高压交流信号产生。该信号经过电容耦合和光电隔离器后向处理器发出告警,同时保持与电话线的隔离。通常,与0.47µF电容和4.7k电阻串联的双向光耦合器能够可靠地检测到该信号。为避免误动作,可采用一对背靠背的齐纳二极管,只有当电压超过击穿电压时才允许电流流入光隔离器。 

        呼叫号码的接收稍复杂一些,因为有两种向电话公司发送号码的方法:脉冲拨号和音频拨号。脉冲拨号方法根据拨打的数字在每秒钟内产生10个电流脉冲。为了检测脉冲拨号,只需检测电话线上由低到高的电压跳变的时间,如果以每秒10次的速率出现一串跳变,无疑这就是脉冲式拨号。 

        但是,脉冲拨号电话机越来越少,目前流行的是双音多频(DTMF)拨号方法。在该方法中,电话上的数字键被排成三列四行,见图3。按下一个数字键,会产生一个与行对应的音和一个与列对应的音。通过检测并解译音调的组合情况,MAXQ3120就可确定拨出的号码。 [page]
图3. 双音多频(DTMF)拨号方案为键盘上的每个键安排了一个行音和一个列音。注意,最右边一列(A、B、C和D键)仅用在局端设备上,客户端没有。
        Goertzel算法是一种适合于CPU实现的高效音频信号检测方法。它是一个双极点滤波器,可以在噪声信道中清晰地检测出音频信号。在MAXQ微控制器上实现该算法的程序已经通过了测试。

        利用主叫ID服务确定主叫者的电话号码很容易。这项服务的订户可在第1和第2声振铃之间收到一个1200bps的信号,其中包含主叫号码、主叫者的名称以及时间和日期等。

        在美国,电话局采用Bell 202调制解调器标准传送主叫ID。欧洲所采用的标准是ITU V.32模式2 (1300Hz传号和2100Hz空号)。两种标准的数据传送速率都为1200bps。很容易在一个应用中同时支持这两种标准,但这里仅讨论美国使用的标准。在该标准中,“0”位用2200Hz音频表示,“1”位用1200Hz音频表示。MAXQ3120可容易地检测到过零点,并由此确定输入信号频率和它所代表的数据位。数据格式很简单,为串行异步N81格式(无奇偶校验位,8位数据,1位停止位)。

        检测到位值后还要解析消息的格式。有两种主叫ID格式。第一种仅包含主叫号码和日期及时间。如下所示:


        如果用户只订了“仅号码”主叫ID业务,就用这种格式为他们传送主叫ID。注意,除了类型、长度和校验和外,其他字符以ASCII码传送。如果没有主叫号码,就用字母“O”代之。如果主叫号码应呼叫者的要求禁止传送,则用字母“P”代替电话号码。校验和为此信息中前面诸字节以256为模的和,为2的补码格式。 

        如果用户订购了“姓名和号码”主叫ID服务,就会收到如下所示的信息:


        其中,TYPE总为0x80,LENGTH为所有数据块的长度。数据块的格式为:


        其中,BLOCK TYPE表示传送数据的类型,其值根据下表选择:


        一旦有关某次通话的数据搜集齐后便可存储在I2C* EEPROM中。这类器件廉价、可靠,并且可以提供多种存储容量。一个16kb的EEPROM能够存储100条姓名-号码格式的主叫ID记录。在MAXQ系列处理器上用软件实现I2C通信的代码也有提供。 

        还需要做什么? 还可以考虑对该系统的功能进行一些强化。尽管上面所讨论的方案可以监视所有在线的电话,但它还是无法告诉你是哪部电话发出或应答呼叫。为了做到这一点,每部电话机上需要安装一个无需任何用户界面的监视装置。MAXQ3120可以通过电流传感器确定电话机何时被摘机,并通知位于中央的电话管理器。为完成这种通信任务,话机中的微控制器可以发送DTMF数字信号,用来识别呼出或应答话机。在挂机状态,电话公司对这些信号“视而不见”,因此,户内电话线就为这些数字信号提供了理想的信道。 

        另一方面的强化是自动登录到一台计算机。MAXQ3120微控制器具有UART通道,可以和PC的串口连接,这样就可将电话管理器彻底转变为一个小巧的电话计费系统。如果再把这种计费系统和前面介绍的语音记录系统结合起来,你就拥有了一个非常完善的应答机或电话记录器。


电力监视装置 

        概念: 电费为什么这么高?这是电力公司经常听到的抱怨。其中,与燃料价格无关的部分原因是越来越多的电器始终处于耗电状态。
不要抱怨电冰箱,因为它的电源是间歇开关的,只有当电冰箱的内部温度高于限定值时电源才被接通。实际上,耗电的设备到处都是。想一想多媒体设备中发出亮光的指示灯,告诉你它已被关闭,等待你的遥控命令来打开它。过去,“关掉”开关就意味着该设备不再有任何形式的工作。但在今天,关掉电视机只是使其处于等待模式,许多电路仍在耗电。事实上,现在已经很难找到真正切断电源的电器。 

        微机也是隐蔽耗电的设备。在当今的网上时代,人们离开时还让微机下载文件、收取邮件等等。它要花多少电费? 

        在此最后一部分,MAXQ3120回归其本源,但角色转变为用电者,而不再是供电者。图4示出了本应用的框图。
图4. 用电监视装置能够确定某电器何时用了多少电。它还可以报告会损坏敏感设备的电压浪涌和掉电故障。
        细节:MAXQ3120专为支持电表应用而设计。它的两个ADC分别设计用于监视电压通道和电流通道。在本项目中,MAXQ3120连续监视进入某设备的电压和电流。然后,它可以报告该设备的平均功率,用电高峰出现的次数和幅度,以及,如果需要的话还可提供该设备的功率因数。 

        如何报告呢?最简单、直接的方法是在监视装置上采用一个小巧的LCD。可以使用一个或多个按钮控制MAXQ3120在多种显示模式间切换(电压均方根、电流均方根、功率、度数等等)。LCD价格极其低廉,用来监视单个设备时,可做的非常紧凑、易用。 

        如果要监视多个设备,可以建一个中心站来记录来自各从站的数据。该项目的难点在于通常的供电电路用于数据传送介质时质量太差。用廉价的模块无法实现理想的数据传输速率。 

        但是,可以用廉价的模块实现不太理想的数据传输速率。MAXQ3120的ADC仅有20,000次/秒的采样速率,这种速率无法解调100kHz范围内的载波(这个频段被普遍用于电力线控制系统),但是它们可以解调音频范围的载波。如果数据传送速率足够慢,比如约10bps,可以实现非常可靠的通信。 

        这样除了监视电力外,MAXQ3120的DSP功能还要完成另外两项工作:监视来自两个窄带的信号功率,并尝试从中检测出低速频移键控(FSK)信号;如果接到请求,还要为主站发送3kHz至7kHz的FSK信号。 

        主站可以是单独的装置,也可以通过微机的串口与其连接。后一种方案更具有吸引力,因为微机的存储量足够大,且能够完成比微控制器更复杂的任务。 

        还需要做什么? 还需要做什么?不多。可申请完整的电表参考设计(ZIP, 76KB),经过简单修改后可用于此项目。关于电力线通信,用于信号产生和带通滤波的MAXQ3120代码也可找到。因此,只需将这些部件整合在一起便可轻松构建一个低数据速率FSK调制解调器。简言之,通过简单地整合现有的硬件和软件元素,就可组成一个可工作的产品。

结论 

        通过这些应用实例我们可以看到,除了作为多功能电表的核心外,MAXQ3120微控制器还大有可为。强大的功能使这款微控制器在很多应用领域有扩展的机会,可能是你下一个混合信号项目的理想方案。
关键字:RISK  DSP  ADC  FSK  EEPROM  ASCII 引用地址:MAXQ3120混合信号微控制器的应用案例

上一篇:基于SystemC的系统级芯片设计方法研究
下一篇:详解寻线行走机器人设计与实现

推荐阅读最新更新时间:2024-03-16 13:41

基于DSP和CPLD的宽带信号源的设计
  摘要:利用DSP和CPLD来设计宽带信号源,将DSP软件控制上的灵活性和CPLD硬件上的高速、高集成度和可编程性有机地结合起来,一方面使得信号源控制简单、可靠,同时保证产生的信号高速、准确。   关键词:DSP,CPLD,宽带信号源   1 引言   信号源是雷达系统的重要组成部分。雷达系统常常要求信号源稳定、可靠、易于实现、具有预失真功能,信号的产生及信号参数的改变简单、灵活。本文采用DSP和CPLD来设计信号源的控制部分,一方面能利用DSP软件控制的灵活性,另一方面又能利用CPLD硬件上的高速、高集成度和可编程性。使用这种方法可以充分利用软件支持来生成和加载任意波形数据,并能方便地实现对信号参数的控制和对波形数据的随意
[应用]
为什么功率转换仍然算不上大宗商品
选择合适的电源转换器仅仅意味着找到最便宜的器件吗?事实证明,电源电压转换领域的创新是值得的,并且在市场上获得了回报——因为这些解决方案带来了更高质量的产品。ADI将在本文概述一些利用低成本电源转换器成功实现高质量产品的应用实例。 几乎所有电气设备都会使用电源转换器。多年来,人们针对不同的应用条件设计和调整电源转换器。今天的制造商之间是否有差异化? “大宗商品”特指这样一类商品——市场上不同制造商生产的该商品之间差别不大,并且各自的价格(像原材料价格一样)主要由制造成本决定,产品创新的空间很小。 大约20年前,我开始在电源半导体领域工作,当时电源行业的很大一部分应用正在经历一场剧变。大多数应用正从线性稳压器(LDO)过渡
[电源管理]
为什么功率转换仍然算不上大宗商品
基于DSP的自动避障小车
近年来研究移动机器人倍受重视,仿照生物功能发明的各种移动机器人越来越多,小到娱乐机器人玩具、家用服务机器人,大到矿产勘测、工程探险、军事侦察机器人等。避障小车是一种移动机器人,它通过传感器系统感知外界环境,在复杂环境中自主移动并完成避障,一般采用超声波、红外、激光、CCD等传感器设计。由于红外传感器探测视角小。方向性强,测量精度高,价格便宜,而且可在夜间工作,因此红外传感器作为视觉应用于移动机器人避障。本设计是以TI公司生产的 TMS320LF2407 型DSP为核心,采集环境信息并控制智能小车,3个红外发收传感器检测智能小车前方的障碍物,并且根据障碍物位置进行自动避障。 1 自动避障小车总体设计 该系统主要由DSP控制、
[工业控制]
基于<font color='red'>DSP</font>的自动避障小车
DSP芯片在自动报站系统中的应用
作者Email: greatchen1979@163.com 引言: 当前国内主要大城市的公交车大都采用人工语音报站,即每到一站由司机或者乘务员按语音键来进行报站。但有时由于受到各种因素如雨雪天路滑、车上拥挤、乘务员心情的变化等的影响,会出现报错站,漏报站的情况,给乘客特别是不熟悉本市地形的乘客带来了不必要的麻烦,从而影晌到了一个城市的窗口形象工程建设,于是开发研制自动报站系统成为必然。系统中由于要求对接收到的公交车GPS定位信息(经纬度信息等)进行处理,由经纬度信息生成站牌与公交车之间的距离信息,这之间会经历繁琐的计算,用一般的微控制器难于实现,而当采用DSP处理芯片时,这一问题就很好解决了。 1. 自动报站系统
[应用]
DSP芯片TMS320C6712外部内存自引导功能的实现代码
TMS320C6000系列与TMS320C54系列的引导方式有很大差别。在开发应用TMS320C6000系列DSP时,许多开发者,尤其是初涉及者对DSP ROM引导的实现有些困难,花费许多时间和精力摸索。笔者结合开发实例,介绍了实现外部存储器引导的具体方法。 DSP的引导过程 DSP系统的引导(BOOT)是指系统加电或复位时,DSP将一段存储在外部的非易失性存储器的程序代码通过DMA方式拷贝到内部的高速内存中运行。这样既能扩展DSP有限的存储空间,又能充分发挥DSP内部资源的效能。用户的代码也可以通过掩膜方式写入到DSP内部ROM中,但这样受容量和价格的限制,且不便于扩展和升级。 DSP的引导过程如下: 1) DSP复位后,通过
[单片机]
<font color='red'>DSP</font>芯片TMS320C6712外部内存自引导功能的实现代码
TI高性能DSP实现视频监控差异化应用
    智能视频监控行业正走在一条高速发展的道路上,其市场预计到 2011 年将超过 90 亿美元。这要归功于市场对安全需求不断上升,以及技术创新和发展,特别是正在向数字化和全面网络化的方向过渡。这其中,以 DSP 、 ASIC 为代表的高性能处理器起着至关重要的作用。而随着视频监控的辅助功能增多,视频编码技术成熟带来的门槛降低, DSP 将不可避免的占据视频监控的主流市场。         日前,德州仪器 (TI) 推出的两款全新达芬奇技术 DSP TMS320DM647 和 TMS320DM648 ,就被赋予了更高的性能,用于实现差异化的功能。两款新品建立在 TI 最新 C64x+ DSP 内核基础上,达芬奇技
[嵌入式]
小模拟信号的精确度测量的设计解析
一个量程10千克的秤若能分辨出1克的重量变化,那么这个秤的主要组件常常是增量累加模数转换器。设计师需要温度测量的精确度达到0.01度时,增量累加ADC也常常成为首选方案。增量累加ADC还能够取代那些前面加有一个增益级的传统型逐次逼近寄存器ADC.由于这些数据转换器非常适用于量度真实世界的微小变化,所以温度传感器、天平、换能器、流量计等精密仪器以及无数其他类型的传感器都非常适合采用增量累加ADC.   增量累加ADC表面上看起来也许很复杂,但实际上它是由一系列简单的部件所构成的精确数据转换器。增量累加ADC由两个主要构件组成:执行模数转换的增量累加调制器和数字低通滤波器/抽取电路。增量累加调制器的基本构件(集成运算放大器、求和
[测试测量]
stc8单片机+8针oled驱动显示ADC值源程序
#include intrins.h #include STC8.H sbit lcd_sclk=P5^0; /*接口定义:lcd_sclk就是CLK*/ sbit lcd_sid=P5^1; /*接口定义:lcd_sid就是MOSI*/ sbit lcd_rs=P5^2; /*接口定义:lcd_rs就是DC*/ sbit lcd_cs1=P5^3; /*接口定义:lcd_cs1就是OLED的片选CS1*/ sbit Rom_OUT=P5^4; /*字库IC接口定义:Rom_OUT就是FSO*/ sbit Rom_CS=P5^5; /*字库IC接口定义Rom_CS就是字库IC的CS2*/ unsigned char
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved