课程设计报告
课题名称 波形发生器设计——按键控制频率 学 院 ________ 专 业 ________ 班 级 学 号 __________ 姓 名 _________ 指导教师__________
定稿日期: 2014 年 6月20日
目录
一.内容摘要 ................................................................................................................................... 2 二.设计目的和要求 ....................................................................................................................... 2
2.1 设计目的 ........................................................................................................................... 2 2.2 设计要求 ........................................................................................................................... 2 三.系统方案 ................................................................................................................................... 2
3.1 设计思路 ........................................................................................................................... 2 3.2 DAC0832芯片 .................................................................................................................... 3 3.2.1 DAC0832主要特性 .................................................................................................. 3 3.2.2 DAC0832引脚 .......................................................................................................... 4 3.2.3 DAC0832内部框图 .................................................................................................. 5 3.3 系统框图 ........................................................................................................................... 6 四.系统调试 ................................................................................................................................... 6
4.1使用的主要仪器 ................................................................................................................ 6 4.2 实验步骤 ......................................................................................................................... 6 4.2.1 设计方法——硬件设计 ......................................................................................... 6 4.2.2 设计方法——软件设计 ......................................................................................... 7 4.3 测试数据及波形分析 ..................................................................................................... 8 4.3.1 实验步骤 ............................................................................................................... 8 4.3.2 实验结果 ............................................................................................................... 9 4.4 故障分析 ......................................................................................................................... 10 五.答辩题目及回答 ..................................................................................................................... 10 六.课程设计体会 ......................................................................................................................... 10 参考文献......................................................................................................................................... 11
一.内容摘要
单片机(Single chip microcomputer)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。
单片机(Single chip microcomputer)微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit), 常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器、控制器、存储器、输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。它最早是被用在工业控制领域。
二.设计目的和要求
2.1 设计目的
(1)掌握DAC0832与PC机的接口方法。 (2)掌握D/A转换应用程序设计方法。
2.2 设计要求
利用DAC0832产生锯齿波。在矩形按键中任选三个键作为按键“1”,“2”,“3”。按“1”键频率为100HZ;按“2”键频率变为150HZ;按“3”键频率为200HZ。用示波器观察输出。
三.系统方案
3.1 设计思路
1.首先对于本次课题:波形发生器设计——按键控制频率而言,需要对产生锯齿波形进行程序上的编写
2.当锯齿波形图在keil软件以及示波器中正确显示后,通过调节程序代码中的不同延时子程序来控制延时的长短,从而达到调整实验中锯齿波形相对应“100Hz”、“150Hz”和
“200Hz”的频率输出结果。
3.程序中必须设置3个不同延时子程序来控制延时的长短,每个子程序对应于不同频率的锯齿波形图。
4.程序中设置按键程序(SWITCH语句),当对应按键按下时实现不同频率锯齿波的输出。 5.最后利用DAC0832数模转换口进行结果的输出操作,其中锯齿波形图参见示波器的连接显示。
3.2 DAC0832芯片
DAC0832是8分辨率的D/A转换集成芯片。与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。
DAC0832引脚功能电路应用原理图DAC0832是采样频率为八位的D/A转换芯片,集成电路内有两级输入寄存器,使DAC0832芯片具备双缓冲、单缓冲和直通三种输入方式,以便适于各种电路的需要(如要求多路D/A异步输入、同步转换等)。所以这个芯片的应用很广泛,关于DAC0832应用的一些重要资料见下图: D/A转换结果采用电流形式输出。若需要相应的模拟电压信号,可通过一个高输入阻抗的线性运算放大器实现。运放的反馈电阻可通过RFB端引用片内固有电阻,也可外接。DAC0832逻辑输入满足TTL电平,可直接与TTL电路或微机电路连接。 3.2.1 DAC0832主要特性
(1)分辨率:为8位,逻辑电平与TTL兼容。 (2)电流稳定时间:1us。
(3)参考电压工作范围:-10V~+10V。 (4)可单缓冲、双缓冲或直接数字输出。 (5)只需在满量程下调整其线性度; (6)单一电源供电(+5V~+15V); (7)低功耗:200mW。
3.2.2 DAC0832引脚
图3.2.1 DAC0832引脚图
DAC0832引脚功能如下:
○1 D0~D7:8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错);
○2 ILE:数据锁存允许控制信号输入线,高电平有效; ○3 CS:片选信号输入线(选通数据锁存器),低电平有效,CS与ILE信号结合,可控制WR1是否起作用。
○4 WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;
○5 WR2:DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。由WR2、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。
○6XFER:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效,用来控制WR2,选通DAC寄存器。
○7 IOUT1:DAC电流输出端1,其值随DAC寄存器的内容线性变化; ○8 IOUT2:DAC电流输出端2,其值与IOUT1值之和为一常数; ○9 RFB:反馈信号输入线,改变RFB端外接电阻值可调整转换满量程精度,为DAC提供电压输出;
1○0 VCC:电源输入端,VCC的范围为+5V~+15V; 1○1 VREF:基准电压输入线,VREF的范围为-10V~+10V,通过它将外加高精度电压源与内部的电阻网络连接;
1○2 AGND:模拟信号地; 1○3 DGND:数字信号地
3.2.3 DAC0832内部框图
图 3.2.2 DAC0832逻辑框图
DAC0832转换器的内部框图如图3.2.2所示,是由一个输入寄存器、DAC寄存器和D\A转换器组成的。DAC0832为电流输出型D/A转换器,实际应用中可以通过外接运算放大器将电流转换为电压。
DAC0832是典型的带内部双缓数据缓冲器的8位D/A芯片,其逻辑结构如图所示。当ILE=1时,寄存器输出随着输入变化;当ILE=0时,数据锁存在寄存器中,不再随数据线上数据的变化而变化;当ILE端为高电平,CS与WR1同时为低电平时,使得LE1=1;当XFER与WR2同时为低电平时,使得LE2=1,DAC寄存器的输出随着寄存器的输入变化,WR2沿将输入寄存器的信息锁存在该寄存器中,RFB为外部运算放大器提供的反馈电阻。VREF端是由外电路为芯片提供一个-10~10V的基准电源。IOUT1和IOUT2为电流的输出端,两者之和为一个常数。
3.3 系统框图
图3.3.1 系统框图
调试过程的顺序是:首先硬件的调试,要先检查电路的逻辑线路是否正确,如果正确再检查原理图的线路连接是否正确,电路的布局安排是否合理等。其次软件的调试需要检查程序的语法是否正确,数据结构安排是否妥当,时序是否正确,整体流程安排是否合理等。只有硬件调试和软件调试分别检查妥当后,才可以进行系统调试最关键的一步,即软硬件的协同调试。
四.系统调试
4.1使用的主要仪器
DS5022ME示波器,XL2000MCU单片机实验箱,连接线若干
4.2 实验步骤
4.2.1 设计方法——硬件设计
A.电路原理图
图4.2.1 电路原理图
B.电路原理图说明
连线过程:
1.CS-片选位连接P2.7 2.WR-写入位连接P3.4
3.DAC0832数模转换器连接输出 4.按键J37连接89C51 \P1端口 5.连接于电脑 4.2.2 设计方法——软件设计 A.程序流程图
B.源程序
#include
#define uchar unsigned char #define uint unsigned int #define DATA P0 #define KEY P1 sbit wr=P3^4; sbit cs=P2^7; void delay1() {uchar i,j; cs=0; wr=0;
for(i=0;i
for(j=0;j
void delay2() {uchar i,j; cs=0; wr=0;
for(i=0;i
void delay3() {uchar i,j; cs=0; wr=0;
for(i=0;i
for(j=0;j
void main() {
switch(KEY) {
case 0xfd: delay1(); break;
case 0xfb:delay2(); break;
case 0xf7: delay3(); break; } }
4.3 测试数据及波形分析
4.3.1 实验步骤
1.了解课题:波形发生器设计——按键控制频率相关信息以及所用到的课设知识。 2.软件设计:
(1)编写波形图——锯齿波程序代码;
(2)编写3个不同频率的延时子函数代码控制编写不同锯齿波输出。 (3)编写主程序main()函数的不同频率相对应的3个按键控制。 3.硬件设计:
连接线路于XL2000MCU单片机实验箱,本实验连线过程: (1)CS-片选位连接P2.7 (2) WR-写入位连接P3.4
(3) DAC0832数模转换器连接输出 (4)按键J37连接89C51 \P1端口 (5)连接于电脑
4.3.2 实验结果
图4.3.1(1) 频率99HZ锯齿波
图4.3.1(2) 频率159HZ锯齿波
图4.3.1(3) 频率211HZ锯齿波
4.4 故障分析
本次对于课题:波形发生器设计——按键控制频率的课程设计过程中产生了很多的问题:
1.硬件:
仪器客观问题,导致波形图迟迟不出现。
解决:反复替换仪器,进行尝试。
2.软件:
程序编程代码出错。对3个延迟子函数的编写中参变量只设置了一个i,造成频率变化超出字符0~255范围,导致示波器波形图不能正常显示。
解决:
在老师的指导下,反复修改程序。增加参变量J进行控制频率。
五.答辩题目及回答
DAC0832用了几级缓冲?哪几个控制信号?
答:用了单缓冲,CS和WR控制信号
六.课程设计体会
1
参考文献
1、《单片机原理及应用技术》万隆主编,清华出版社
2、《单片机原理及应用(第2版)》姜志海主编,电子工业出版社
3、《单片机原理与应用》(C语言版)王浩全等主编,人民邮电出版社 1 1
课程设计报告
课题名称 波形发生器设计——按键控制频率 学 院 ________ 专 业 ________ 班 级 学 号 __________ 姓 名 _________ 指导教师__________
定稿日期: 2014 年 6月20日
目录
一.内容摘要 ................................................................................................................................... 2 二.设计目的和要求 ....................................................................................................................... 2
2.1 设计目的 ........................................................................................................................... 2 2.2 设计要求 ........................................................................................................................... 2 三.系统方案 ................................................................................................................................... 2
3.1 设计思路 ........................................................................................................................... 2 3.2 DAC0832芯片 .................................................................................................................... 3 3.2.1 DAC0832主要特性 .................................................................................................. 3 3.2.2 DAC0832引脚 .......................................................................................................... 4 3.2.3 DAC0832内部框图 .................................................................................................. 5 3.3 系统框图 ........................................................................................................................... 6 四.系统调试 ................................................................................................................................... 6
4.1使用的主要仪器 ................................................................................................................ 6 4.2 实验步骤 ......................................................................................................................... 6 4.2.1 设计方法——硬件设计 ......................................................................................... 6 4.2.2 设计方法——软件设计 ......................................................................................... 7 4.3 测试数据及波形分析 ..................................................................................................... 8 4.3.1 实验步骤 ............................................................................................................... 8 4.3.2 实验结果 ............................................................................................................... 9 4.4 故障分析 ......................................................................................................................... 10 五.答辩题目及回答 ..................................................................................................................... 10 六.课程设计体会 ......................................................................................................................... 10 参考文献......................................................................................................................................... 11
一.内容摘要
单片机(Single chip microcomputer)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。
单片机(Single chip microcomputer)微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit), 常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器、控制器、存储器、输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。它最早是被用在工业控制领域。
二.设计目的和要求
2.1 设计目的
(1)掌握DAC0832与PC机的接口方法。 (2)掌握D/A转换应用程序设计方法。
2.2 设计要求
利用DAC0832产生锯齿波。在矩形按键中任选三个键作为按键“1”,“2”,“3”。按“1”键频率为100HZ;按“2”键频率变为150HZ;按“3”键频率为200HZ。用示波器观察输出。
三.系统方案
3.1 设计思路
1.首先对于本次课题:波形发生器设计——按键控制频率而言,需要对产生锯齿波形进行程序上的编写
2.当锯齿波形图在keil软件以及示波器中正确显示后,通过调节程序代码中的不同延时子程序来控制延时的长短,从而达到调整实验中锯齿波形相对应“100Hz”、“150Hz”和
“200Hz”的频率输出结果。
3.程序中必须设置3个不同延时子程序来控制延时的长短,每个子程序对应于不同频率的锯齿波形图。
4.程序中设置按键程序(SWITCH语句),当对应按键按下时实现不同频率锯齿波的输出。 5.最后利用DAC0832数模转换口进行结果的输出操作,其中锯齿波形图参见示波器的连接显示。
3.2 DAC0832芯片
DAC0832是8分辨率的D/A转换集成芯片。与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。
DAC0832引脚功能电路应用原理图DAC0832是采样频率为八位的D/A转换芯片,集成电路内有两级输入寄存器,使DAC0832芯片具备双缓冲、单缓冲和直通三种输入方式,以便适于各种电路的需要(如要求多路D/A异步输入、同步转换等)。所以这个芯片的应用很广泛,关于DAC0832应用的一些重要资料见下图: D/A转换结果采用电流形式输出。若需要相应的模拟电压信号,可通过一个高输入阻抗的线性运算放大器实现。运放的反馈电阻可通过RFB端引用片内固有电阻,也可外接。DAC0832逻辑输入满足TTL电平,可直接与TTL电路或微机电路连接。 3.2.1 DAC0832主要特性
(1)分辨率:为8位,逻辑电平与TTL兼容。 (2)电流稳定时间:1us。
(3)参考电压工作范围:-10V~+10V。 (4)可单缓冲、双缓冲或直接数字输出。 (5)只需在满量程下调整其线性度; (6)单一电源供电(+5V~+15V); (7)低功耗:200mW。
3.2.2 DAC0832引脚
图3.2.1 DAC0832引脚图
DAC0832引脚功能如下:
○1 D0~D7:8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错);
○2 ILE:数据锁存允许控制信号输入线,高电平有效; ○3 CS:片选信号输入线(选通数据锁存器),低电平有效,CS与ILE信号结合,可控制WR1是否起作用。
○4 WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;
○5 WR2:DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。由WR2、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。
○6XFER:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效,用来控制WR2,选通DAC寄存器。
○7 IOUT1:DAC电流输出端1,其值随DAC寄存器的内容线性变化; ○8 IOUT2:DAC电流输出端2,其值与IOUT1值之和为一常数; ○9 RFB:反馈信号输入线,改变RFB端外接电阻值可调整转换满量程精度,为DAC提供电压输出;
1○0 VCC:电源输入端,VCC的范围为+5V~+15V; 1○1 VREF:基准电压输入线,VREF的范围为-10V~+10V,通过它将外加高精度电压源与内部的电阻网络连接;
1○2 AGND:模拟信号地; 1○3 DGND:数字信号地
3.2.3 DAC0832内部框图
图 3.2.2 DAC0832逻辑框图
DAC0832转换器的内部框图如图3.2.2所示,是由一个输入寄存器、DAC寄存器和D\A转换器组成的。DAC0832为电流输出型D/A转换器,实际应用中可以通过外接运算放大器将电流转换为电压。
DAC0832是典型的带内部双缓数据缓冲器的8位D/A芯片,其逻辑结构如图所示。当ILE=1时,寄存器输出随着输入变化;当ILE=0时,数据锁存在寄存器中,不再随数据线上数据的变化而变化;当ILE端为高电平,CS与WR1同时为低电平时,使得LE1=1;当XFER与WR2同时为低电平时,使得LE2=1,DAC寄存器的输出随着寄存器的输入变化,WR2沿将输入寄存器的信息锁存在该寄存器中,RFB为外部运算放大器提供的反馈电阻。VREF端是由外电路为芯片提供一个-10~10V的基准电源。IOUT1和IOUT2为电流的输出端,两者之和为一个常数。
3.3 系统框图
图3.3.1 系统框图
调试过程的顺序是:首先硬件的调试,要先检查电路的逻辑线路是否正确,如果正确再检查原理图的线路连接是否正确,电路的布局安排是否合理等。其次软件的调试需要检查程序的语法是否正确,数据结构安排是否妥当,时序是否正确,整体流程安排是否合理等。只有硬件调试和软件调试分别检查妥当后,才可以进行系统调试最关键的一步,即软硬件的协同调试。
四.系统调试
4.1使用的主要仪器
DS5022ME示波器,XL2000MCU单片机实验箱,连接线若干
4.2 实验步骤
4.2.1 设计方法——硬件设计
A.电路原理图
图4.2.1 电路原理图
B.电路原理图说明
连线过程:
1.CS-片选位连接P2.7 2.WR-写入位连接P3.4
3.DAC0832数模转换器连接输出 4.按键J37连接89C51 \P1端口 5.连接于电脑 4.2.2 设计方法——软件设计 A.程序流程图
B.源程序
#include
#define uchar unsigned char #define uint unsigned int #define DATA P0 #define KEY P1 sbit wr=P3^4; sbit cs=P2^7; void delay1() {uchar i,j; cs=0; wr=0;
for(i=0;i
for(j=0;j
void delay2() {uchar i,j; cs=0; wr=0;
for(i=0;i
void delay3() {uchar i,j; cs=0; wr=0;
for(i=0;i
for(j=0;j
void main() {
switch(KEY) {
case 0xfd: delay1(); break;
case 0xfb:delay2(); break;
case 0xf7: delay3(); break; } }
4.3 测试数据及波形分析
4.3.1 实验步骤
1.了解课题:波形发生器设计——按键控制频率相关信息以及所用到的课设知识。 2.软件设计:
(1)编写波形图——锯齿波程序代码;
(2)编写3个不同频率的延时子函数代码控制编写不同锯齿波输出。 (3)编写主程序main()函数的不同频率相对应的3个按键控制。 3.硬件设计:
连接线路于XL2000MCU单片机实验箱,本实验连线过程: (1)CS-片选位连接P2.7 (2) WR-写入位连接P3.4
(3) DAC0832数模转换器连接输出 (4)按键J37连接89C51 \P1端口 (5)连接于电脑
4.3.2 实验结果
图4.3.1(1) 频率99HZ锯齿波
图4.3.1(2) 频率159HZ锯齿波
图4.3.1(3) 频率211HZ锯齿波
4.4 故障分析
本次对于课题:波形发生器设计——按键控制频率的课程设计过程中产生了很多的问题:
1.硬件:
仪器客观问题,导致波形图迟迟不出现。
解决:反复替换仪器,进行尝试。
2.软件:
程序编程代码出错。对3个延迟子函数的编写中参变量只设置了一个i,造成频率变化超出字符0~255范围,导致示波器波形图不能正常显示。
解决:
在老师的指导下,反复修改程序。增加参变量J进行控制频率。
五.答辩题目及回答
DAC0832用了几级缓冲?哪几个控制信号?
答:用了单缓冲,CS和WR控制信号
六.课程设计体会
1
参考文献
1、《单片机原理及应用技术》万隆主编,清华出版社
2、《单片机原理及应用(第2版)》姜志海主编,电子工业出版社
3、《单片机原理与应用》(C语言版)王浩全等主编,人民邮电出版社 1 1