89C51单片机设计多功能低频函数信号发生器,能产生方波、正弦波、三角波等信号波形
2021年基于5单片机的信号发生器-完整电路、程序

摘要欧阳光明(2021.03.07)本文以STC89C51单片机为核心设计了一个低频函数信号产生器。
信号产生器采取数字波形合成技术,通过硬件电路和软件法度相结合,可输出自界说波形,如正弦波、方波、三角波、三角波、梯形涉及其他任意波形,波形的频率和幅度在一定规模内可任意修改。
波形和频率的修改通过软件控制,幅度的修改通过硬件实现。
介绍了波形的生成原理、硬件电路和软件部分的设计原理。
本系统可以产生最高频率798.6HZ的波形。
该信号产生器具有体积小、价格低、性能稳定、功能齐全的优点。
关键词:低频信号产生器;单片机;D /A转换;1设计选题及任务设计题目:基于单片机的信号产生器的设计与实现任务与要求:设计一个由单片机控制的信号产生器。
运用单片机系统控制产生多种波形,这些波形包含方波、三角波、锯齿波、正弦波等。
信号产生器所产生的波形的频率、幅度均可调节。
并可通过软件任意修改信号的波形。
基本要求:1. 产生三种以上波形。
如正弦波、三角波、矩形波等。
2.最年夜频率不低于500Hz。
并且频率可按一定规律调节,如周期按1T,2T,3T,4T或1T,2T,4T,8T变更。
3.幅度可调,峰峰值在0——5V之间变更。
扩展要求:产生更多的频率和波形。
2系统概述2.1计划论证和比较2.1.1总体计划:计划一:采取模拟电路搭建函数信号产生器,它可以同时产生方波、三角波、正弦波。
可是这种模块产生的不克不及产生任意的波形(例如梯形波),并且频率调节很不便利。
计划二:采取锁相式频率合成器,利用锁相环,将压控振荡器(VCO)的输出频率锁定在所需频率上,该计划性能良好,但难以达到输出频率笼盖系数的要求,且电路庞杂。
计划三:使用集成信号产生器产生芯片,例如AD9854,它可以生成最高几十MHZ的波形。
可是该计划也不克不及产生任意波形(例如梯形波),并且价格昂贵。
计划四:采取AT89C51单片机和DAC0832数模转换器生成波形,加上一个低通滤波器,生成的波形比较纯洁。
基于51单片机的信号发生器-完整电路、程序之欧阳歌谷创编

摘要欧阳歌谷(2021.02.01)本文以STC89C51单片机为核心设计了一个低频函数信号发生器。
信号发生器采用数字波形合成技术,通过硬件电路和软件程序相结合,可输出自定义波形,如正弦波、方波、三角波、三角波、梯形波及其他任意波形,波形的频率和幅度在一定范围内可任意改变。
波形和频率的改变通过软件控制,幅度的改变通过硬件实现。
介绍了波形的生成原理、硬件电路和软件部分的设计原理。
本系统可以产生最高频率798.6HZ的波形。
该信号发生器具有体积小、价格低、性能稳定、功能齐全的优点。
关键词:低频信号发生器;单片机;D /A转换;1设计选题及任务设计题目:基于单片机的信号发生器的设计与实现任务与要求:设计一个由单片机控制的信号发生器。
运用单片机系统控制产生多种波形,这些波形包括方波、三角波、锯齿波、正弦波等。
信号发生器所产生的波形的频率、幅度均可调节。
并可通过软件任意改变信号的波形。
基本要求:1. 产生三种以上波形。
如正弦波、三角波、矩形波等。
2.最大频率不低于 500Hz。
并且频率可按一定规律调节,如周期按1T,2T,3T,4T或1T,2T,4T,8T变化。
3.幅度可调,峰峰值在0——5V之间变化。
扩展要求:产生更多的频率和波形。
2系统概述2.1方案论证和比较2.1.1总体方案:方案一:采用模拟电路搭建函数信号发生器,它可以同时产生方波、三角波、正弦波。
但是这种模块产生的不能产生任意的波形(例如梯形波),并且频率调节很不方便。
方案二:采用锁相式频率合成器,利用锁相环,将压控振荡器(VCO)的输出频率锁定在所需频率上,该方案性能良好,但难以达到输出频率覆盖系数的要求,且电路复杂。
方案三:使用集成信号发生器发生芯片,例如AD9854,它可以生成最高几十MHZ的波形。
但是该方案也不能产生任意波形(例如梯形波),并且价格昂贵。
方案四:采用AT89C51单片机和DAC0832数模转换器生成波形,加上一个低通滤波器,生成的波形比较纯净。
AT89C51单片机的信号发生器设计与Proteus仿真

