基于DAC0832芯片的简单信号发生器设计.docx
- 文档编号:23211541
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:19
- 大小:111.96KB
基于DAC0832芯片的简单信号发生器设计.docx
《基于DAC0832芯片的简单信号发生器设计.docx》由会员分享,可在线阅读,更多相关《基于DAC0832芯片的简单信号发生器设计.docx(19页珍藏版)》请在冰豆网上搜索。
基于DAC0832芯片的简单信号发生器设计
东北石油大学
课程设计
课程单片机原理及应用课程设计
题目基于DAC0832芯片的简单信号发生器设计
院系电子科学学院
专业班级
学生姓名
学生学号
指导教师
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月2日
第1章概述
信号发生器是一种常用的信号源,广泛用于电子电路、自动控制系统和教学实验等领域,目前使用的信号发生器大部分是模拟电路组成的,体积大、可靠性差、准确度低、并且用于低频时,其RC要很大,大电阻,大电容在制造上有困难,参数准确度难以保证,漏电损耗大。
本文介绍一种利用AT89C51单片机构成的信号发生器,可产生方波、三角波、锯齿波、正弦波和脉冲信号等多种波形,其频率可用程序改变,并可根据需要选择单极性或双极性输出。
此信号发生器电路,结构紧凑,价格低廉,性能优越。
本文介绍其硬件系统和软件系统的设计方法。
微型计算机是大规模集成技术发展的直接产物。
自大从1971年4月位微处理器部世以来,微型计算机主要从两个方向的发展:
一个是高速度、高性能的高档微型机,别一个是小而廉,稳定可靠的单片机。
单片机也称为微控制器MCU(Microcontroller),它实际上是把中央处理器CPU,随机存储器、只读存储器ROM(只读记忆)、定时器/计数器以I/O接口电路等主要计算机部件,集成在一块集成电路芯片上的微型计算机。
虽然单片机只是一个芯片,但从组成和功能上看,它已具有了系统的含义。
现在单片机的应用已日益广泛深入,诸如在仪器仪表、家用电器、专用设备的智能化以及过程控制等方面,单片机都能扮演着越来越重要的角色。
本课程设计是对简易低频信号发生器的研究。
第2章信号发生器的原理
AT89C51芯片的简单介绍
1.主要特性:
、与MCS-51兼容
、4K字节可编程闪烁存储器
、全静态工作:
0Hz-24MHz
、三级程序存储器锁定
、128*8位内部RAM
、32可编程I/O线
、两个16位定时器/计数器
、5个中断源
、可编程串行通道
、低功耗的闲置和掉电模式
、片内振荡器和时钟电路
2.管脚说明:
图2-1AT89C51引脚图
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
数模转换器DAC0832的简单介绍
DAC0832是美国数据公司的8位双缓冲D/A转换器,片内带有数据锁存器,可与通常的微处理器直接接口。
电路有极好的温度跟随性。
使用CMOS电流开关和控制逻辑来获得低功耗和低输出泄漏电流误差。
其主要技术指标如下:
、电流建立时间1μs
、VREF输入端电压±25V
、分辨率8位
、功率耗能200mW
、最大电源电压VDD17V
DAC0832的引脚信号如图2-2所示:
图2-2DAC0832的引脚信号
D/A转换器的主要特性指标包括以下几方面:
(1)分辨率:
指最小输出电压(对应的输入数字量只有最低有效位为“1”)与最大输出电压(对应的输入数字量所有有效位全为“1”)之比。
如N位D/A转换器,其分辨率为1/(2N-1)。
在实际使用中,表示分辨率大小的方法也用输入数字量的位数来表示。
(2)线性度:
用非线性误差的大小表示D/A转换的线性度。
并且把理想的输入输出特性的偏差与满刻度输出之比的百分数定义为非线性误差。
(3)转换精度:
D/A转换器的转换精度与D/A转换器的集成芯片的结构和接口电路配置有关。
如果不考虑其他D/A转换误差时,D/A的转换精度就是分辨率的大小,因此要获得高精度的D/A转换结果,首先要保证选择有足够分辨率的D/A转换器。
同时D/A转换精度还与外接电路的配置有关,当外部电路器件或电源误差较大时,会造成较大的D/A转换误差,当这些误差超过一定程度时,D/A转换就产生错误。
(4)温度系数:
在满刻度输出的条件下,温度每升高1℃,输出变化的百分数定义为温度系数。
(5)电源抑制比:
对于高质量的D/A转换器,要求开关电路及运算放大器所用的电源电压发生变化时,对输出电压影响极小。
通常把满量程电压变化的百分数与电源电压变化的百分数之比称为电源抑制比。
(6)工作温度范围:
一般情况下,影响D/A转换精度的主要环境和工作条件因素是温度和电源电压变化。
由于工作温度会对运算放大器加权电阻网络等产生影响,所以只有在一定的工作范围内才能保证额定精度指标。
较好的D/A转换器的工作温度范-40℃~85℃之间,较差的D/A转换器的工作温度范围在0℃~70℃之间。
共阳数码管和运算放大器LM358
、共阳数码管
数码管按段数分为七段和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳和共阴极数码管。
共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。
共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。
当某一字段的阴极为高电平时,相应字段就不亮。
共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。
共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。
当某一字段的阳极为低电平时,相应字段就不亮。
、运算放大器LM358
LM358内部包括有两个独立的、高增益、内部频率补偿的双运算放大器,适合于电源电压很宽的单电源使用,也适用于双电源工作模式,在推荐的工作条件下,电源电流与电源电压无关。
特性:
(1)、内部频率补偿
(2)、直流电压增益高(约100dB)
(3)、单位增益频带宽(约1MHz)
(4)、电源电压范围宽:
单电源(3-30V);双电源(±±15V)
(5)、低功率电流,适合于电池供电
(6)、低输入偏流
(7)、低输入失调电压和失调电路
(8)、共模输入电压范围宽,包括接地
(9)、差模输入电压范围宽,等于电源电压范围
(10)、输出电压摆幅大(0至)
第3章硬件电路设计
下面先给出信号发生器的结构框图:
图3-1:
单片机最小系统
维持单片机运行的最简单的配置系统是构成单片机的最小应用系统。
由于晶振、开关等器件无法集成到AT89C51芯片内部,由这些器件所构成的晶振电路和复位电路是单片机工作所必要的两个基本电路。
对于8051、8751片内有RAM、EPROM的系统来讲,单片机与晶振电路及开关、电阻、电容等构成的复位电路组成单片机最小系统,其电路图如下:
图3-2
电源电路的设计
通过电容和整流二极管的控制使三端稳压器7812输出12V的正电压,三端稳压器7912输出12V的负电压,三端稳压器7805输出5V的正电压。
其电路图如图3-2所示。
图3-3
D/A转换接口电路的设计
输出信号通过DAC0832数模转换器进行处理。
其电路图如图3-4所示。
图3-4
第4章程序设计
主程序设计
主程序的功能是负责各种波形的显示并读出各种波形的频率,其程序流程图如下图所示:
信号发生器源程序
#include<>
#defineucharunsignedchar
#defineuintunsignedint
ucharcodesin_tab[256]={
0x80,0x83,0x85,0x88,0x8A,0x8D,0x8F,0x92,
0x94,0x97,0x99,0x9B,0x9E,0xA0,0xA3,0xA5,
0xA7,0xAA,0xAC,0xAE,0xB1,0xB3,0xB5,0xB7,
0xB9,0xBB,0xBD,0xBF,0xC1,0xC3,0xC5,0xC7,
0xC9,0xCB,0xCC,0xCE,0xD0,0xD1,0xD3,0xD4,
0xD6,0xD7,0xD8,0xDA,0xDB,0xDC,0xDD,0xDE,
0xDF,0xE0,0xE1,0xE2,0xE3,0xE3,0xE4,0xE4,
0xE5,0xE5,0xE6,0xE6,0xE7,0xE7,0xE7,0xE7,
0xE7,0xE7,0xE7,0xE7,0xE6,0xE6,0xE5,0xE5,
0xE4,0xE4,0xE3,0xE3,0xE2,0xE1,0xE0,0xDF,
0xDE,0xDD,0xDC,0xDB,0xDA,0xD8,0xD7,0xD6,
0xD4,0xD3,0xD1,0xD0,0xCE,0xCC,0xCB,0xC9,
0xC7,0xC5,0xC3,0xC1,0xBF,0xBD,0xBB,0xB9,
0xB7,0xB5,0xB3,0xB1,0xAE,0xAC,0xAA,0xA7,
0xA5,0xA3,0xA0,0x9E,0x9B,0x99,0x97,0x94,
0x92,0x8F,0x8D,0x8A,0x88,0x85,0x83,0x80,
0x7D,0x7B,0x78,0x76,0x73,0x71,0x6E,0x6C,
0x69,0x67,0x65,0x62,0x60,0x5D,0x5B,0x59,
0x56,0x54,0x52,0x4F,0x4D,0x4B,0x49,0x47,
0x45,0x43,0x41,0x3F,0x3D,0x3B,0x39,0x37,
0x35,0x34,0x32,0x30,0x2F,0x2D,0x2C,0x2A,
0x29,0x28,0x26,0x25,0x24,0x23,0x22,0x21,
0x20,0x1F,0x1E,0x1D,0x1D,0x1C,0x1C,0x1B,
0x1B,0x1A,0x1A,0x1A,0x19,0x19,0x19,0x19,
0x19,0x19,0x19,0x19,0x1A,0x1A,0x1A,0x1B,
0x1B,0x1C,0x1C,0x1D,0x1D,0x1E,0x1F,0x20,
0x21,0x22,0x23,0x24,0x25,0x26,0x28,0x29,
0x2A,0x2C,0x2D,0x2F,0x30,0x32,0x34,0x35,
0x37,0x39,0x3B,0x3D,0x3F,0x41,0x43,0x45,
0x47,0x49,0x4B,0x4D,0x4F,0x52,0x54,0x56,
0x59,0x5B,0x5D,0x60,0x62,0x65,0x67,0x69,
0x6C,0x6E,0x71,0x73,0x76,0x78,0x7B,0x7D};
ucharcodethr_tab[256]=
{0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,
0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,
0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,
0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,
0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,
0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,
0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,
0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF,
0xBF,0xBE,0xBD,0xBC,0xBB,0xBA,0xB9,0xB8,
0xB7,0xB6,0xB5,0xB4,0xB3,0xB2,0xB1,0xB0,
0xAF,0xAE,0xAD,0xAC,0xAB,0xAA,0xA9,0xA8,
0xA7,0xA6,0xA5,0xA4,0xA3,0xA2,0xA1,0xA0,
0x9F,0x9E,0x9D,0x9C,0x9B,0x9A,0x99,0x98,
0x97,0x96,0x95,0x94,0x93,0x92,0x91,0x90,
0x8F,0x8E,0x8D,0x8C,0x8B,0x8A,0x89,0x88,
0x87,0x86,0x85,0x84,0x83,0x82,0x81,0x80,
0x7F,0x7E,0x7D,0x7C,0x7B,0x7A,0x79,0x78,
0x77,0x76,0x75,0x74,0x73,0x72,0x71,0x70,
0x6F,0x6E,0x6D,0x6C,0x6B,0x6A,0x69,0x68,
0x67,0x66,0x65,0x64,0x63,0x62,0x61,0x60,
0x5F,0x5E,0x5D,0x5C,0x5B,0x5A,0x59,0x58,
0x57,0x56,0x55,0x54,0x53,0x52,0x51,0x50,
0x4F,0x4E,0x4D,0x4C,0x4B,0x4A,0x49,0x48,
0x47,0x46,0x45,0x44,0x43,0x42,0x41,0x40,
0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,
0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,
0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,
0x58,0x59,0x5A,0x5B,0x5C,0x5D,0x5E,0x5F,
0x60,0x61,0x62,0x63,0x64,0x65,0x66,0x67,
0x68,0x69,0x6A,0x6B,0x6C,0x6D,0x6E,0x6F,
0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,
0x78,0x79,0x7A,0x7B,0x7C,0x7D,0x7E,0x7F};
ucharsize=1;
ucharff1=1;
voiddelay(uchart)
{ucharm;
uinti;
for(i=t;i>0;i--)
for(m=28;m>0;m--);
}
voidsin()
{
uchara;
for(a=0;a<255;a++)
{
P2=sin_tab[a];
delay(ff1);
}
}
voidfangbo()
{
uchara;
for(a=0;a<177;a++)
{
P2=0xdf;
delay(ff1);
}
for(a=0;a<177;a++)
{P2=0x10;
delay(ff1);
}
}
int0()interrupt0
{
size++;
if(size>3)
size=1;
}
int1()interrupt2
{
ff1++;
if(ff1>3)
ff1=1;
}
voidinint()
{
IT0=1;
EX0=1;
IT1=1;
EX1=1;
EA=1;
}
voidmain(void)
{inint();
while
(1)
{
switch(size)
{
case1:
fangbo();
break;
case2:
sin();
break;
default:
fangbo();
break;
}
}
}
第5章
总结
本课程设计是基于AT89C51单片机的信号发生器的设计。
该课程设计是以单片机8051为核心,利用单片机80C51,以DAC0832作为D/A转换器等部件,此函数信号发生器调节灵活方便,输出波形精度高且波形较为稳定。
在做课程设计的过程中,除了了解相关设计的硬件原理电路图外,还要了解具体的型号,熟悉相关软件的使用,如Protel、Word等,虽然在实际操作过程中遇到了很多困难,但经过不懈努力还是完成了本课程的设计。
在这一周的设计中,不仅使我增长了很多课堂上所学不到的知识,而且还让我对A/D转换和按键识别有了更深入的了解。
对一些单片机原理及应用有了更加深刻的认识。
参考文献
[1]单片微型计算机与接口技术,李群芳、黄建编著,电子工业出版社;
[2]单片机原理及应用,张毅刚编著,高等教育出版社;
[3]51系列单片机及C51程序设计,王建校,杨建国等编著,科学出版社;
[4]单片机原理及接口技术,李朝青编著,北京航空航天大学出版社;
[5]李群芳.单片机微型计算机与接口技术[M].电子工业出版社,2004
[6]黄智伟.全国大学生电子设计竞赛训练教程[M].电子工业出版社,2003
[7]周立功.单片机实验与实践[M].北京航空航天大学出版社,2004
东北石油大学课程设计成绩评价表
课程名称
单片机原理及应用课程设计
题目名称
基于DAC0832芯片的简单信号发生器设计
学生姓名
学号
指导教师姓名
职称
序号
评价项目
指标
满分
评分
1
工作量、工作态度和出勤率
按期圆满的完成了规定的任务,难易程度和工作量符合教学要求,工作努力,遵守纪律,出勤率高,工作作风严谨,善于与他人合作。
20
2
课程设计质量
课程设计选题合理,计算过程简练准确,分析问题思路清晰,结构严谨,文理通顺,撰写规范,图表完备正确。
45
3
创新
工作中有创新意识,对前人工作有一些改进或有一定应用价值。
5
4
答辩
能正确回答指导教师所提出的问题。
30
总分
评语:
指导教师:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 DAC0832 芯片 简单 信号发生器 设计