单片机课程设计--简易波形发生器

合集下载

单片机课程设计报告———波形发生器

单片机课程设计报告———波形发生器

设计题目:波形发生器学生姓名:系别:专业:班级:学号:指导教师:2011年12月22日郑州轻工业学院课程设计任务书题目波形发生器专业、班级学号姓名薛茹主要内容:设计一个产生各种波形的波形发生器基本要求:利用单片机P1.0引脚输出频率范围1Hz – 1000Hz的正弦波、方波、三角波、梯形波、锯齿波,并用示波器观察。

目录一、设计目的及意义................................................................ - 3 -1.1设计目的 (3)1.2设计意义 (3)二、方案论证.......................................................................... - 3 -2.1设计要求 (3)2.2方案论证 (3)三、硬件电路设计 ................................................................... - 3 -3.1设计思路、元件选型 (3)3.2原理图 (3)3.3主要芯片介绍 (3)3.4硬件连线图 (3)四、软件设计.......................................................................... - 3 -4.1锯齿波的产生过程 (3)4.2梯形波的产生过程 (3)4.3三角波的产生过程 (3)4.4方波的产生过程 (3)4.5正弦波的产生过程 (3)五、调试与仿真 ...................................................................... - 3 -六、总结................................................................................. - 3 -七、参考文献: ...................................................................... - 3 -一、设计目的及意义1.1设计目的(1)利用所学单片机的理论知识进行软硬件整体设计,锻炼学生理论联系实际、提高我们的综合应用能力。

简易波形发生器的设计

简易波形发生器的设计

XXXX学院课程设计报告课程名称:单片机课程设计院系:电气与信息工程学院专业班级:自动化09102班学生姓名: X X指导教师: X X X完成时间: 2012年6月10日报告成绩:简易波形发生器简易波形发生器是一种常用的信号源,它广泛地应用在电子技术实验、自动控制系统和其他科研领域。

本系统能够准确产生方波、正弦波、锯齿波及三角波。

基于数模转换芯片DAC0832技术的简易波形发生器由六个部分组成:MCU模块、波形发生模块、静态LED 数码管显示模块、键盘输入模块、在线下载模块以及电源模块。

MCU模块采用STC89C51RC 单片机进行数据处理,波形发生模块采用DAC0832及LM324进行波形发生及变换,静态LED数码管显示模块利用3位八段共阳极数码管及3个74LS164显示当前波形频率,键盘模块采取外部中断方式扫描键值,在线下载模块选用MAX232芯片进行单片机程序下载,电源模块使用三端稳压器为系统提供能源。

运用Altium Designer软件绘制了单元电路以及总体电路图,借助Proteus仿真软件对电路进行了虚拟实验,通过仿真分析,满足了课题性能指标的要求,成功地实现了简易波形发生器的设计。

关键词波形发生器;DAC0832;STC89C51RC;静态显示Simple waveform generator is a common source, it is widely used in the experiment of electronic technology, automatic control system and other scientific fields. The system can accurately produce a square wave, sine wave, sawtooth wave and triangle wave. Based on the digital-analog conversion chip DAC0832 simple waveform generator consists of six parts: MCU module, waveform generator module, static LED digital display module, keyboard input module, the download module and power supply. The MCU STC89C51RC microcontroller is for data processing. The waveform generation module which made of DAC0832 and LM324 is used to generate waveform and transform. The static LED digital display module uses three eight out common anode digital and three 74LS164 to show the current waveform frequency. The keyboard module to take external interrupt the scan key. Download module use a MAX232 chip microcontroller program download. The power supply uses three-terminal regulator to provide energy for the system. Altium Designer were used to draw a unit circuit as well as the overall circuit. With Proteus simulation software to conduct virtual experiments on the circuit, simulation analysis, to meet the requirements of the subject of performance indicators, the successful implementation of a simple waveform generator design.Keywords waveform generator ;DAC0832;STC89C51RC; static LED digital display目录摘要 (I)Abstract (II)第一章简易波形发生器的方案设计 (1)1.1简易波形发生器的方案分析与比较 (1)1.1.1 基于数模转换芯片DAC0832的简易波形发生器的设计 (1)1.1.2 基于MAX038函数发生器的简易波形发生器的设计 (1)1.1.3 基于DDS波形发生技术的简易波形发生器的设计 (2)1.2 简易波形发生器的总体结构说明 (2)第二章简易波形发生器的电路设计 (3)2.1 MCU模块 (3)2.1.1 STC89C51RC单片机 (3)2.1.2 复位电路 (5)2.1.3 时钟电路 (5)2.2 DAC0832模块 (5)2.2.1 DAC0832芯片基本介绍 (6)2.2.2 DAC0832波形发生电路 (7)2.3 静态LED数码管显示模块 (7)2.3.1 移位寄存器74LS164 (7)2.3.2 静态显示电路 (8)2.4 键盘输入模块 (8)2.5 在线下载模块 (9)2.6 电源模块 (9)2.7 总体电路说明 (9)第三章简易波形发生器的程序设计 (10)3.1系统接口定义 (10)3.2 主程序 (10)3.3 外部总中断1中断服务程序 (11)第四章简易波形发生器仿真分析 (13)4.1初始界面 (13)4.2 波形发生仿真 (13)4.2.1 正弦波的仿真分析 (13)4.2.2 锯齿波发生仿真分析 (14)4.2.3 三角波发生仿真分析 (15)4.2.4 方波发生仿真分析 (17)总结 (19)参考文献 (20)致谢 (21)附录1:简易波形发生器原理图 (22)附录2:简易波形发生器Protues仿真图 (23)附录3:简易波形发生器元器件明细表 (24)附录4:简易波形发生器源程序 (25)第一章 简易波形发生器的方案设计简易波形发生器是一种常用的信号源,它广泛地应用在电子技术实验、自动控制系统和其他科研领域。