---------------------------------------------------------------范文最新推荐------------------------------------------------------ AT89C51单片机的信号发生器设计与Proteus仿真摘要基于单片机的信号发生器具有广阔的应用和市场价值。
本提出了一种基于AT89C51单片机和DAC0832D/A转化芯片的信号发生器系统的设计方案。
整个系统包括六个部分:主控制模块、D/A转换模块、字符显示模块、频率显示模块、键盘扫描模块、波形切换模块,主要实现以下功能:产生正弦波、三角波、方波、锯齿波;通过波形切换模块切换输出波形形式;通过键盘扫描电路调节波形的频率、幅度以及输出;通过MAX7221驱动数码管实时显示频率;通过液晶显示芯片LM016L显示字符。
系统在软件平台Proteus 7 professional和Keil uVision3下开发,软件仿真测试验证了硬件电路的可行性和准确性。
12027关键词信号发生器单片机DAC0832Proteus毕业设计说明书(论文)外文摘要1 / 12TitleDESIGN AND SIMULATION OF SIGNAL GENERATOR BASED ON SCMAbstractThe signal generator based on SCM has a wide prospect of application andmarket value. A design of signal generator on the basis of the SCM AT89C51 and the D/A convertor DAC0832 is presented in this paper. The system is formed by six parts: main control unit, D/A conversion unit, character displaying unit, frequency displaying unit, keyboard scanning unit, waveform switching unit. The system has these functions:it can generate sine wave, triangle wave, square wave, and sawtooth wave. The form of the output wave can be changed by the waveform switching unit. The frequency, amplitude and output or not of the wave can be adjusted through the keyboard scanning unit. And the frequency can be displayed through nixie tube driven by MAX7221 simultaneously. It also provides a---------------------------------------------------------------范文最新推荐------------------------------------------------------liquid crystal display chip LM016L to display some characters you want. The system is developed on the software platform of Proteus 7 professional and Keil uVision3. The simulation test of software verifies the feasibility and accuracy of hardware circuit.1绪论各种信号均可用函数来表示,能够产生如方波、锯齿波、正弦波等标准测试信号的仪器设备叫做函数信号发生器[1],亦称波形发生器。
基于AT89C51单片机的波形发生器设计

生,中级职称,研究方向:电气工程及其自动化。
值的变化曲线。
2芯片的选择
单片机是一种集成电路芯片,它被广泛的应用于各个 领域,例如在家用电器领域、医用设备领域、工业控制领域、 仪器仪表领域等等。凡是与控制或简单计算有关的电子设
备都可以用单片机来实现。AT89C51由运算器、控制器、
1波形发生器原理
波形发生器用途十分广泛,它能让我们观察到各种不 同信号随时间变化的波形曲线,还可以用它测试各种不同 的电量,如电流、电压、幅度、相位差等等。波形发生器是将 由高速电子组成的电子束通过狭窄的间隙,打在涂有荧光 物质的屏面上,产生细小的光点。收到被测信号以后,电子 束就像一支笔的笔尖,可以在屏面上描绘出被测信号瞬时
设置延时函数。对main函数进行编辑,使用while语句 套接,当按键按下时,设定匸0, <64,设置方波下沿 Pl=0x00,延时,再设置方波下沿Pl=0xff,延时。否则, 匸0"250,让P1等于i,设置锯齿波函数i+二step,延时。 将所有程序语言输入Keil uVision4软件进行模拟运行,
4 电路设计 按设计要求选取元器件,所用元器件如下:AT89C51.
30pF CAP、CAP-ELEC、CRYSTAL, 10K RES、BUT TON, LM358N、POWER、GROUND、DAC0832、RESPACK-8O注意在选择虚拟示波器时应选用可以显示方波 和锯齿波的示波器。在ISIS 7 Professional W中将上述 元器件连接起来,其中DAC0832设置为直通方式,运算放大
4结论 可以发现20世纪80〜90年代住宅的柱、梁部件的承
受力虽然满足了当时设计和建造的规范要求,然而相关规 范文件不修正,当时的设计已经无法满足现状,也不符 合现行文件对住宅的构造和承受力的要求。
基于51单片机的信号发生器-完整电路、程序之欧阳语创编

