基于51单片机的超低频信号发生器设计

发布者:cxx7848653最新更新时间:2011-11-05 关键字:51单片机  信号发生器 手机看文章 扫描二维码
随时随地手机看文章

    低频以及超低频信号在医学、电化学研究和实验教学中都有广泛的应用,尤其在电化学领域里,超低频信号发生器已成为电化学仪器必不可少的组成部分。电化学仪器配以方波、三角波和正弦波发生器,可以研究电化学系统各种暂态行为;配以慢的线性扫描信号或阶梯波信号,可以自动进行稳态(或接近稳态)极化曲线测量。然而市面上适用于电化学领域的信号发生器很少,传统信号发生器无法满足专业需求,且购买成本太高。现介绍一种用单片机控制的信号发生器,可输出方波、三角波及正弦波。产生的波形信号频率范围是0.125 mHz(毫赫兹)~80 Hz,输出的模拟信号电压范围是-10~+10 V,输出信号的幅值和频率具有一定的调节范围。该信号发生器与传统的信号发生器相比,有如下的特点:该信号发生器可以满足电化学领域对于信号发生器的要求,最低频率可达到0.125 mHz,在国内达到先进水平,且该信号发生器在超低频时精度高,失真度小,性能稳定,电路结构简单,体积小。

1 工作原理
   
超低频信号发生器的输入参数有扫描方式、上下限电平、波形频率。其中,扫描方式有单次、往返、连续三种选择;上下限电平在-10~+10 V之间,且上限电平大于下限电平;波形频率范围为0.125 mHz~80 Hz。输出波形有三种:方波、三角波、正弦波。当信号发生器上电后,先进行复位清零,然后进行系统初始化,用户通过将键盘设置扫描频率、上下限电平及扫描方式等参数输入单片机,并通过LCD进行显示。按照一定的算法准确调节各个功能模块,断开积分电路模块中控制仪器工作的模拟开关,使信号发生器开始工作,从而输出所需信号波形。

2 波形产生原理
   
该信号发生器可以产生频率、峰谷值可调的、连续的方波、三角波和正弦波。下面详细介绍三种波形的产生原理。
2.1 正弦波产生原理
   
由于该信号发生器的最低频率可达到0.125 mHz,传统的正弦波产生电路已经无法满足要求。该仪器使用16位的数/模转换器DAC8532产生正弦波。与RC桥式正弦波振荡电路和LC正弦波振荡电路相比,该方法简单、可靠,且稳定度高。
2.2 方波产生原理
   
传统的方波产生电路由反相输入的滞回比较器和RC电路组成,RC回路既作为延迟环节,又作为反馈网络,通过RC充、放电实现输出状态的自动转换。但是产生的方波无法满足超低频的要求,而且波形的幅值和频率调节困难。该系统的方波产生电路是通过CMOS模拟开关的不断转换来产生的该电路使用ADG201A作为模拟开关,当开关断开时电路输出高电平;当开关闭合时,电路输出低电平。方波的幅值由输入电压决
定,而周期则由模拟开关转换的频率来决定。电路简单,能满足超低频的要求,而且该电路产生的方波是连续的模拟波形,且幅值和频率调节方便。
2.3 三角波产生原理
   
该信号发生器的三角波是用积分电路产生的,与传统的三角波产生电路不同,该三角波的产生过程是一个闭环控制系统,如图1所示。方波发生电路是控制积分电路的积分方向。积分电路的输出与用户输入的上下限电平送入比较器进行比较,将比较结果送入RS触发器。当积分电路的输出高于用户输入的上限电平(或者低于下限电平)时,RS触发器控制方波发生电路使其输出电压反向,继续将积分电路的输出和用户输入的上下限电平送入比较器比较,周而复始,从而输出所需信号的波形。

[page]

 

3 硬件电路设计
3.1 基于AT89C52的硬件电路设计
    电路框图如图2所示。


3.2 LCD显示电路
   