单片机课程设计——波形发生器

单片机课程设计——波形发生器

单片机课程设计报告烟台大学题目波形发生器专业机械设计制造及其自动化班级机101—4 学生同组人员学号指导老师:姜风国机电汽车工程学院2021年6 月6 日1目录一、设计目的 (1)二、设计的主要内容和要求 (1)1.1根本内容和要求 (1)三、整体设计思路 (1)3.1设计思路 (1)3.2元件选型 (2)3.3功能原理图 (2)四、方案论证 (2)五、硬件电路设计 (3)5.1 电路连线图 (3)5.2主要芯片介绍 (4)六、软件设计 (7)6.1正弦波的产生过程 (7)6.2锯齿波的产生过程 (7)6.3三角波的产生过程 (7)6.4通过开关实现波形切换和调频 (7)七、调试与仿真 (7)6.1正弦波的仿真结果 (7)6.2锯齿波的仿真结果 (8)6.3三角波的仿真结果 (8)八、总结 (9)九、参考文献 (9)附录 (10)附录一:硬件图 (10)附录二:流程图 (11)附录三:程序清单 (12)波形发生器一、设计目的〔1〕利用所学单片机机的理论知识进行软硬件整体设计,锻炼学生理论联系实际、提高我们的综合应用能力。

〔2〕我们这次的课程设计是以单片机为根底,设计并开发能输出多种波形〔正弦波、三角波、锯齿波等〕且频率、幅度可变的波形发生器。

〔3〕掌握各个接口芯片(如0832等)的功能特性及接口方法,并能运用其实现一个简单的单片机应用系统功能器件。

〔4〕在平时的学习中,我们所学的知识大都是课本上的,在机房的练习大家也都是分散的对各个章节的内容进行练习。

因此,缺乏一种系统的设计锻炼。

在课程所学结束以后,这样的课程设计十分有助于学生的知识系统的总结到一起。

〔5〕通过这几个波形进行组合形成了一个波形发生器,使得我对系统的整个框架的设计有了一个很好的锻炼。

这不仅有助于大家找到自己感兴趣的题目,更可以锻炼大家单片机知识的应用。

二、设计的主要内容和要求1.1根本内容和要求〔1〕设计一款能够产生3种波形的波形发生器;〔2〕设计波形选择按钮;〔3〕LED或LCD显示波形代号;〔4〕其他功能〔创新局部〕。

单片机课程设计波形发生器报告

单片机课程设计波形发生器报告

目录第一章概述 (2)第二章设计任务 (3)第三章硬件设计 (3)3.1系统主体构造 (3)3.2硬件元件概述 (3)3.3硬件连接 (9)3.4硬件参数简介 (10)第四章软件设计 (10)4.1锯齿波程序设计 (11)4.2三角波程序设计 (12)4.3正弦波程序设计 (13)第五章系统功能描述和功能 (15)第六章设计心得 (16)第七章参考文献 (16)附录 (16)程序设计 (20)第一章概述课程设计是一项重要的实践性教育环节,是学生在完成本专业所有课程学习后必须接受的一项结合本专业方向的、系统的、综合的工程训练。