摘要本文以STC89C51单片机为核心设计了一个低频函数信号发生器。
信号发生器采用数字波形合成技术,通过硬件电路和软件程序相结合,可输出自定义波形,如正弦波、方波、三角波、三角波、梯形波及其他任意波形,波形的频率和幅度在一定范围内可任意改变。
波形和频率的改变通过软件控制,幅度的改变通过硬件实现。
介绍了波形的生成原理、硬件电路和软件部分的设计原理。
本系统可以产生最高频率798.6HZ的波形。
该信号发生器具有体积小、价格低、性能稳定、功能齐全的优点。
关键词:低频信号发生器;单片机;D /A转换;1设计选题及任务设计题目:基于单片机的信号发生器的设计与实现任务与要求:设计一个由单片机控制的信号发生器。
运用单片机系统控制产生多种波形,这些波形包括方波、三角波、锯齿波、正弦波等。
信号发生器所产生的波形的频率、幅度均可调节。
并可通过软件任意改变信号的波形。
基本要求:1. 产生三种以上波形。
如正弦波、三角波、矩形波等。
2.最大频率不低于500Hz。
并且频率可按一定规律调节,如周期按1T,2T,3T,4T或1T,2T,4T,8T变化。
3.幅度可调,峰峰值在0——5V之间变化。
扩展要求:产生更多的频率和波形。
2系统概述2.1方案论证和比较2.1.1总体方案:方案一:采用模拟电路搭建函数信号发生器,它可以同时产生方波、三角波、正弦波。
但是这种模块产生的不能产生任意的波形(例如梯形波),并且频率调节很不方便。
方案二:采用锁相式频率合成器,利用锁相环,将压控振荡器(VCO)的输出频率锁定在所需频率上,该方案性能良好,但难以达到输出频率覆盖系数的要求,且电路复杂。
方案三:使用集成信号发生器发生芯片,例如AD9854,它可以生成最高几十MHZ的波形。
但是该方案也不能产生任意波形(例如梯形波),并且价格昂贵。
方案四:采用AT89C51单片机和DAC0832数模转换器生成波形,加上一个低通滤波器,生成的波形比较纯净。
它的特点是可产生任意波形,频率容易调节,频率能达到设计的500HZ以上。
【免费下载】基于51单片机和DAC0832设计多功能低频函数信号发生器

