基于单片机和dac0832的波形发生器
- 格式:doc
- 大小:266.54 KB
- 文档页数:13
基于单片机和DAC0832的函数信号发生器的设计引言函数信号发生器是一种能够产生可调频率、可调振幅、可调相位和可调形状的电信号的设备。
它广泛应用于电子实验、通信、音频设备等领域。
本文介绍了一种基于单片机和DAC0832的函数信号发生器的设计方案。
单片机是一种集成电路,具有处理能力和存储能力,能够控制外围设备的工作。
DAC0832是一种数字模拟转换器,能够将数字信号转换为模拟信号。
设计原理函数信号发生器主要由脉冲发生单元、频率调节单元、振幅调节单元、相位调节单元和输出单元组成。
脉冲发生单元负责产生基础脉冲信号,频率调节单元负责调节脉冲信号的频率,振幅调节单元负责调节脉冲信号的振幅,相位调节单元负责调节脉冲信号的相位,输出单元负责将脉冲信号输出。
本设计采用了AT89C51单片机作为控制核心,DAC0832作为模拟输出芯片。
AT89C51是一种8位微控制器,具有强大的IO能力和丰富的外设接口。
DAC0832是一种8位DAC,具有较高的精度和稳定性。
设计步骤1.硬件设计硬件设计包括电路原理图的绘制和元器件的选型。
根据设计要求,确定电路中需要使用的电阻、电容、稳压器等元器件,并通过计算和选型手册选取合适的数值和型号。
2.软件设计软件设计包括单片机程序的编写和功能实现。
根据硬件设计的需求,编写控制程序,实现基础脉冲信号的生成和频率、振幅、相位的调节。
3.调试和测试将硬件组装完成后,使用示波器和信号发生器进行信号的调试和测试。
通过观察输出信号的频率、振幅、相位以及波形形状是否满足设计要求,对硬件和软件进行优化和调整。
4.功能扩展通过增加控制接口和调节电路,可以实现更多功能的拓展。
例如,通过添加旋钮、按键和显示屏等元件,实现手动调节和参数显示功能。
通过添加USB或无线通信模块,实现远程控制和数据传输。
结论本设计基于单片机和DAC0832的函数信号发生器,通过控制单片机和DAC芯片,实现了可调频率、可调振幅、可调相位和可调形状的信号输出。
基于单片机和dac0832的波形发生器目录一、内容摘要二、设计任务三、元器件说明四、硬件电路设计五、程序编译一、内容摘要波形发生器是一种常用的信号源,广泛的应用于电子电路、自动控制系统和教学实验等领域,是现代测试领域内应用最为广泛的通用仪器之一。
在研制、生产、测试和维修各种电子元件、部件以及整机设备时,都需要有信号源。
由它产生不同频率不同波形的电压、电流信号并加到被测器件或设备上,用其他仪器观察。
测量被测仪器的输出响应,以分析确定它们的性能参数。
信号发生器是电子测量领域中最基本、应用最为广泛的一类电子仪器。
它可以产生多种波形信号,如方波、锯齿波、三角波等,因而广泛应用于通信、雷达、导航、宇航等领域。
本次课程设计使用的AT89C51单片机构成的发生器可产生三角波,正弦波和方波,波形的周期可用程序改变,并可根据需要选择单极性输出或双极性输出,具有线路简单、结构紧凑、性能优越等特点。
此设计给出了源代码,通过仿真测试,其性能指标达到了设计要求。
二、设计任务利用DAC0832输出正弦波信号(用示波器观察输出波形),初始频率为50Hz,变频采用“+”、“-”键控制,实时测量输出信号的频率值,并分析和实测输出信号的频率范围。
具体完成以下任务:1.完成系统的方案设计,给出系统框图。
2.完成系统的硬件设计,给出硬件电路图和系统资源分配表。
3.完成系统的软件设计,给出程序流程图和程序编写。
4.运用Proteus仿真软件对所设计的系统进行调试和仿真,直到预定的功能全部仿真通过,给出仿真结果。
5.准确、高质量地进行印刷电路板的焊接。
6.完成课程设计报告。
三、元器件说明知识简介:DAC0832当今世界在以电子信是8位分辨率的D/A转换集成芯片,与微处理器完全兼容,这个系列的芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到了广泛的应用。
这类D/A转换器由8位输入锁存器,8位DAC寄存器,8位DA转换电路及转换控制电路构成。
东北石油大学课程设计2012年3月 9 日东北石油大学课程设计任务书课程单片机原理及应用课程设计题目基于DAC0832芯片的简单信号发生器设计专业班级姓名学号一、设计目的:训练学生综合运用己学课程的基本知识,独立进行单片机应用技术开发工作,掌握单片机程序设计、调试,应用电路设计、分析及调试检测。
二、设计要求:1. 应用MCS-51单片机设计基于DAC0832芯片的简单信号发生器;2. 频率范围:0-1KHZ,输出电压:方波Up-p>3V,正弦波Up-p> 1V,波形特性:方波tr<100us,正弦波非线性失真系数r<5%;3. 硬件设计根据设计的任务选定合适的单片机,根据控制对象设计接口电路。
设计的单元电路必须有工作原理,器件的作用,分析和计算过程;4. 软件设计根据电路工作过程,画出软件流程图,根据流程图编写相应的程序,进行调试并打印程序清单;5. 原理图设计根据所确定的设计电路,利用Protel等有关工具软件绘制电路原理图、PCB板图、提供元器件清单。
三、参考资料:[1] 单片微型计算机与接口技术,李群芳、黄建编著,电子工业出版社;[2] 单片机原理及应用,张毅刚编著,高等教育出版社;[3] 51系列单片机及C51程序设计,王建校,杨建国等编著,科学出版社;[4] 单片机原理及接口技术,李朝青编著,北京航空航天大学出版社;完成期限2012.3.5—2012.3.9指导教师专业负责人2012年 3 月2 日目录目录 (I)第1章概述 (1)第2章信号发生器的原理 (2)2.1 AT89C51芯片的简单介绍 (2)2.2 数模转换器DAC0832的简单介绍 (4)2.3共阳数码管和运算放大器LM358 (6)第3章硬件电路设计 (7)3.1 单片机最小系统 (7)3.2 电源电路的设计 (8)3.3 D/A转换接口电路的设计 (8)第4章程序设计 (9)4.1 主程序设计 (9)4.2 信号发生器源程序 (10)第5章总结 (14)参考文献 (15)第1章概述信号发生器是一种常用的信号源,广泛用于电子电路、自动控制系统和教学实验等领域,目前使用的信号发生器大部分是模拟电路组成的,体积大、可靠性差、准确度低、并且用于低频时,其RC要很大,大电阻,大电容在制造上有困难,参数准确度难以保证,漏电损耗大。
以多种波形发生器为对象,选择单片机、独立按键及D/A转换器,设计相应的电路构成多种波形发生器。
功能要求:1.有4个功能键,分别用来选择输出:三角波、锯齿波、梯形拨、方波。
2.按下某个功能键,进入中断,在中断程序中查询、确定是哪个功能键,并输出对应的波形。
3.显示器2位,显示功能号01、02、03、04,代表输出三角波、锯齿波、梯形拨、方波。
设计任务:1、完成单片机最小系统电路设计。
2、完成按键电路设计。
3、完成D/A转换及接口电路的设计。
4、完成显示电路的设计。
电路图如下:(proteus仿真通过)其一仿真图:源程序如下:ORG 00HSTART:LJMP MAINORG 0003H;外部xxxxLJMP INSER;转到xx服务程序ORG 0030HMAIN:MOV DPTR,#7FFFH;DAC0832地址SETB EX0;允许xxSETB IT0;负边沿触发方式SETB EA;开xxHERE:JB 20H.0,ST;锯齿波处理JB 20H.1,TRI;三角波处理JB 20H.2,SQ;方波处理JB 20H.3,TXB;梯形波处理SJMP HERE;等待xxINSER:JNB P1.0, LL1;中断服务程序,查询按键SJMP L1LL1:MOV 20H,#00HSETB 20H.0;设置锯齿波标志SJMP RTL1:JNBP1.2, LL2SJMP L2LL2:MOV 20H,#00HSETB 20H.1;设三角梯波标志SJMP RTL2:JNB P1.4, LL3SJMP L3LL3:MOV 20H,#00HSETB 20H.2;设置方波标志SJMP RTL3:JNB P1.6, LL4SJMP RTLL4:MOV 20H,#00HSETB 20H.3;设置梯形波标志RT:RETI;xx返回ST:1.1;锯齿波CLR P1.3SETB P1.5CLR P1.7MOVA,#00HLOOPP:MOVX@DPTR,A;启动D/A转换INCAJB20H.0,LOOPP;连续输出波形LJMPHERETRI:CLR P1.1;三角波CLR P1.3CLR P1.51.7MOVA,#00HUP:MOVX@DPTR,A;启动D/A转换INCA;上升沿CJNEA,#0FFH,UPDOWN:MOVX@DPTR,A;启动D/A转换DECA;下降沿CJNEA,#00H,DOWNJB20H.1,UP;连续输出波形LJMPHERESQ:CLR P1.1;方波SETB P1.3CLR P1.5CLR P1.7MOVA,#00HMOVX@DPTR,A;DAC输出低电平ACALLDELAY;xx1MOVA,#0FFHMOVX@DPTR,A;DAC输出高电平ACALLDELAY;xx2JB20H.2, SQ;连续输出波形LJMPHERETXB:CLR P1.1;梯形波CLR P1.3SETB P1.5SETB P1.7MOV A,#00HMOVX @DPTR,AACALL DELAYLOOP:MOVX @DPTR,AINC ACJNE A,#0FFH,LOOP ACALL DELAY MOVX @DPTR,A LOOP1:DEC A MOVX @DPTR,A CJNE A,#00H,LOOP1 MOVX @DPTR,A ACALL DELAYJB 20H.3,LOOP DELAY:MOVR4,#0FHLOOP11:MOVR5,#10H LOOP22: NOPNOPNOPDJNZR5,LOOP22 DJNZR4,LOOP11 RETEND;xx子程序。
dac0832波形发生器原理
DAC0832波形发生器是一种使用8位D/A转换器的波形发生器,其工作原理是将数字信号转换为模拟信号。
其工作原理主要基于以下步骤:
1. DAC0832接收从微控制器(如单片机)发送过来的数字信号,这些数字信号代表了要生成的波形(如正弦波、方波、锯齿波、三角波等)的参数(如幅度、频率等)。
2. DAC0832将这些数字信号转换为模拟信号,即将数字信号的幅度转换为模拟信号的电压或电流。
这一步是通过D/A转换器完成的,它使用一个8
位的数字输入和一个模拟输出。
3. 生成的模拟信号经过运算放大器进行放大和滤波,以获得所需的波形。
4. 输出的模拟信号可以连接到示波器、音频设备或其他需要模拟信号的设备上。
在实现波形时,需要使用定时器来控制段码表输出速度,以控制波形的频率。
对于每种波形,可以通过改变数字信号的值和控制输出的时间来实现不同的频率和幅度。
总的来说,DAC0832波形发生器的工作原理是基于数字信号转换为模拟信号的过程,通过控制数字信号的值和控制输出的时间来实现不同的波形和参数。
本科生毕业论文(设计)题目:基于DAC0832波形发生器设计与实现系部计算机科学与技术学科门类工科专业计算机科学与技术学号姓名指导教师2013年 5 月15 日装订线基于dac0832的波形发生器设计与实现摘要波形发生器是能够产生大量的标准信号和用户定义信号,并保证高精度、高稳定性、可重复性和易操作性的电子仪器。
函数波形发生器具有连续的相位变换、和频率稳定性等优点,不仅可以模拟各种复杂信号,还可对频率、幅值、相移、波形进行动态、及时的控制,并能够与其它仪器进行通讯,组成自动测试系统,因此被广泛用于自动控制系统、震动激励、通讯和仪器仪表领域。
本论文是研究基于DAC0832波形发生器设计与实现。
论文采用文献研究法、模拟法、观察法等方法进行课题的研究。
系统是用A T89S51作为系统的控制核心,外围电路采用数字/模拟转换电路(DAC0832),运放电路(TL082),按键,定位器,LCD显示器等。
系统通过按键来和定位器进行整个系统的控制,按键控制切换产生正弦波,锯齿波,三角波,阶梯波,四中波形,而幅值和占空比是通过定位器来进行调节。
系统经过调试和最后的检测,可以得出本系统一下特点:性能较好,稳定性强,价格便宜,容易操作,具有一定的实用性,最后的成品可以用在常用的有波形发生器功能要求的应用电子仪器设备上。
关键词:单片机波形发生器 DAC0832ABSTRACTThe profile generator is can produce the massive standard signals and the user definition signal, and guarantees the high accuracy, high stable, the repeatability and the easy operational electronic instrumentation. The function profile generator has the continual phase transformation, and merits and so on frequency stability, not only may simulate each kind of complex signal, but also may to the frequency, the peak-to-peak value, the phase-shift, the profile carry on the tendency, the prompt control, and can carry on the communication with other instruments, the composition automated test system, therefore widely uses in the automatic control system, the vibration drive, the communication and the instrument measuring appliance domain.This paper is studing on waveform generator design and implementation based on the DAC0832. The system is used AT89S51as the core of the control system, a peripheral circuit using digital / analog conversion circuit ( DAC0832), operational amplifier circuit (TL082), keys, locator, LCD display etc.. The system through the keys and locator for the entire system control, The key control switch generates a sine wave, sawtooth, triangle wave, ladder wave, fourth waveform, while the amplitude and duty ratio is adjusted by the locator. The system debugging and the final test, the system can reach a characteristic: good performance, high stability, low price, easy to operate, has a certain practicality, the final product can be used in common with waveform generator function requirements of the application of electronic equipment.Keywords:MCU the waveform generator DAC0832目录第1章绪论 (1)1.1波形发生器现状 (1)1.2单片机在波形发生器中的应用 (1)1.3课题研究目的,内容,和方案设计 (1)第2章硬件电路的设计 (2)2.1波形发生器系统框图 (2)2.2 各模块之间的相连 (2)2.3各模块电路的设计 (5)2.3.1 D/A转换电路设计 (5)2.3.2复位电路设计 (5)2.4.3 按键电路设计 (6)2.4.4 I/V转换电路设计 (7)第3章软件设计 (8)3.1程序 (8)3.2按键程序模块 (9)3.3 锯齿波程序模块 (10)3.4三角波程序模块 (11)3.5正玄波程序模块 (12)3.6方波程序模块 (13)3.7延迟程序模块 (14)第4章总结 (15)致谢 (15)参考文献 (15)第1章绪论1.1波形发生器现状波形发生器作为一种常用的应用电子仪器设备,传统的波形发生器可以完全用硬件电路搭建,如应用555振荡电路可以产生正弦波,三角波,方波等波形,传统的波形发生器多采用这种方式设计,这种方式不应用单片机,但是这种方式存在波形质量差,控制难,可调范围小,电路复杂和体积大等缺点,在科学研究和生产实践中,如工业过程控制,生物医学,地震模拟震动等领域往往需要低频信号源,而由硬件搭建的波形发生器效果往往达不到好的效果,而且低频信号源所需要的RC很大,大电阻,大电容在制作上有困难,参数的精度也难以保证,而且体积大,漏电,体积大是该类波形发生器的显著缺点。
课程设计课程名称:低频信号源的设计专业年级:电子信息工程082班学生姓名:学号: 200805070211实习时间: 2011年6月30至7月1日指导教师:填写时间:2011年7 月3日一、设计任务及意义本系统是基于AT89C52单片机的数字式简易低频信号发生器。
用程序实现方波、锯齿波、三角波等信号,并在Protues电子设计平台上对方案进行了仿真。
消除了传统信号发生器存在元器件分散性造成波形失真的弊端。
系统采用AT89C52单片机作为控制核心,外围采用数字/模拟转换电路(DAC0832)、按键电路。
通过按键控制可产生方波、锯齿波、正弦波。
波形的频率和幅度在一定范围内可任意改变,其设计简单、性能优良,可用于多种需要低频信号源的场所,具有一定的实用性。
二、设计方案选择及论证系统方案比较方案一:采用函数信号发生器ICL8038集成模拟芯片,(如图2-1)它是一种可以同时产生方波、三角波、正弦波的专用集成电路。
但是这种模块产生的波形都不是纯净的波形,会寄生一些高次谐波分量,采用其他的措施虽可滤除一些,但不能完全滤除掉。
方案二:采用分立元件实现非稳态的多谐振振荡器,然后根据需要加入积分电路等构成正弦、矩形、三角等波形发生器。
这种信号发生器输出频率范围窄,而且电路参数设定较繁琐,其频率大小的测量往往需要通过硬件电路的切换来实现,操作不方便。
方案三:采用单片机和DAC0832数模转换器生成波形,由于是软件滤波,所以不会有寄生的高次谐波分量,生成的波形比较纯净。
它的特点是价格低、性能高,在低频范围内稳定性好、操作方便、体积小、耗电少。
经比较,方案三既可满足课程设计的基本要求又能充分发挥其优势,电路简单,易控制,性价比较高,所以采用该方案。
三、硬件设计系统总体框图设计本系统是以单片机AT89C51和8位D/A 转换芯片DAC0832共同实现正弦波,方波,锯齿波这三种常见波形的产生及显示相互切换的功能。
图3-1 系统总体框图 3.1单片机晶振电路对于MCS-51一般的晶振可以在1.2MHZ —12MHZ 之间选择,这是电容C 可以对应的选择10pf-30Pf 。
基于单片机的波形发生器摘要随着电子技术的发展,电子产品越来越走进人们的生活,在电子产品的生产应用和调试检验中经常需要产生一定频率的仿真信号用于驱动仪表或仪器,同时,在教学实验中也有很多的应用。
所以,从实用性、可靠性及经济性上考虑,设计一种基于单片机新型的、性能稳定的波形发生器是十分必要的。
本论文详细的阐述了基于单片机的波形发生器的设计,着重就硬件电路以及应用软件的设计进行了研究,对总体设计思路进行了阐述,介绍了芯片的选择,外围电路设计及主要流程图。
在熟悉单片机和数模转换芯片工作原理和应用方法的基础上,设计了各个模块的接口电路,并分析了各模块的主要功能。
在硬件电路的基础上对个部分对应的软件也进行了设计。
本文设计的波形发生器可以产生多种波形,成本低廉且操作简洁方便。
波形由软件产生各种数据再经过D/A转换后输出,除了能产生所要求的正弦、三角、方波、锯齿等多种波形外,并可根据实际情况的需要在波形存储器中写入不同的波形可以随时添加。
并有键盘输入和显示,显示部分采用LED设计,主要显示输出频率,此方案产生的最大频率大约10KHz。
可满足精度误差要求达到5 %的,可满足多种低频信号源的使用场所。
在各大专院校及其他行业具有很广泛的应用前景和推广价值。
关键词:单片机,波形发生器,数模转换,波形存储,频率THE SCM WAVEFORM GENERATORABSTRACTAlong with electronic technology's development,the electronic products enter people's life more and more,the production of electronic products testing and debugging often need to have a certain frequency signal for the simulation-driven instruments or equipment,simultaneously, also has many applications in the teaching experiment.Therefore, considered the usability, the reliability and the efficiency , designs a new kind wave generator which is based on the microcontroller and have the stable performance is very necessary.This paper elaborats on the details of the Single Chip Microcontroller waveform generator's design,focused on hardware and software for the design.And the overall design ideas were expounded.IT introduced the chip choice, the peripheral circuit design and the main flow chart.Based on the understand of microcontroller and D/A converter chip,I design the interface circuit and analyse the main functions of each module.On the hardware circuits on the basis of the corresponding parts of the software have also carried out design.In this paper, the design of the waveform generator can produce a variety of wave, low-cost operation simple and convenient.Waveform data generated by the software,then through another D / A converter outputs.In addition to produce the required sine, triangle, square and sawtooth waveform,according to actual needs this waveform generator also can produce other waveform.And a keyboard input and display,the display adopt LED, main display output frequency.The maximum frequency of this design is aboat 10 KHz.To meet the requirements of precision of error of 5 percent,and to meet a variety of sources to use low-frequencysignals places.Have the very widespread application prospect and promoted value in various universities, colleges and institutes and other professionsKEY WORDS:Single Chip Microcontroller,Waveform Generator,D/A,Amplitude,Frequency目录前言 (1)第1章绪论 (3)§1.1 课题的研究目的和意义 (3)§1.2 多种波形发生器国内外现状 (3)§1.3 主要研究内容 (4)第2章总体系统方案设计 (6)§2.1 波形发生方案选择 (6)§2.2 波形发生器整体设计 (7)§2.2.1 主要设计思想 (7)§2.2.2 系统组成 (7)§2.2.3 系统功能 (8)第3章系统硬件设计 (9)§3.1 中央处理模块 (9)§3.1.1 控制芯片选择 (9)§3.1.2 AT89C51单片机结构特点 (9)§3.1.3 系统外围电路设计 (14)§3.2 数模转换模块 (15)§3.2.1 芯片选择 (15)§3.2.2 DAC0832结构 (16)§3.2.3 DAC0832应用电路 (18)§3.3 波形存储模块 (18)§3.4 键盘模块 (20)§3.5 显示模块 (22)第4章软件设计 (23)§4.1 软件调试环境简介 (23)§4.2 程序设计 (23)§4.2.1 主程序设计 (23)§4.2.2 键盘程序设计 (24)结论 (26)参考文献 (27)致谢 (29)附录 (30)前言在现代社会,电子产品越来越走进人们的生活,并在社会生活的各个方面得到普遍应用,在电子产品的生产应用和调试检验中经常需要产生一定频率的仿真信号用于驱动仪表或仪器。
工业技术DOI:10.16660/ki.1674-098X.2011-5640-1953基于单片机的波形发生器①张弛 黄昊翀 李子萱 高华 董爱国 (中国地质大学 北京 100083)摘要:波形发生器是电子电路中常用的实验器材,目前市面上的波形发生器存在价格昂贵的问题,本文基于AT89C51单片机开发了一种低成本波形发生器,用简便的算法通过定时器实现了对波频率的控制。
通过中断实现频率的任意调节,使用DAC0832集成芯片进行数模转换,最后可以实现三角波、正弦波、方波和锯齿波的发生。
能手动切换波形,任意调节频率,幅度可连续调节,输出波形清晰稳定,波形延迟低,方法精简,成本低廉,具有很好的实际应用价值。
关键词:单片机 波形发生器 定时器 频率调制中图分类号:TM935 文献标识码:A 文章编号:1674-098X(2021)02(a)-0043-06Waveform Generator Based on MCUZHANG Chi HUANG Haochong LI Zixuan GAO Hua DONG Aiguo(China University of Geosciences, Beijing, 100083 China)Abstract: Waveform generator is an electronic circuit which is commonly used in the experimental equipment. The current waveform generator on the market is expensive. In this paper, a low-cost waveform generator is developed based on the AT89C51 MCU. A simple algorithm works with the timer to achieve control of the wave frequency. By interrupting frequency adjusted and the use of analog-to-digital conversion DAC0832 integrated chips can finally realize the triangle wave, sine wave, square wave, and sawtooth wave. It can manually switch waveforms at the same time, adjusted the frequency, amplitude of continuous adjustment, the output waveform is stable, clear waveform low latency. The method has good practical application value with compact and low cost.Key Words: MCU; Waveform generator; Timer; Frequency modulation①作者简介:黄昊翀(1984—),男,汉族,博士,讲师,研究方向为信息光学。
基于单片机和dac0832的波形发生器目录一、内容摘要二、设计任务三、元器件说明四、硬件电路设计五、程序编译一、内容摘要波形发生器是一种常用的信号源,广泛的应用于电子电路、自动控制系统和教学实验等领域,是现代测试领域内应用最为广泛的通用仪器之一。
在研制、生产、测试和维修各种电子元件、部件以及整机设备时,都需要有信号源。
由它产生不同频率不同波形的电压、电流信号并加到被测器件或设备上,用其他仪器观察。
测量被测仪器的输出响应,以分析确定它们的性能参数。
信号发生器是电子测量领域中最基本、应用最为广泛的一类电子仪器。
它可以产生多种波形信号,如方波、锯齿波、三角波等,因而广泛应用于通信、雷达、导航、宇航等领域。
本次课程设计使用的AT89C51单片机构成的发生器可产生三角波,正弦波和方波,波形的周期可用程序改变,并可根据需要选择单极性输出或双极性输出,具有线路简单、结构紧凑、性能优越等特点。
此设计给出了源代码,通过仿真测试,其性能指标达到了设计要求。
二、设计任务利用DAC0832输出正弦波信号(用示波器观察输出波形),初始频率为50Hz,变频采用“+”、“-”键控制,实时测量输出信号的频率值,并分析和实测输出信号的频率范围。
具体完成以下任务:1.完成系统的方案设计,给出系统框图。
2.完成系统的硬件设计,给出硬件电路图和系统资源分配表。
3.完成系统的软件设计,给出程序流程图和程序编写。
4.运用Proteus仿真软件对所设计的系统进行调试和仿真,直到预定的功能全部仿真通过,给出仿真结果。
5.准确、高质量地进行印刷电路板的焊接。
6.完成课程设计报告。
三、元器件说明知识简介:DAC0832当今世界在以电子信是8位分辨率的D/A转换集成芯片,与微处理器完全兼容,这个系列的芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到了广泛的应用。
这类D/A转换器由8位输入锁存器,8位DAC寄存器,8位DA转换电路及转换控制电路构成。
1、DAC0832的引脚及功能:DAC0832是8分辨率的D/A转换集成芯片。
与微处理器兼容。
这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。
D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。
应用特性:·DAC0832是微处理器兼容型D/A转换器,可以充分利用微处理器的控制能力实现对D/A转换的控制。
这种芯片有许多控制引脚,可以和微处理器控制线相连,接受微处理器的控制,如ILE、/CS、/WR1、/WR2、/XFER端。
·有两级锁存控制功能,能够实现多通道D/A的同步转换输出。
·DAC0832内部无参考电压源;须外接参考电压源。
·DAC0832为电流输入型D/A转换器,要获得模拟电压输出时,需要外加转换电路。
各引脚功能说明:D0~D7:8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错);ILE:数据锁存允许控制信号输入线,高电平有效;CS:片选信号输入线(选通数据锁存器),低电平有效;WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。
由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;XFER:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效;WR2:DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。
由WR2、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。
IOUT1:电流输出端1,其值随DAC寄存器的内容线性变化;IOUT2:电流输出端2,其值与IOUT1值之和为一常数;Rfb:反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度;Vcc:电源输入端,Vcc的范围为+5V~+15V;VREF:基准电压输入线,VREF的范围为-10V~+10V;AGND:模拟信号地DGND:数字信号地D AC0832三种数据输入方式:(1)双缓冲方式:即数据经过双重缓冲后再送入D/A转换电路,执行两次写操作才能完成一次D/A转换。
(2)单缓冲方式:不需要多个模拟量同时输出时,可采用此种方式。
(3)直通方式:此时两个寄存器均处于直通状态,因此要将、、和端都接数字地,ILE接高电平,使LE1、LE2均为高电平,致使两个锁存寄存器同时处于放行直通状态,数据直接送入D /A转换电路进行D/A转换。
2. CPU芯片—AT89C511.AT89C51概述AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。
单片机的可擦除只读存储器可以反复擦除1000次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
2. AT89C51引脚说明AT89C51单片机引脚图如图3-2所示。
它有40个引脚,其中包含2个专用于主电源的引脚,2个外接晶体的引脚,4个控制或与其它电源复用的引脚,以及32条输入输出I/O引脚。
四、设计原理D/A转换器产生各种波形的原理:利用D/A转换器输出的模拟量与输入数字量成正比关系这一特点,将D/A转换器作为微机输出接口,CPU通过程序向D/A转换器输出随时间呈现不同变化规律的数字量,则D/A转换器就可输出各种各样的模拟量,如方波、三角波、锯齿波、正弦波等。
仿真电路图(输出正弦波、三角波,锯齿波)仿真图:三角波:锯齿波:正弦波:五:程序编译主程序:#include<reg52.h>sbit key2=P2^2;sbit key1=P2^1;sbit key0=P2^0;char flag; //波型输出标置变量bit time;unsigned char i;int num ;void frequency() ;void delay(int z) //延时z毫秒{int x,y;for(x=z;x>0;x--)for(y=124;y>0;y--);}unsigned char sin(unsigned char x)//正弦波{unsigned char code sin_tab[]={0x80, 0x83, 0x86, 0x89, 0x8c, 0x8f, 0x92, 0x95, 0x98, 0x9c, 0x9f, 0xa2, 0xa5, 0xa8, 0xab, 0xae, //上半周0xb0, 0xb3, 0xb6, 0xb9, 0xbc, 0xbf, 0xc1, 0xc4, 0xc7, 0xc9, 0xcc, 0xce, 0xd1, 0xd3, 0xd5, 0xd8,0xda, 0xdc, 0xde, 0xe0, 0xe2, 0xe4, 0xe6, 0xe8, 0xea, 0xec, 0xed, 0xef, 0xf0, 0xf2, 0xf3, 0xf4,0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfc, 0xfd, 0xfd, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff,0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfd, 0xfd, 0xfc, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0xf7,0xf6, 0xf4, 0xf3, 0xf2, 0xf0, 0xef, 0xed, 0xec, 0xea, 0xe8, 0xe6, 0xe4, 0xe2, 0xe0, 0xde, 0xdc,0xda, 0xd8, 0xd5, 0xd3, 0xd1, 0xce, 0xcc, 0xc9, 0xc7, 0xc4, 0xc1, 0xbf, 0xbc, 0xb9, 0xb6, 0xb3,0xb0, 0xae, 0xab, 0xa8, 0xa5, 0xa2, 0x9f, 0x9c, 0x99, 0x96, 0x92, 0x8f, 0x8c, 0x89, 0x86, 0x83, 0x80,0x80, 0x7d, 0x7a, 0x76, 0x73, 0x70, 0x6d, 0x6a, 0x67, 0x64, 0x61, 0x5e, 0x5b, 0x58, 0x55, 0x52, //下半周期0x4f, 0x4c, 0x49, 0x46, 0x43, 0x41, 0x3e, 0x3b, 0x39, 0x36, 0x33, 0x31, 0x2e, 0x2c, 0x2a, 0x27,0x25, 0x23, 0x21, 0x1f, 0x1d, 0x1b, 0x19, 0x17, 0x15, 0x14, 0x12, 0x10, 0x0f, 0x0d, 0x0c, 0x0b,0x09, 0x08, 0x07, 0x06, 0x05, 0x04, 0x03, 0x03, 0x02, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00,0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08 ,0x09, 0x0b, 0x0c, 0x0d,0x0f, 0x10, 0x12, 0x13, 0x15, 0x17, 0x18, 0x1a, 0x1c, 0x1e, 0x20, 0x23, 0x25, 0x27, 0x2a, 0x2c,0x2e, 0x30, 0x33, 0x35, 0x38, 0x3b, 0x3d, 0x3e, 0x40, 0x43, 0x46, 0x48, 0x4b, 0x4e, 0x51, 0x54,0x57, 0x5a, 0x5d, 0x5f, 0x60, 0x63, 0x66, 0x69, 0x6b, 0x6d, 0x6f, 0x72, 0x74, 0x76, 0x78, 0x7a, 0x7e, 0x80};return sin_tab[x];}void DAC0832(unsigned char x){P1=x;}void main(){char d;d=1;TMOD=0X02;num=10;TH0=256-num; //num用来控制采样一个点所用的时间TL0=256-num;ET0=1; //按键接于外部中断0,与中断1EA=1;TR0=1;flag=2; //开始时有输出i=0;while(1){if(key2==0) //按一下key3,d自加1{delay(5);if(key2==0){while(!key2);d++;if(d==21)//当d=21,d变为1d=1;}}frequency() ;if(time==1){time=0;if(i>255)i=0;elsei=i+d; //设置采样间隔switch(flag) //当按键1的为输出三角波,按键2时输出正弦波 {case 0:DAC0832(i);break;// 当flag=0时,锯齿波case 1:if(i>127)// 当flag=1时,三角波DAC0832(255-i);elseDAC0832(i);break;case 2: DAC0832(sin(i)); //当flag=2时,正弦波break;default: break;}}}}void time0() interrupt 1{TH0=256-num;TL0=256-num;time=1;}void frequency(){if(key0==0) // //key0控制flag,频率选择{delay(5) ;if(key0==0) //再次检测{while(!key0); //等待按键释放flag++; //按一下加1if(flag==3) //大于2返回0flag=0;}}if(key1==0) //检测P21是否按下{delay(5) ;if(key1==0) //再次检测{while(!key1);num=num+10; //按一下减10 if(num==250) //小于5,返回5num=10;}}}。