以前普遍应用于显示终端的LED,因不能方便地显示汉字及图形而逐渐被淘汰,该信号发生器使用OCM4X8C液晶显示模块进行显示。OCM-4X8C是具有串/并接口,其内部含有中文字库的图形点阵液晶显示模块。该模块的控制驱动器采用台湾矽创电子公司的ST7920,因而具有较强的控制显示功能。
     OCM4X8C的液晶显示屏为128×64点阵,可显示4行,每行8个汉字。为了便于简单、方便地显示汉字,该模块具2 Mb的中文字型CGROM,该字型ROM中含有8 192个16×16点阵中文字库;同时,为了便于英文和其他常用字符的显示,具有16 Kb的16×8点阵的ASCII字符库。LCD显示电路如图3所示,LEDA为液晶显示模块背光源的正极,接+5 V电源;LEDK为背光源的负极,接地;PSB控制串行/并行连接方式,当模块的PSB脚接低电平时,模块即进入串行接口模式,串行模式使用串行数据线R/W、串行时钟线E以及片选端RS来传送数据,即构成3线串行模式。按照串行操作时序编程,即可进行显示。

[page]

3.3 E2PROM电路
   
串行E2PROM是可在线电擦除和电写入的存储器,具有体积小,接口简单,数据保存可靠,可在线改写,功耗低等特点,而且为低电压写入,在单片机系统中应用十分普遍。利用E2PROM可以存入信号发生器的初始化状态表,单片机复位清零之后直接调用该表对系统进行初始化。AT24C64与单片机的连接电路如图4所示。



4 系统软件设计
   
软件程序是实现超低频信号发生器的核心,根据键盘输入参数准确地调节控制电平上、下限的数字电位器以及控制输入电压的DAC8532等,使信号发生器能够正常工作。软件流程如图5所示。

[page]

5 超低频信号的实现
   
对于方波和三角波的输出频率划分为4档输出。为了使4个档次的频率分布均匀,电阻的选择也很关键。通过计算,选择2 MΩ,75 kΩ,4 kΩ,310Ω。由公式:
   
    可以算出4个档位满足的频率范围:电容C=10μF,该设计中Uo最大取值为10 V,Ui的最大取值为10 V,使得电路工作的Ui的最小取值为0.1 V,根据公式:
 
    得出频率范围为0.125 mHz~80 Hz。
    为了确保超低频信号波形稳定,重复性好,在波形的实现过程中要注意以下几点:
    (1)模拟开关的使用。该系统最初使用模拟开关来控制4个频率档位,但是由于模拟开关的导通电阻和截止电阻,使模拟开关的闭合不是完全闭合,断开也不是完全断开,而且模拟开关的截止电阻不够大,因此4个模拟开关并联截止电阻就会更小,再与积分电阻并联就严重地影响了积分周期,从而影响了超低频信号的输出。最终改用继电器控制最低频率段,利用模拟开关控制剩余的三个频率段,这样低频信号输出稳定。
    (2)输入信号不能过小。如果输入信号过小,使得信号与运放的失调电流、失调电压相当,那么输出信号的误差很大。
    (3)积分电容的选择。超低频对于电容也有特定的要求,为了使信号稳定,该超低频信号发生器电容为聚四氟乙烯电容器,容值为10μF。由于电路板上的绝缘电阻不够大,积分电容不能直接焊在电路板,而是通过两根导线与运放相连。
    (4)积分电阻的选择。电阻值过大,对于运放的要求太高,电阻值过小,无法产生超低频波形,因此选择了最大积分电阻为2 MΩ的金属电阻。
    (5)运放的选择。超低频信号对运算放大器的要求很高,该系统选择OP37低失调电流、低失调电压的运算放大器。

6 结语
   