在教师指导下,运用工程的方法,通过一个较复杂课题的设计练习,可使学生通过综合的系统设计,熟悉设计过程、设计要求、完成的工作内容和具体的设计方法,掌握必须提交的各项工程文件。

课程设计的基本目的是:培养理论联系实际的设计思想,训练综合运用电路设计和有关先修课程的理论,结合生产实际分析和解决工程实际问题的能力,巩固,加深和扩展有关电子类方面的知识。

课程设计的主要任务是运用所学微控制器技术、微机原理等方面的知识,设计出一台以AT89C51为核心的单片机数据采集、通讯或测控系统,完成信息的采集、处理、输出及人机接口电路等部分的软、硬件设计。

多功能波形发生器设计课题需要充分灵活运用编程语言所提供的各种指令语句,巧妙利用软硬件实现以上所要求的功能,在程序逻辑设计上也要求正确,合理的对项目进行分解分块,合理的逻辑设计可以起到事半功倍的效果,是整个项目当中最富有创新性和挑战性的部分。

第二章设计任务本次设计要求采用单片机和DAC设计波形发生器,具体要求如下:(1)利用单片机和DAC0832产生三角波、正弦波等波形。

(2)完成DAC与运放的连接,输出可供示波器显示。

(3)用按键改变波型的种类,同时显示波形的代号,波形的幅值与频率。

第三章硬件设计3.1 系统主体构造芯片方面选用AT89C51与DAC0832为主要芯片,根据要求采用键盘选择产生的波形的类型,所以基本电路有键盘电路,数模转换电路。

单片机波形发生器课程设计

单片机波形发生器课程设计

单片机波形发生器课程设计一、课程目标知识目标:1. 理解单片机的基本原理,掌握单片机波形发生器的硬件组成及工作原理;2. 学会使用相关编程语言(如C语言)编写程序,实现对单片机波形发生器的控制;3. 掌握单片机波形发生器在不同波形(如正弦波、方波、三角波等)下的参数设置及其调整方法。

技能目标:1. 能够独立完成单片机波形发生器的硬件连接与调试;2. 能够运用所学编程知识,编写出实现不同波形的程序,并成功运行在单片机上;3. 学会分析并解决在单片机波形发生器使用过程中遇到的问题。

情感态度价值观目标:1. 培养学生对电子技术的兴趣和热情,提高学生对单片机及其应用的重视程度;2. 培养学生的团队协作意识,学会在团队中发挥个人作用,共同完成项目任务;3. 培养学生勇于创新、敢于实践的精神,提高学生面对挫折和困难时的坚持与克服能力。

课程性质:本课程为实践性较强的课程,结合理论教学,注重培养学生的实际操作能力。

学生特点:学生具备一定的电子基础和编程知识,对单片机有一定了解,但实践经验不足。

教学要求:教师应结合课程特点和学生实际情况,采用理论教学与实践操作相结合的方式进行教学,注重培养学生的动手能力和创新能力。

在教学过程中,分解课程目标为具体的学习成果,以便进行有效的教学设计和评估。

二、教学内容1. 理论部分:a. 单片机原理概述:讲解单片机的基本结构、工作原理及性能特点;b. 波形发生器原理:介绍波形发生器的功能、分类及其在电子技术中的应用;c. 编程语言基础:回顾C语言基础知识,重点讲解与单片机编程相关的语法和技巧。

2. 实践部分:a. 硬件连接与调试:指导学生完成单片机波形发生器的硬件连接,学习使用调试工具;b. 程序编写与烧录:教授学生编写控制单片机波形发生器的程序,并进行烧录;c. 波形参数调整:学习如何调整单片机波形发生器的参数,实现不同波形输出。

3. 教学大纲与进度安排:a. 第一周:单片机原理概述,波形发生器原理;b. 第二周:C语言回顾,编程语言基础;c. 第三周:硬件连接与调试;d. 第四周:程序编写与烧录;e. 第五周:波形参数调整,实践操作与总结。

单片机课程设计———波形发生器

单片机课程设计———波形发生器