对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电,力根通保据过护生管高产线中工敷资艺设料高技试中术卷资,配料不置试仅技卷可术要以是求解指,决机对吊组电顶在气层进设配行备置继进不电行规保空范护载高与中带资负料荷试下卷高问总中题体资,配料而置试且时卷可,调保需控障要试各在验类最;管大对路限设习度备题内进到来行位确调。保整在机使管组其路高在敷中正设资常过料工程试况中卷下,安与要全过加,度强并工看且作护尽下关可都于能可管地以路缩正高小常中故工资障作料高;试中对卷资于连料继接试电管卷保口破护处坏进理范行高围整中,核资或对料者定试对值卷某,弯些审扁异核度常与固高校定中对盒资图位料纸置试,.卷保编工护写况层复进防杂行腐设自跨备动接与处地装理线置,弯高尤曲中其半资要径料避标试免高卷错等调误,试高要方中求案资技,料术编试交写5、卷底重电保。要气护管设设装线备备置敷4高、调动设中电试作技资气高,术料课中并3中试、件资且包卷管中料拒含试路调试绝线验敷试卷动槽方设技作、案技术,管以术来架及避等系免多统不项启必方动要式方高,案中为;资解对料决整试高套卷中启突语动然文过停电程机气中。课高因件中此中资,管料电壁试力薄卷高、电中接气资口设料不备试严进卷等行保问调护题试装,工置合作调理并试利且技用进术管行,线过要敷关求设运电技行力术高保。中护线资装缆料置敷试做设卷到原技准则术确:指灵在导活分。。线对对盒于于处调差,试动当过保不程护同中装电高置压中高回资中路料资交试料叉卷试时技卷,术调应问试采题技用,术金作是属为指隔调发板试电进人机行员一隔,变开需压处要器理在组;事在同前发一掌生线握内槽图部内 纸故,资障强料时电、,回设需路备要须制进同造行时厂外切家部断出电习具源题高高电中中源资资,料料线试试缆卷卷敷试切设验除完报从毕告而,与采要相用进关高行技中检术资查资料和料试检,卷测并主处且要理了保。解护现装场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。
基于51单片机的简易函数信号发生器资料
创新性实验研究报告实验项目名称_简易函数信号发生器四、实验内容1、运用keil软件对程序进行编写,运行程序,并进行程序修改。
2、运用protues软件进行硬件电路仿真设计。
3、将程序下载到仿真单片机中,并观测输出波形。
4、对程序进行修改,再次运行仿真软件,直到输出理想的波形。
5、仿照仿真软件进行硬件电路的焊接。
6、将程序下载到单片机,并用示波器测试输出波形。
7、对程序进行修改,直到输出满意的波形为止。
3、实验步骤1、首先打开keil软件.2、运用keil软件对程序进行编写,程序见附件。
3、打开protues软件.4、运用protues软件对硬件电路进行设计。
9C51单片机是该信号发生器的核心,具有2个定时器,32个并行I/O口,1个串行I/O口,5个中断源。
由于本设计功能简单,数据处理容易,数据存储空间也足够,因为我们采用了片选法选择芯片,进行芯片的选择和地址的译码。
在单片机最小最小系统中,单片机从P1口接收来自键盘的信号,并通过P0口输出控制信号,通过DA转换芯片最终由示波器显示输出波形。
单片机引脚分配如下:�XTAL1,XTAL2:外接晶振,产生时钟信号。
�RST:复位电路;�P2口:8位数字信号输出输出,外接DAC0832;�P3.6口和P3.7口:DAC0832的时钟信号;单片机模块单片机输出的是数字信号,因为要得到模拟信号的波形就必须对其进行数模转换。
我们采用了DAC0832数模转换器,该芯片具由8位输入锁存器、8位DAC寄存器、8位D/A转换器及转换控制电路四部分构成。
由于其输出为电流输出,因为外加运算放大器LM324使之转换为电压输出。
最后通过示波器显示输出的波形。
数模转换模块运放模块整体硬件电路图五、实验结果与分析1、实验现象、数据记录仿真波形2、对实验现象、数据及观察结果的分析与讨论:经过观察调试,再观察,再调试,最终输出的波形较为理想。
此次试验经过一系列的调试,最终输出的波形为正弦波、方波、三角波。
电子综合实践-低频函数波形发生器
低频函数波形发生器一、设计任务与要求技术指标:波形:三角波、正弦波、方波、锯齿波,频率:0.1Hz~1KHz控制方式:能选择不同的波形,并且能显示出当前产生的波形的频率值。
输入电压:-5V~+5V提高要求:上限频率扩展到100Khz二、低频信号发生器的方案研究2.1 总体方案论证与设计信号发生器的实现方法通常有以下几种:方案一:用分立元件组成的函数发生器:通常是单函数发生器且频率不高,其工作不很稳定,不易调试。
方案二:可以由晶体管、运放IC等通用器件制作,更多的则是用专门的函数信号发生器IC产生。
早期的函数信号发生器IC,如L8038、BA205、XR2207/2209等,它们的功能较少,精度不高,频率上限只有300kHz,无法产生更高频率的信号,调节方式也不够灵活,频率和占空比不能独立调节,二者互相影响。
方案三:利用专用直接数字合成DDS芯片的函数发生器:能产生任意波形并达到很高的频率。
但成本较高。
方案四:采用AT89C51单片机和DAC0832芯片,直接连接键盘和显示。
该种方案主要对AT89C51单片机的各个I/O口充分利用. P1口是连接键盘以及接显示电路,P2口连接DAC0832输出波形.这样总体来说,能对单片机各个接口都利用上,而不在多用其它芯片,从而减小了系统的成本.也对按照系统便携式低频信号发生器的要求所完成.占用空间小,使用芯片少,低功耗。
综合考虑,方案四各项性能和指标都优于其他几种方案,能使输出频率有较好的稳定性,充分体现了模块化设计的要求,而且这些芯片及器件均为通用器件,在市场上较常见,价格也低廉,样品制作成功的可能性比较大,所以本设计采用方案四。
2.2 总方案设计本次设计所研究的就是对所需要的某种波形输出对应的数字信号,在通过D/A转换器和单片机部分的转换输出一组连续变化的05V的电压脉冲值。
在设计~时分块来做,按波形设定、D/A转换、51单片机连接、键盘控制四个模块的设计。
函数信号发生器设计方案
2、 方案二
由8M晶振产生的信号,经8253分频后,产生100Hz的方波信号。由锁相环CD4046和8253进 行N分频,输出信号送入正弦波产生电路和三角波产生电路,其中正弦波采用
查表方式产 生。计数器的输出作为地址信号,并将存储器2817的波形数据读出,送DAC0832进行D/A 转换,输出各种电压波形,并经过组合,可以得到各种波形。输出信号
7. 能够显示频率和电压
根据题目的要求,我们一共提出了三种设计方案,分别介绍如下: 1、 方案一
采用低温漂、低失真、高线性单片压控函数发生器ICL8038,产生频率受控可变的正弦
波 ,可实现数控频率调整。通过D/A和5G353进行输出信号幅度的控制。输出信号的频
率、 幅度参数由4x4位键盘输入,结果输出采用6位LED显示,用户设置信息的存储由
计具有线路简单、结构紧凑、价格低廉、性能优越等优点。
关键词:信号发生器;单片机;波形调整
Function Generator
Abstract: The design is composed of single-chip AT89C52 generator can produ
ce the triangular wave, square wntrol can be
5、方案一和方案二的频率变换时间主要是它的反馈环处理时间和压控振荡器的响应时间 ,通常大于1ms。而方案三的频率变换时间主要是数字处理延迟,通常为几十个ns。
从以上的方案比较可以看出,方案三结构比较复杂,但具有输出频率稳定性高、频率输 出线性度好、频率分辨率高、波形准确、频率变换时间小、相位噪声小、人机界面友好 ,易于控制等优点,性能优良。是本次设计的理想设计方案。
过一个模拟滤波器后,得到最终的模拟信号波形。通过高速D/A产生数字正弦数字波形和三角数字波形,数字正弦波通过带通滤波器后得到一个对应的模拟正弦波信号,最后该模拟
AT89S51的简易波形发生器
四川职业技术学院综合实验课程报告实验名称:单片机的简易信号发生器实训地点:2J415 班级:10电技2班学号: XX XX XX 姓名:XXX XXX XXXX 指导教师:成XX XXX时间:2011-12-12至2011-12-16摘要本系统是基于AT89C51单片机的数字式低频信号发生器。
采用A T89C51单片机作为控制核心,外围采用数字/模拟转换电路(DAC083 2)、运放电路(LM324)、按键和8位数码管等。
通过按键控制可产生方波、三角波、正弦波等,同时用数码管指示其对应的频率。
其设计简单、性能优好,可用于多种需要低频信号的场所,具有一定的实用性。
各种各样的信号是通信领域的重要组成部分,其中正弦波、三角波和方波等是较为常见的信号。
在科学研究及教学实验中常常需要这几种信号的发生装置。
为了实验、研究方便,研制一种灵活适用、功能齐全、使用方便的信号源是十分必要的。
本文介绍的是利用AT89C51单片机和数模转换器件DAC0832产生所需不同信号的低频信号源,其信号幅度和频率都是可以按要求控制的。
文中简要介绍了DAC0832数模转换器的结构原理和使用方法,AT89C51的基础理论,以及与设计电路有关的各种芯片。
文中着重介绍了如何利用单片机控制D/A转换器产生上述信号的硬件电路和软件编程。
信号频率幅度也按要求可调。
本次关于产生不同低频信号的信号源的设计方案,不仅在理论和实践上都能满足实验的要求,而且具有很强的可行性。
该信号源的特点是:体积小、价格低廉、性能稳定、实现方便、功能齐全。
关键词:AT89C51DAC0832 LM324 8位数码管显目录摘要.......................................................................................................... ..I 目录. (II)前言 (1)1 课题概述 (2)1.1课题目标 (2)1.2 课题分析 (2)2硬件原理 (3)2.1 单片机最小系统的设计 (3)2.1 AT89C-51单片机的接口布局 (4)2.2 时钟电路和复位电路 (5)2.2.1时钟电路 (5)2.2.2单片机的复位状态 (6)2.3 DAC0832的引脚及功能 (6)3 软件原理 (9)3.1 主流程图 (9)3.2 锯齿波仿真图 (10)3.4 方波仿真图 (11)总结 (13)附录 (14)I 源程序 (14)II 仿真电路 (18)III元器件清单 (18)前言波形发生器也称函数发生器,作为实验信号源,是现今各种电子电路实验设计应用中必不可少的仪器设备之一。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
波形发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。
本次课程设计使用的AT89S51 单片机构成的发生器可产生锯齿波、三角波、正弦波等多种波形,波形的周期可以用程序改变,并可根据需要选择单极性输出或双极性输出,具有线路简单、结构紧凑等优点。
在本设计的基础上,加上按钮控制和LED显示器,则可通过按钮设定所需要的波形频率,并在LED上显示频率、幅值电压,波形可用示波器显示。
二、系统设计波形发生器原理方框图如下所示。
波形的产生是通过AT89S51 执行某一波形发生程序,向D/A转换器的输入端按一定的规律发生数据,从而在D/A转换电路的输出端得到相应的电压波形。
在AT89S51的P2口接5个按扭,通过软件编程来选择各种波形、幅值电压和频率,另有3个P2口管脚接TEC6122芯片,以驱动数码管显示电压幅值和频率,每种波形对应一个按钮。
此方案的有点是电路原理比较简单,实现起来比较容易。
缺点是,采样频率由单片机内部产生故使整个系统的频率降低。
1、波形发生器技术指标1)波形:方波、正弦波、锯齿波;2)幅值电压:1V、2V、3V、4V、5V;3)频率:10HZ、20HZ、50HZ、100HZ、200HZ、500HZ、1KHZ;2、操作设计1)上电后,系统初始化,数码显示6个…-‟,等待输入设置命令。
2)按钮分别控制“幅值”、“频率”、“方波”、“正弦波”、“锯齿波”。
3)“幅值“键初始值是1V,随后再次按下依次增长1V,到达5V后在按就回到1V。
4)“频率“键初始值是10HZ,随后在按下依次为20HZ、50HZ、100HZ、200HZ、500HZ、1000HZ循环。
三、硬件设计本系统由单片机、显示接口电路,波形转换(D/A)电路和电源等四部分构成。
电路图2附在后1、单片机电路功能:形成扫描码,键值识别、键处理、参数设置;形成显示段码;产生定时中断;形成波形的数字编码,并输出到D/A接口电路和显示驱动电路。
AT89S51外接12M晶振作为时钟频率。
并采用电源复位设计。
复位电路采用上电复位,它的工作原理是,通电时,电容两端相当于短路,于是RST引脚上为高电平,然后电源通过对电容充电。
RST端电压慢慢下降,降到一定程序,即为低电平,单片机开始工作。
AT89S51的P2口作为功能按钮和TEC6122的接口。
P1口做为D/A转换芯片0832的接口。
用定时/计数器作为中断源。
不同的频率值对应不同的定时初值,允许定时器溢出中断。
定时器中断的特殊功能寄存器设置如下:定时控制寄存器TCON=20H;工作方式选择寄存器TMOD=01H;中断允许控制寄存器IE=82H。
2、显示电路功能:驱动6位数码管显示,扫描按钮。
由集成驱动芯片TEC6122、6位共阴极数码管和5个按钮组成。
当某一按钮按下时,扫描程序扫描到之后,通过P2口将数字信号发送到TEC6122芯片。
TEC6122是一款数字集成芯片。
它的外接电压也是+5V,并且由于数码管的载压较小,为了保护数码管,必须在两者间接电阻,大约是560欧。
扫描利用软件程序实现,当某一按键按下时,扫描程序立即检测到,随后调用子程序,执行相应的功能。
3、D/A电路功能:将波形样值的编码转换成模拟值,完成双极性的波形输出。
由一片0832和两块LM358运放组成。
DAC0832是一个具有两个输入数据寄存器的8位DAC。
目前生产的DAC芯片分为两类,一类芯片内部设置有数据寄存器,不需要外加电路就可以直接与微型计算机接口。
另一类芯片内部没有数据寄存器,输出信号随数据输入线的状态变化而变化,因此不能直接与微型计算机接口,必须通过并行接口与微型计算机接口。
DAC0832是具有20条引线的双列直插式CMOS器件,它内部具有两级数据寄存器,完成8位电流D/A转换,故不需要外加电路。
0832是电流输出型,示波器上显示波形,通常需要电压信号,电流信号到电压信号的转换可以由运算放大器LM358实现,用两片LM358可以实现双极性输出。
单片机向0832发送数字编码,产生不同的输出。
先利用采样定理对各波形进行抽样,然后把各采样值进行编码,的到的数字量存入各个波形表,执行程序时通过查表方法依次取出,经过D/A转换后输出就可以得到波形。
假如N个点构成波形的一个周期,则0832输出N 个样值点后,样值点形成运动轨迹,即一个周期。
重复输出N个点,成为第二个周期。
利用单片机的晶振控制输出周期的速度,也就是控制了输出的波形的频率。
这样就控制了输出的波形及其幅值和频率。
四、软件设计主程序和子程序都存放在AT89S51单片机中。
主程序的功能是:开机以后负责查键,即做键盘扫描及显示工作,然后根据用户所按的键转到相应的子程序进行处理,主程序框图如图1所示。
子程序的功能有:幅值输入处理、频率输入处理、正弦波输出、锯齿波输出、方波输出、显示等。
下面是程序#include <reg51.h>#define uchar unsigned char#define uint unsigned intsbit LCP=P2^2;sbit SCP=P2^1;sbit SI=P2^0;sbit S1=P2^3;sbit S2=P2^4;sbit S3=P2^5;sbit S4=P2^6;sbit S5=P2^7;sbit DA0832=P3^3;sbit DA0832_ON=P3^2;uchar fun=0,b=0,c=0,d=0,tl,th;uchar code tab[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};uchar codetosin[256]={0x80,0x83,0x86,0x89,0x8d,0x90,0x93,0x96,0x99,0x9c,0x9f,0xa2,0xa5,0xa8, 0xab,0xae,0xb1,0xb4,0xb7,0xba,0xbc,0xbf,0xc2,0xc5,0xc7,0xca,0xcc,0xcf,0xd1,0xd4,0xd6,0xd8,0xda,0xdd,0xdf,0xe1,0xe3,0xe5,0xe7,0xe9,0 xea,0xec,0xee,0xef,0xf1,0xf2,0xf4,0xf5,0xf6,0xf7,0xf8,0xf9,0xfa,0xfb,0xfc,0xfd,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0 xff,0xff,0xff,0xfe,0xfd,0xfd,0xfc,0xfb,0xfa,0xf9,0xf8,0xf7,0xf6,0xf5,0xf4,0xf2,0xf1,0xef,0xee,0xec,0xea,0xe9,0x e7,0xe5,0xe3,0xe1,0xde,0xdd,0xda,0xd8,0xd6,0xd4,0xd1,0xcf,0xcc,0xca,0xc7,0xc5,0xc2,0xbf,0xbc,0xba,0xb7,0xb4,0xb1,0x ae,0xab,0xa8,0xa5,0xa2,0x9f,0x9c,0x99,0x96,0x93,0x90,0x8d,0x89,0x86,0x83,0x80,0x80,0x7c,0x79,0x76,0x72,0x6f,0x6c,0x69, 0x66,0x63,0x60,0x5d,0x5a,0x57,0x55,0x51,0x4e,0x4c,0x48,0x45,0x43,0x40,0x3d,0x3a,0x38,0x35,0x33,0x30,0x2e,0x2b,0x29,0x27, 0x25,0x22,0x20,0x1e,0x1c,0x1a,0x18,0x16,0x15,0x13,0x11,0x10,0x0e,0x0d,0x0b,0x0a,0x09,0x08,0x07,0x06,0x05,0x04,0x03,0x02, 0x02,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02 ,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09 ,0x0a,0x0b,0x0d,0x0e,0x10,0x11,0x13,0x15,0x16,0x18,0x1a,0x1c,0x1e,0x20,0x22,0x25,0x27,0x29,0x2b,0x2e,0x30,0x33,0x35,0x38, 0x3a,0x3d,0x40,0x43,0x45,0x48,0x4c,0x4e,0x51,0x55,0x57,0x5a,0x5d,0x60,0x63,0x66 ,0x69,0x6c,0x6f,0x72,0x76,0x79,0x7c,0x80 };void display(unsigned char command){unsigned char i;LCP=0;for(i=8;i>0;i--){SCP=0;if((command & 0x80)==0) {SI=0;}else{SI=1;}command<<=1;SCP=1;}LCP=1;}void key1(void){fun++;if(fun==4)fun=0x00;}void key2(void) {tl++;if(tl==0x1f)th++;}void key3(void) {tl--;if(tl==0x00)th--;}void key4(void) {double t;int f;TR0=0;t=(65535-th*256-tl)*0.4;f=(int)(1000/t);S3=tab[f%10];f=f/10;S2=tab[f%10];f=f/10;if(f==0)S1=0;elseS1=tab[f];TR0=1;}void key5(void){tl--;if(tl==0x00)th++;}void judge(void){uchar line,row,de1,de2,keym;P1=0x0f;keym=P1;if(keym==0x0f)return;for(de1=0;de1<200;de1++)for(de2=0;de2<125;de2++){;}P1=0x0f;keym=P1;if(keym==0x0f)return;P1=0x0f;line=P1;P1=0xf0;row=P1;line=line+row; /*存放特征键值*/if(line==0xde)key1();if(line==0x7e)key2();if(line==0xbd)key3();if(line==0x7d)key4();}void time0_int(void) interrupt 1 //中断服务程序{TR0=0;if(fun==1){DA0832=tosin[b]; //正弦波b++;}else if(fun==2) //锯齿波{if(c<128)DA0832=c;elseDA0832=255-c;c++;}else if(fun==3) // 方波{d++;if(d<=128)DA0832=0x00;elseDA0832=0xff;}TH0=th;TL0=tl;TR0=1;}void main(void) {TMOD=0X01; TR0=1;th=0xff;tl=0xd0;TH0=th;TL0=tl;ET0=1;EA=1;while(1){display(); judge();}}五、心得体会开始的时候由于没有经验,不知如何下手,所以就去图书管找了一些书看,尽管有许多的设计方案,可是总感觉自己还是有许多的东西弄不太清楚,于是就请教同学。