新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于单片机C8051F410的精确信号模拟电路设计

基于单片机C8051F410的精确信号模拟电路设计

作者: 时间:2012-05-23 来源:网络 收藏
3 软件设计

本文引用地址:https://www.eepw.com.cn/article/171416.htm

  本电路中运用c语言编程来实现PWM控制,利用芯片的可编程计数器阵列组成PWM发生器。C805IF410芯片的可编程计数器阵列由一个专用的16位计数器/定时器和3个16位捕捉/比较模块组成.捕捉/比较模块有六种工作方式:边沿触发捕捉、软件定时器、高速输出、频率输出、8位PWM和16位PWM。每个捕捉,比较模块的丁作方式都可以被独立配置。对PCA的配置和控制是通过系统控制器的特殊功能寄存器来实现的.主要有以下几个:

  1) PCAOCN可编程计数器阵列控制寄存器。该寄存器包括溢出标志、运行控制标志以及捕捉/比较标志。

  2) PCAOMD可编程计数器阵列方式寄存器。该寄存器用于设置可编程计数器阵列的工作模式及时钟源。

  3) PCAOCPMn可编程计数器阵列捕捉/比较寄存器。该寄存器可进行捕捉/比较模块n的工作方式。

  4) PCAOCPn可编程计数器阵列捕捉,比较寄存器(高低字节)。该寄存器用于设置捕捉/比较模块n的高低字节。

  本电路主要利用PCA模块2来产生PWM波形。初始设置PCAOCN为0x40.置位PCA模块2捕捉/比较标志.在发生一次捕捉时该位由硬件置位,该位置‘1’将导致CPU转向PCA中断服务程序。初始设置PCAOMD为0x08.PCA计数器,定时器时钟选择系统时钟。初始设置 PCAOCPM2为0xc2,使能16位脉冲宽度调制、比较器功能和PCA模块2的脉宽调制方式。PCAOCP2的值将在程序流程中实时设定。软件流程如图3所示。

  

  图3软件流程图

  具体实现方法与步骤如下:

  1)初始设置:根据设定电压值生成初始PWM波形和频率参数。

  2)电压测最:测量此时输出电压和设定值之间的偏差,用于调整PWM参数。

  3)调整PWM参数:把设定的输出电压与实际读取到的输出电压进行比较.若实际电压值偏小,则向增加输出电压的方向调整PWM的占空比;若实际电压偏大,则向减小输出电压的方向调整PWM的占空比。

  4)使能PWM输出。

  另外.在软件PWM的调整过程中还要注意ADC的读数偏差和电源工作电压等引入的纹波干扰。合理采用算术平均法等数字滤波技术。

  4 结论

  本电路针对装备维护存在的实际问题。,利用PWM调制技术和负反馈测量技术克服了原电路因工作点不稳定的问题。经实验验证,将本电路替换掉原来的电路模块后,榆测设备重测合格的现象不再出现。本电路从处理器到被控系统都是数字形式的,无需进行数模转换,抗噪性能强,工作稳定,具有较高的输出精度,对于同类电路的设计具有一定的借鉴意义。

  本文作者创新点:本文,采用PWM调制技术和负反馈测量技术设计了一种新的电路,能程控输出高精度电压,无需进行数模转换,抗噪性能强,有效抑制了信号产生电路普遍存在的工作点漂移问题,具有一定的借鉴意义。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