课程设计任务书题目波形发生器专业、班级学号姓名主要内容:设计一个产生各种波形的波形发生器基本要求:利用单片机P1.0引脚输出频率范围1Hz – 1000Hz的正弦波、方波、三角波、梯形波、锯齿波,并用示波器观察。

目录一、设计目的及意义 ........................................................................... - 3 -1.1设计目的 (3)1.2设计意义 (3)二、方案论证 ....................................................................................... - 3 -2.1设计要求 (3)2.2方案论证 (4)三、硬件电路设计 ............................................................................... - 4 -3.1设计思路、元件选型 (4)3.2原理图 (5)3.3主要芯片介绍 (5)3.4硬件连线图 (8)四、软件设计 ....................................................................................... - 9 -4.1锯齿波的产生过程 (10)4.2梯形波的产生过程 (11)4.3三角波的产生过程 (13)4.4方波的产生过程 (14)4.5正弦波的产生过程 (15)五、调试与仿真 ................................................................................. - 16 -六、总结.............................................................................................. - 19 -七、参考文献: ................................................................................. - 19 -一、设计目的及意义1.1设计目的(1)利用所学单片机的理论知识进行软硬件整体设计,锻炼学生理论联系实际、提高我们的综合应用能力。

波形发生器单片机课程设计

波形发生器单片机课程设计

波形发生器单片机课程设计一、课程目标知识目标:1. 让学生理解波形发生器的基本原理,掌握单片机在波形发生器中的应用;2. 学会使用编程软件进行单片机程序设计,实现常见波形的生成;3. 了解波形发生器的性能指标,如频率、幅度、相位等,并能进行简单计算。

技能目标:1. 培养学生运用所学知识,设计并实现波形发生器单片机程序的能力;2. 提高学生动手实践能力,能够独立完成波形发生器的硬件连接与调试;3. 培养学生团队协作能力,通过小组合作完成课程设计。

情感态度价值观目标:1. 培养学生对单片机及电子技术的兴趣,激发学生的学习热情;2. 培养学生严谨的科学态度,注重实验数据的真实性,遵循实验操作规范;3. 培养学生的创新意识,鼓励学生勇于尝试,不断优化波形发生器设计。

分析课程性质、学生特点和教学要求:1. 课程性质:本课程属于电子技术领域,涉及单片机原理、编程及硬件设计;2. 学生特点:学生已具备一定的电子技术基础,熟悉单片机的基本操作,具有一定的编程能力;3. 教学要求:注重理论与实践相结合,强调动手实践,培养学生解决实际问题的能力。

二、教学内容1. 波形发生器原理:介绍波形发生器的功能、分类及其在电子技术中的应用,重点讲解单片机波形发生器的原理及组成。

教材章节:《单片机原理与应用》第四章第三节2. 单片机程序设计:讲解如何使用编程软件(如Keil)进行单片机程序设计,实现常见波形(如正弦波、方波、三角波等)的生成。

教材章节:《单片机原理与应用》第五章3. 硬件设计与连接:介绍波形发生器硬件电路的设计方法,包括单片机、晶振、滤波器等元件的选型与连接。

教材章节:《电子电路设计》第二章4. 波形发生器性能指标:讲解波形发生器的主要性能指标,如频率、幅度、相位等,并进行简单计算。

教材章节:《电子测量与仪器》第三章5. 实践操作与调试:指导学生进行波形发生器硬件连接、程序下载和调试,确保波形发生器正常工作。

教材章节:《单片机原理与应用》第六章6. 课程设计:要求学生以小组为单位,设计并实现一个具有特定功能的波形发生器,完成课程设计报告。

单片机课设,波形发生器实验报告

单片机课设,波形发生器实验报告

单片机课程设计波形发生器实验报告姓名:*** 07291198电气0706指导老师:***摘要:波形发生器是一种常用的信号源,广泛的应用于电子电路、自动控制系统和教学实验等领域。

本次课程设计基于89S51单片机构成的,利用PWM波技术制作可产生方波、三角波、梯形波、锯齿波、正弦波等多种波形。

设计要求:基于89S52单片机,利用单片机产生PWM波产生要求波形。

要求波形发生器能够产生4种以上波形,如方波、三角波、梯形波、锯齿波、正弦波方波。

能够调整输出波形的频率、幅值、水平分量。

