基于单片机的数字电位器的设计

发布者:MysticMoon最新更新时间:2010-11-19 关键字:数字电位器  单片机  X9313  X9312  分辨率 手机看文章 扫描二维码
随时随地手机看文章

     人耳对声强的主观感受遵循韦伯定律(Webber's Law),在音量较小时人耳对声波振幅的改变感受灵敏,声音达到一定响度后,人耳的听觉特性开始变得迟钝。而指数型电位器的阻值变化规律为先慢后快,如果将这种衰减特性用在音量调节中,则恰好可以抵消人耳对音量感知的对数特性,保证主观听感的平滑。

  与传统的机械式音量电位器相比,数字电位器(DCP)的阻值调节由内部CMOS开关控制,因而使用寿命长、可靠性高且不会产生机械噪声;如果将廉价的通用型线性数字电位器直接用于音量调节,在小音量状态下稍微调节电位器即会使输出声压陡然增加,无法保证大动态范围内音量的准确定位,因此目前将数字式电位器运用在成熟功放产品中的实例还不多。实际上,如果将低分辨率线性数字电位器与通用嵌入式系统结合起来,就能够得到运用于音量控制领域的低成本高分辨率指数式电位器。

  总体设计方案

  在数字电位器的扩展系统中,主控单元可选用常见的8位或16位成熟单片机。这里我们主要针对Intersil公司的低分辨率线性数字电位器X9313、X9312进行扩展,系统最终能够达到的实际分辨率为31×99=3069级;如果把32抽头的X9313全部更换为X9312,分辨率还可以进一步提高至9801级。

  X9313与X9312这两种DCP均为三线制接口、带掉电自动保存功能的非易失性数字电位器,其内部分别包含31、99个电阻单元构成的电阻阵列,相邻两个电阻单元以及电阻阵列端点都设置有可以被滑动单元访问的抽头,如图1所示。滑动单元的位置由CS、U/D和INC三个输入端控制,抽头位置值能够被存储在非易失性存储器中,供下次上电时调用置位。


图1 X931x系列DCP的内部结构

  系统的每个声道的音量控制由两个X9313与一个X9312构成,图2为三个数字电位器的功能连接图。所有DCP的U/D、INC端分别连接在一起,而片选端CS各自占用一个MCU端口。这种硬件连接方式能够很容易地实现四声道乃至更多声道的音量控制。为了与常见的数字式音量调整习惯一致,最好不要保留通用DCP的三键式控制方式,而只需设置UP/DOWN两组按键直接控制音量的增减。UP/DOWN按键与MCU的连接应设置软件延时的去抖算法,以消除按键输入时的抖动,MCU与DCP之间则不再考虑按键抖动。


图2 系统连接示意图

  分辨率扩展

  Ra和Rb同时并联在输入信号Vin的两端,其抽头数均为32。Ra和Rb的输出作Rc端口电压VH和VL设置,Ra始终比Rb高一个位置间隔,这样就可以将1/32Vi~31/32Vi共31种输入信号的电压变化加到Rc两端。由于Rc选用了100抽头的DCP,从而可以在Rc输出端得到31×(100-1)=3069级的Vin线性电压值。

  随着Rc滑动端上下移动,Ra和Rb的位置也在MCU的控制下进行相应调整。在上移过程中,设Rc滑动端上移值与目前所在位置值相加后的值为M。若M小于100,说明这时只是Rc的滑动端发生移动,而Ra和Rb的滑动触点位置不变;若M值超过100,则Ra和Rb的触点均上移1个滑动位,Rc的滑动端返回M减去100之后所得实际值决定的触点位。类似地,在抽头下移过程中,若Rc的滑动端需要下移到抽头0以下时,则Ra和Rb的滑动端也需要同步下移1位,以保持电位器实际调整步数的平衡。

  电位器Rc的抽头输出端设置了一级电压跟随器,可以减小因负载并联对级联后分压系数的影响。电位器触点的滑动过程属于不连贯的步进调节方式,故Rc的电阻值不是连续变化而是在滑动端调整到位后才具有所希望的输出,这样会使得输出电压出现一些小幅跳变。但由于输入信号Vin的绝对增量并不大,且整个电位器扩展系统的分辨率很高,对此我们可在Rc电位器的滑动输出端对地并联一只1000~2200pF的小电容C1,以减小输出电压的波动。

  上述电位器分辨率扩展的思路具有较高的可行性与移植性,此前曾应用在我们的一项程控增益可编程高速放大器的系统设计方案中,取得很好的使用效果。

  电阻值指数化

  DCP的指数化处理采用软件方式实现,不需要额外增加硬件。由于通用单片机的函数运算功能非常有限,因此在算法上,将电位器每级切换所要求的触点移动步数以数组形式保存在单片机的ROM中。阻值调整时,MCU根据按键的UP/DOWN状态和当前的阶数值以查表方式取得各只DCP的实际偏移量,然后再由MCU控制DCP执行相应的步进切换动作。考虑到3069级的实际分辨率,系统从零到满幅输出共设置了24级的步进阶数,优于市场上主流机械式步进电位器18~21的步进阶数,具体的阶数与电位器抽头偏移量关系可参见表1。从表中不难看出,系统将DCP扩展到3069的高分辨率正是为了适应电位器阻值在指数化调整过程中步进值的精确辨析。

表1 阶数与电位器抽头偏移量关系


  X9312与X9313是不能直接从片内存储单元读出滑动端当前所在位置的,因此,为了记忆各只数字电位器滑动触点的实际位置,必须在程序中设置变量对不同电位器的触点位置进行记忆。

  结束语

  高分辨率指数式数字电位器的解决方案以较低成本实现了通用型线性数字电位器在音响系统中的应用,具有较好的工程应用前景和推广价值。此外,由于DCP的指数式高分辨率扩展仅仅占用了很少的系统资源,因而可将MCU的剩余端口资源应用在音量状态的指示以及红外信号解码等功能性环节中,以完善系统功能。

关键字:数字电位器  单片机  X9313  X9312  分辨率 引用地址:基于单片机的数字电位器的设计

上一篇:基于PXI总线的某型舵系统检测设备设计
下一篇:新型微控制器AduC812的P1口的应用

推荐阅读最新更新时间:2024-03-16 12:31

单片机系统硬件抗干扰实践
单片机系统硬件抗干扰常用方法实践影响单片机系统可靠安全运行的主要因素主要来自系统内部和外部的各种电气干扰,并受系统结构设计、元器件选择、安装、制造工艺影响。这些都构成单片机系统的干扰因素,常会导致单片机系统运行失常,轻则影响产品质量和产量,重则会导致事故,造成重大经济损失。 形成干扰的基本要素有三个: (1)干扰源。指产生干扰的元件、设备或信号, 用数学语言描述如下:du/dt, di/dt大的地方就是干扰源。如:雷电、继电器、可控硅、电机、高频时钟等都可能成为干扰源。 (2)传播路径。指干扰从干扰源传播到敏感器件的通路或媒介。典型的干扰传播路径是通过导线的传导和空间的辐射。 (3)敏感器件。指容易被干扰的对象。如:A/D、 D
[单片机]
基于CH375的LPT-USB打印机驱动器的设计
1 引言   本课题来源于北京普析通用公司。 由于该公司现有光谱仪器的单机版(如1810和T6等)采用的是并行口打印技术,而随着USB打印机技术的逐渐普及,并行口打印机越来越少,有些用户原有的打印机只是USB接口而非并行口,因此现有仪器对打印机的支持不能适应用户需要。为了使该公司的并行口仪器直接和USB打印机相连,笔者设计了一种LPT-USB打印机驱动器,实现并口仪器与USB打印机的连接。   笔者利用单片机和USB总线接口器件实现LPT-USB打印机驱动器的设计。利用该设计将能够实现并行打印口数据在USB打印机上的直接打印,克服了有些并口仪器必须连接并口打印机才能打印的弊端,极大地方便了用户的使用。 2 CH375的特点及工
[应用]
利用51单片机启动三相星形电机的程序设计
  一、要求   当按下SB1键时,电机进入预启动状态,经30s短延时后进入正式启动,且不管电路工作在何种状态,只要按下SB2电机就停止,再按SB1电机又重新启动,并要求具有30s倒计时显示及电路状态显示。      二、单片机系统应具功能      根据要求,单片机系统应该具有以下功能:      1、按下SB1后,KMM、KMY闭合,延时30s后,KMY断开、KM△闭合;      2、按下SB2后,KMM、KM△及KMY均断开,且进入待机状态;      3、有30s倒计时数码管显示;      4、每种电路状态有对应的发光二极管指示。      三、软硬件设计        电路如上图、下图所示。KMM和下图中的KMY、K
[单片机]
利用51<font color='red'>单片机</font>启动三相星形电机的程序设计
MCU来控制蓝牙GPS模块
  GPS定位产品正在渐渐的深入到大众消费中来,随着电子地图的日趋完善,GPS系统将越来越发挥更加实际的指引作用。蓝牙GPS模块实现以无线蓝牙接口来发送GPS模块的定位数据,它挣脱了导线的束缚,从而可以很容易地在各种支持蓝牙的便携设备上实现导航定位功能。   蓝牙GPS模块也是一个小小的便携设备,需要实现电源的管理、GPS数据的处理、蓝牙状态的判断以及点亮指示灯等功能。这都要求使用一个MCU来协调控制整机的工作。   Freescale半导体的HCS08系列8位高性能MCU:MC9S08QG4即是个不错的选择。适用于本方案的主要参数为: 低功耗,简单的BDM调试口 16脚封装,内嵌10MHz振荡器(外部晶振支持20MHz),最多可
[嵌入式]
ARM宣布ARM MCU认证工程师计划
ARM正式推出全新的ARM MCU 认证工程师(ARM Accredited MCU Engineer, AAME)计划。该计划为现有的ARM认证工程师(ARM Accredited Engineer, AAE)计划中的一部分,专门针对ARMv6-M及 ARMv7-M (Cortex®-M)架构的软件技术能力进行认证,主要面向熟悉ARM Cortex-M系列嵌入式微控制器(MCU)并试图展现其ARM MCU技术知识的软件工程师。 在物联网(Internet of Things, IoT)快速发展的今天,凭借对性能、成本、功耗、尺寸以及易用性等方面的完美结合,基于Cortex-M架构的各类设备应用层面正日益广泛,从而推动了产业对高水平
[单片机]
SH69P42单片机在电磁炉控制中的应用
电磁炉工作时,虽然输入信号是市电的220 V交流电,但是为了保持功率恒定和内部稳定工作,需要对各参数进行实时的检测和控制,以有效地实现锅具超温保护、锅具干烧保护、锅具传感器开/短路保护、忘记关机保护、IGBT温度限制、IGBT温度过高保护、低温环境工作模式、IGBT测温传感器开/短路保护、高低电压保护、浪涌电压保护、VCE抑制、VCE过高保护、过零检测、小物检测、锅具材质检测、定时等功能。 这些参数中有很多是互相关联、互相影响的,因此,使用单片机实现检测和控制,无论从成本上,还是从可靠性、实现方案上,均是较好的选择。 1 控制参数及其相互关系 1.1 电磁炉的工作原理 电磁炉是一种利用电磁感应原理将电能转换为热能的厨房电器
[单片机]
AVR单片机(学习ing)—(十一)、ATMEGA16驱动12864—01—①
十一、ATMEGA16驱动12864液晶(驱动器为HD61202) 十一—(01)、今天只是个简单的动态的驱动~~(以后还会更新的~~移位什么的~~毕竟这些显示屏还是挺重要的~~而且更重要的是赶紧买板子~~ ) 先上图片~~ 这个是用ATMEGA16仿真的(我真的很疼~~对比一下下面51仿真的,数据被压缩,完全不能理解~~数据完全一样~~) 然后是程序: IAR11_1.c //------------------------------------------------------------------------------ //main #include ioavr.h #include intrinsic
[单片机]
AVR<font color='red'>单片机</font>(学习ing)—(十一)、ATMEGA16驱动12864—01—①
基于单片机的LED汉字显示屏的设计与Proteus仿真
O 引言 LED显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。它具有发光率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。并广泛的用于公交汽车、商店、体育场馆、车站、学校、银行、高速公路等公共场所的信息发布和广告宣传。LED显示屏发展较快,本文讲述了基于AT89C51单片机16×16LED汉字点阵滚动显示的基本原理、硬件组成与设计、程序编写与调试、Proteus软件仿真等基本环节和相关技术。 1 硬件电路组成及工作原理 本产品采用以AT89C51单片机为核心芯片的电路来实现,主要由AT89C51芯片、时钟电路、复位电路、列扫描驱动电路(74HCl54)、16×16LED点阵5部分组成,如
[单片机]
基于<font color='red'>单片机</font>的LED汉字显示屏的设计与Proteus仿真
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

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