由单片机控制的超低频信号发生器,与现有采用计数器、只读存储器、D/A转换器和滤波器等组成的信号发生器相比,频率准确度和稳定度较高。该信号发生器产生的三种波形是电化学实验中常用的波形,且最低频率可达到0.125 mHz,这是电化学实验对于低频的要求,在医学和电化学研究方面具有广泛的应用前景。

 

 

 

关键字:51单片机  信号发生器 引用地址:基于51单片机的超低频信号发生器设计

上一篇:利用单片机实现全数字图像的实时采集
下一篇:弹上通信系统的LabVIEW与51单片机的通信技术

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

mcs51单片机五个中断源的自然优先级与中断服务入口地址
外 中断 0:0003H 定时器0:000BH 外中断1:0013H 定时器1:001BH 串口 :0023H 它们的自然优先级由高到低排列。写到这里,大家应当明白,为什么前面有一些程序一始我们这样写: ORG 0000H LJMP START ORG 0030H START: 这样写的目的,就是为了让出中断源所占用的向量地址。当然,在程序中没用中断时,直接从0000H开始写程序,在原理上并没有错,但在实际工作中最好不这样做。 优先级:单片机采用了自然优先级和人工设置高、低优先级的策略,即可以由程序员设定那些中断是高优先级、哪些中断是低优先级,由于只有两级,必有一些中断处于同一级别,处于同一级别的,
[单片机]
基于51单片机的模拟开关
1.实验任务   如图4.2.1所示,监视开关K1(接在P3.0端口上),用发光二极管L1(接在单片机P1.0端口上)显示开关状态,如果开关合上,L1亮,开关打开,L1熄灭。 2.电路原理图          图4.2.1 3.系统板上硬件连线 (1). 把“单片机系统”区域中的P1.0端口用导线连接到“八路发光 二极管 指示模块”区域中的L1端口上; (2). 把“单片机系统”区域中的P3.0端口用导线连接到“四路拨动开关”区域中的K1端口上; 4.程序设计内容 (1).开关状态的检测过程   单片机对开关状态的检测相对于单片机来说,是从单片机的P3.0端口输入信号,而输入的信号只有高 电平 和低电平两种,当拨开开关K1拨
[单片机]
基于<font color='red'>51单片机</font>的模拟开关
51单片机总线时序与编址技术
一、总线概述   计算机的总线分为控制总线、地址总线和数据总线等三种。而数据总线用于传送数据,控制总线用于传送控制信号, 地址总线则用于选择存储单元或外设。   二、单片机的三总线结构   51 系列单片机具有完善的总线接口时序,可以扩展控制对象,其直接寻址能力达到64k( 2的16次方) 。在总线模式下,不同的对象共享总线,独立编址、分时复用总线,CPU 通过地址选择访问的对象,完成与各对象之间的信息传递。   单片机三总线扩展示意如图1 所示。     1、数据总线   51 单片机的数据总线为P0 口,P0 口为双向数据通道,CPU 从P0 口送出和读回数据。   2、地址总线   51 系列单片机的地址总线
[模拟电子]
8051单片机实现PWM的方法
PWM 是“脉冲宽度调制”的意思。 PWM 实际上是在单片机的某个引脚输出一系列的矩形波,其周期一般是固定的;而其高电平、低电平所占用的时间,是可以受控调整的。 高电平、低电平所占用的时间之比,称为占空比,其值为0~1之间。 PWM 的应用很广,简单的说,它可以控制灯光的亮度、可以控制直流电机的转速,甚至还可以输出语音信号。 新型的单片机,往往都含有硬件的 PWM 模块,编写程序就很简单;而老式的MCS-51系列,就不具备这个条件。 其实,在没有 PWM 硬件的单片机上实现 PWM,也并不难,只需一个定时器,令其工作在中断方式即可。 下面以网上的一个题目为例,说明实现 PWM 方法。 题目:AT89C52单片机输出可调 PWM 波
[单片机]
80<font color='red'>51单片机</font>实现PWM的方法
基于51单片机和ADC0808 ADC0809的自动数字电压表设计
前言: 之前讲过基于数码管显示的自动数字电压表,接下来讲一下基于LCD1602显示的相关设计,分别利用的是TI公司的ADC0808和ADC0809。 硬件和软件设计 基于51单片机+ADC0808+LCD1602 测试电压范围为2.1~25V(超出这个范围,程序会卡死),精度<0.05 仿真图如下: 部分代码如下: #include AT89X52.H #define LEDDATA P0 #define v20_on {s3=0;s2=0;s1=1;} //宏定义不同量程,不同的开关状态 #define v2_on {s3=0;s2=1;s1=0;} #define v02_on {s3=1;s2=0;s
[单片机]
基于<font color='red'>51单片机</font>和ADC0808 ADC0809的自动数字电压表设计
51单片机实现爱心跑马灯程序
本人闲来无事做,见实验室的小伙伴用LED等做了一个跑马灯,顿时引来了一大群妹子,当时就不服了,哼,不就是一个流水灯,说的跟谁不会一样 制作的是32个LED灯的爱心流水灯,至于灯怎么安放,我就不多说了,关键是怎么连接布线。 由于条件有限,没有制作PCB的工具,所以就用的洞洞板,32个LED共阴极,连接在51单片机的GND上,每个LED的正极分别连接单片的一个引脚, 我的所有线路全是用电烙铁焊接的,线路丑爆了,在此就不上图了,为了后续程序好写一点,LED的正极和单片机的引脚的连线最好多考虑一下 好了,废话不多说了,直接上代码,只做了几个动画,可以按照自己的想法再添加 #include reg52.h #inclu
[单片机]
51单片机ALE、PSEN、EA、RD、WR脚的使用
使用ALE信号作为低8位地址的锁存控制信号。 以PSEN信号作为扩展程序存储器的读选通信号,在读外部ROM是PSEN是低电平有效,以实现对ROM 的读操作。 以EA信号作为内外程序存储器的选择控制信号,当其为低电平时,对ROM的读操作限定在外部的程序存储器,当其为高电平时, 对ROM的读操作是从内部存储器开始的,并可延至外部程序存储器. 由RD和WR信号作为扩展数据存储器和I/O口的读选通、写选通信号。 使用ALE信号作为低8位地址的锁存控制信号。 以PSEN信号作为扩展程序存储器的读选通信号,在读外部ROM是PSEN是低电平有效,以实现对ROM 的读操作。 以EA信号作为内外程序存储器的选择控制信号,当其为低电平时,对ROM的
[单片机]
AT89S51单片机对数字电压表的设计
利用单片机AT89S51与ADC0809设计一个数字电压表,能够测量0-5V之间的直流电压值,四位数码显示,但要求使用的元器件数目最少。 1. 电路原理图 图1.28.1 2. 系统板上硬件连线 a) 把“单片机系统”区域中的P1.0-P1.7与“动态数码显示”区域中的ABCDEFGH端口用8芯排线连接。 b) 把“单片机系统”区域中的P2.0-P2.7与“动态数码显示”区域中的S1S2S3S4S5S6S7S8端口用8芯排线连接。 c) 把“单片机系统”区域中的P3.0与“模数转换模块”区域中的ST端子用导线相连接。 d) 把“单片机系统”区域中的P3.1与“模数转换模块”区域中的OE端子用导线相连接。 e) 把“单片机系
[单片机]
AT89S<font color='red'>51单片机</font>对数字电压表的设计
热门资源推荐
热门放大器推荐
  •  pdf文件电子电路实用原理图300例
  •  zip文件STC51单片机程序与仿真练习
  •  pdf文件从零开始学单片机技术 (刘建清)
  •  pdf文件单片机与嵌入式系统 (关永峰,于红旗 主编)
  • 系统发生错误

    系统发生错误

    您可以选择 [ 重试 ] [ 返回 ] 或者 [ 回到首页 ]

    [ 错误信息 ]

    页面错误!请稍后再试~

小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

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

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