一,技术基础利用PWM技术设计波形发生器脉宽调制(PWM:(Pulse Width Modulation)是利用Array微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。

简而言之,PWM是一种对模拟信号电平进行数字编码的方法。

PWM的一个优点是从处理器到被控系统信号都是数字形式的,无需进行数模转换。

让信号保持为数字形式可将噪声影响降到最小。

噪声只有在强到足以将逻辑1改变为逻辑0或将逻辑0改变为逻辑1时,也才能对数字信号产生影响。

下面就PWM技术实现波形发生器的原理方法进行简单阐述。

采样控制理论中有一个重要结论:冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同.PWM控制技术就是以该结论为理论基础,对半导体开关器件的导通和关断进行控制,使输出端得到一系列幅值相等而宽度不相等的脉冲,用这些脉冲来代替正弦波或其他所需要的波形.按一定的规则对各脉冲的宽度进行调制,既可改变逆变电路输出电压的大小,也可改变输出频率。

二,系统原理框图三,硬件电路图四,程序流程图1软件部分由以下几个部分构成:系统主程序流程图波形子程序流程图五,参数调整程序的编程思路:a 频率的调节应用PWM技术时,要调节输出波形的频率,只需要在生成前一个具体模拟信号的电平和生成下一个之间加上一个给定的延时,这样输出波形的频率就会发生变化。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机课程设计--简易波形发生器电气与电子信息工程学院《单片机》课程设计报告题目:简易波形发生器专业班级:电气学号: 123456姓名:王刚指导教师:胡蔷、汤立刚设计时间:2013年12月9日—2013年12月13日设计地点: K2-407单片机、微机原理实验室2013年11月20日单片机课程设计成绩评定表答辩或质疑记录:1、该设计能产生几种波形?分别是哪几种?答:能产生4种波形,三角波,方波,锯齿波以及正弦波。

2、DAC0832有几种工作方式?哪几种?各有什么特点?该设计中DAC0832用的是哪一种方式?答:3种,单缓冲方式、双缓冲方式以及直通方式:(1)单缓冲方式此方式适用于只有一路模拟量输出或几路模拟量非同步输出的情形。

方法是控制输入寄存器同时接收数据,或者只用输入寄存器而把DAC寄存器接成直通方式。

(2)双缓冲方式此方式适用于多个DAC0832同时输出的情形。

方法是先分别使这些DAC0832的输入寄存器接收数据,再控制这些DAC0832同时传送数据到DAC寄存器以实现多个D/A转换同步输出。

〔3〕直通方式此方式适用于连续反馈控制线路中。

方法是:数据不通过缓冲器,即-WR1,-WR2, -XFER, -CS 均接地,ILE接高电平。

此时必须通过I/O接口与微处理器连接,以匹配微处理器与D/A的转换。

该设计中DAC0832用的是单缓冲方式。

成绩评定依据:课程设计考勤情况(5%):课程设计仿真测试情况(15%)课程设计答辩情况(30%):完成设计任务及报告规范性(50%):最终评定成绩(以优、良、中、及格、不及格评定)指导教师签字:2013 年12 月日课程设计任务书2013~2014 学年第 1 学期专业班级:电气指导教师:胡蔷汤立刚工作部门:电气与电子信息工程学院电气自动化教研室一、课程设计题目单片机课程设计二、课程设计内容(含技术指标)1.设计目的及要求(1)根据具体设计课题的技术指标和给定条件,以单片机为核心器件,能独立而正确地进行方案论证和电路设计,完成仿真操作。

要求概念清楚、方案合理、方法正确、步骤完整;(2)熟悉、掌握各种外围接口电路芯片的工作原理和控制方法;(3)熟练使用单片机汇编语言或C51进行软件设计;(4)熟练使用Proteus、Keil软件进行仿真电路测试;(5)熟练使用Protel软件设计印刷电路板;(6)学会查阅有关参考资料和手册,并能正确选择有关元器件和参数;(7)编写设计说明书,参考毕业设计论文格式撰写设计报告。

2.设计内容(题目名称:简易波形发生器)本设计是以AT89C51为核心,结合D/A转换器DAC0832等器件,用仿真软件设计硬件电路,用C语言编写驱动程序,以实现程序控制产生正弦波、三角波、方波、锯齿波四种常用低频信号。

可以通过键盘选择任意以上四种波型。

三、课程设计考核办法与成绩评定根据过程、报告、答辩等确定设计成绩,成绩分优、良、中、及格、不及格五等。

013年11月1项目概述1.1 项目名称:简易波形发生器的设计1.2 小组成员小组成员:王刚1.3 基本要求工作要求a.组建基于单片机的函数发生器的总体结构框架;b.根据设计测量范围和准确度要求,理论分析和计算选择电路参数;c.根据操作功能要求,确定按键功能;d.采用C语言编写应用程序并调试通过;e.对系统进行测试和结果分析;1.4主要工作本设计采用AT89C51及其外围扩展系统,软件方面主要是应用C语言设计程序。

系统以89C51单片机为核心,配置相应的外设及接口电路,用C语言开发,组成一个多功能信号发生系统。

该系统的软件可运行于Windows XP环境下,使用Keil C及Proteus等软件开发,硬件电路设计具有典型性。

同时,本系统中任何一部分电路模块均可移植与实用开发系统的设计中,电路设计具有实用性。

本设计讲完成以下几个方面的工作:a.选芯片,尽量满足一般工业控制要求、以增强其实用性。

b.原理图设计在保证正确的前提下,尽量采用典型的电路设计。

c.掌握单片机仿真软件Keil C与Proteus的使用。

2 系统总体设计2.1 主要功能系统主要功能是实现利用单片机AT89C51和8位D/A转换芯片DAC0832共同实现正弦波、方波、三角波、锯齿波这四种常见波形的发生。

2.2 总体方案设计2.2.1 元器件的选择该函数发生器有以下几个部分:(1)控制模块(2)按键及转换模块(3)采用模块组成。

(1)控制模块:用单片机AT89C51作为系统的主控核心。

单片机具有体积小,使用灵活的,易于人机对话和良好的数据处理,有较强的指令寻址和运算功能等优点。

且单片机功耗低,价格低廉的优点。

(2)按键及转换模块:采用DAC0832,其具有以下特点:8位分辨率;双通道D/A转换;输入输出电平与TTL/CMOS相兼容等。

2.2.2 系统总体框图设计本系统是以单片机AT89C51和8位A/D转换芯片DAC0832及显示共同实现正弦波、方波、三角波、锯齿波这四种常见波形及显示功能。

系统框图:3 系统硬件设计3.1 单片机介绍89C51单片机有44个引脚PLCC 和TQFP 方形封装形式,40个引脚直插式封装形式,常见如图单片机 AT89C51 按键 转换模块 输出AT89C513.2 DAC0832外围电路设计系统中DAC0832的工作方式是单缓冲方式, DAC锁存器呈直通状态,只需将XFER和WR2 引脚直接接地,ILE端接+VCC,片选信号CS地址选择线相连,WR1接单片机的写信号。

DAC0832输出为电流形式,为了得到电压输出,需要在输出端接上运算放大器。

LM324是四运放集成电路,它采用14脚双列直插塑料封装,外形如图所示。

它的内部包含四组形式完全相同的运算放大器,除电源共用外,四组运放相互独立。

每一组运算放大器可用图1所示的符号来表示,它有5个引出脚,其中“+”、“-”为两个信号输入端,“V+”、“V-”为正、负电源端,“Vo”为输出端。

两个信号输入端中,Vi-(-)为反相输入端,表示运放,输出端Vo的信号与该输入端的位相反;Vi+(+)为同相输入端,表输出端Vo的信号与该输入端的相位相同。

LM324的引脚排列图由于LM324四运放电路具有电源电压范围宽,静态功耗小,可单电源使用,价格低廉等优点,因此被广泛应用在各种电路中Rfb即为运算放大器的负反馈电阻端,由于V=5V,所以运算放大器输出电压为负电压(0-5V)。

通过运算放大器LM324进行转换,可以实现单极性和双极性输出,通过总线方式和单片机相连。

由于输出要经运算放大器转换成电压信号,对运算放大器的动态范围要保证在—5V—+5V,要求运算放大器的电源V+=12v,V-=—12V,电路如图所示,图中两个电流输出端的电位应尽可能的靠近地电位,一保证输出电流的线性度。

DAC0832外围电路在线性DAC 中,输出的模拟电压的公式为: 式中, 为输出的模拟量,n 为D/A 转换器的位数, 为输入的数字量, 为 基准电压,D/A 转换芯片所需要的基准电压一般由芯片外的基准电源提供, 常取基准电压,n=8(D/A 转换器常用芯片DAC0832是8位);目前D/A 转换器较多,本设计项目选用大规律集成电路DAC0832来实现D/A 转换。

3.3 设计系统图本系统含有DAC0832与单片机的连接模块,单片机的连接模块以及按键控制模块等主要部分。

DAC0832是采样频率为八位的D/A 转换芯片,集成电路内有两级输入寄存器,使DAC0832芯片具备双缓冲、单缓冲和直通三种输入方式,以便适于各种电路的需要。

所以这个芯片的应用很广泛。

简易波形发生器的原理图n in REF out D V V 2/⨯=out V in D REF V V V REF 5=4 系统软件设计4.1. 项目要求:实现简易波形发生器,程序设计主要要解决按键控制输出三角波、方波、锯齿波和正弦波的问题。

4.2. 按键控制:根据设计要求,根据按键控制输出波形的变化,则程序设计中应不断查询检测按键状态,以便输出对应的波形。

对于要通过一个按键来识别每种不同的功能,我们给每个不同的功能模块用不同的ID号标识,这样,每按下一次按键,ID的值是不相同的,所以单片机就很容易识别不同功能的身份了。

从上面的要求我们可以看出,输出的波形受到按键的控制。

我们给输出不同的波形定义出不同的flag,当flag=0时,输出三角波,当flag=1时,输出方波,当flag=2时,输出锯齿波,当flag=3时,输出正弦波。

很显然,只要每次按下开关K1时,分别给出不同的flag值我们就能够完成上面的任务了。

按键波形选择程序流程图4..3 输出模拟电压:由于DAC0832与单片机AT89S51采用直通方式,因此只要往D/A 数据输入端口上送入数字量,从后面运放的输出端即可得到模拟电压。

输出电压根据公式计算得来,因而在需要输出某个电压值时,求出对应得数字值,通过P2端口输出,就可得到所需模拟电压。

程序设计即P2=x。

为了便于程序修改和功能扩展,采用模块化设计,将DAC0832的输出封装为一个函数,用形参表示待输出的数值:void DAC0832(unsigned char x){ P2=x; }4,4 软件设计思路,以输出正弦波为例输出正弦波:一般采用查表方法获得正弦值。

将90°~ 270°的正弦值放在数组中,通过简单的处理就可以从数组中得到整个周期的值。

设正弦信号角度为x,当x<90°时,sinx=sin(90°-x);当x>270°时,sinx=sin(450°-x)。

oid out_sin(unsigned int x){ unsigned char code_sin[]={0,0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2,2, 3, 3, 4, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9,9,10, 10, 11, 12, 12, 13, 14, 15, 15, 16, 17, 18, 18, 19, 20, 21,22, 23, 24, 25, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, 42, 44, 45, 46, 47, 49, 50, 51, 52, 54, 55, 56, 57, 59, 60, 61, 63, 64, 66, 67, 68, 70, 71, 73, 74, 75, 77, 78, 80, 81, 83, 84, 86, 87, 89, 90, 92, 93, 95, 96, 98, 99, 101,102, 104, 106, 107,109, 110, 112, 113, 115, 116, 118, 120, 121, 123, 124, 126,128,129, 131, 132, 134, 135, 137, 139, 140, 142, 143, 145, 146, 148,149,151,153, 154, 156, 157, 159, 160, 162, 163, 165, 166, 168, 169, 171, 172, 174, 175, 177, 178, 180, 181, 182, 184, 185, 187, 188, 189, 191, 192, 194, 195, 196, 198, 199, 200, 201, 203, 204, 205, 206, 208, 209, 210, 211, 213, 214, 215, 216, 217, 218, 219, 220, 221, 223, 224, 225, 226, 227, 228, 229, 230, 230, 231, 232, 233, 234, 235, 236, 237, 237, 238, 239, 240, 240, 241, 242, 243, 243, 244, 245, 245, 246, 246, 247, 247, 248, 248, 249, 249, 250, 250, 251, 251, 251, 252, 252, 253, 253, 253, 253, 254, 254,254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255,255}; //将90°~270°的正弦值存放在数组中unsigned char y;x=x%360;if(x<90)x=90-x;else if(x>270)x=450-x;else x=x-90;y=sin[x];DAC0832(y);}int k;for(k=0;k<360;k++){ out_sin(k)}5 仿真结果及分析设个自变量i让它不断地自加1,直到加到255时,t=i,对t进行不断地自减1直到减到t=0,然后再不断地重复上述过程产生三角波。

相关文档
最新文档