基于单片机的方波信号发生器设计

图 12 – 系统运行 – 初始状态
10
成都理工大学《电子系统设计》课程设计
4) 同时调节频率及占空比,示波器图像变化结果符合预期。
六、 结果分析
图 13 – 系统运行 – 初始状态
在本次设计中,方波信号发生器的频率和占空比都独立可调。输出方波信号的占空比 范围为 0%—100%,调节精度为 1%;频率范围为 50Hz—500Hz,调节精度为 10Hz。频率和 占空比之间的调节彼此独立。进行频率调节时,每次可以增加 100Hz 或 10Hz,超过 500Hz 时输出为 50Hz 的方波;进行占空比调节时,每次可增加 1%或 10%,超出 100%时输出占空 比为 0%方波。
3) 重新在初始状态下进行仿真。分别按下按键 3、4 调节方波占空比,可以看到方波 波形的占空比发生变化,而频率未变。
图 9 – Proteus 仿真 – 调节方波占空比
五、 实验记录
将 HEX 文件加载后,用示波器观察单片机的 P2.0 口,得到输出结果,如下图。 1) 系统运行的初始状态如下图,与仿真结果一致。
(1)频率调节 按下按键 1 或 2 时,进行频率的调节,占空比不变。1 键按下时,频率增加 100Hz, 若 2 键按下时,频率增加 10Hz。频率最大值为 500Hz,当频率大于最大值时,重新赋值为 50Hz。 (2)占空比调节 当按键 3 和 4 按下时,进行占空比调节,频率不变。3 键按下时,占空比进行增加 10%, 4 键按下时,占空比增加 1%。占空比最大值为 99%,当占空比大于 99%时,重新赋值为 1%。
图 2 – 系统硬件原理图
2.2 芯片端口资源分配表
表 2 74LS21 芯片端口资源分配表
芯片端口 1 2 4 5
作用说明 连接按键 1,判断按键 1 是否按下 连接按键 2,判断按键 2 是否按下 连接按键 3,判断按键 3 是否按下 连接按键 4,判断按键 4 是否按下
6
发送键盘中断请求信号
4
***********************/
void keyscan() interrupt 0 using 1 //外部中断 0
{float TF0,TZ1;
EX0=0;
//关中断
delay(10); //延时消抖
if(P1!=0x0f) //判断是否有键按下
成都理工大学《电子系统设计》课程设计
一、 总体设计
1.1 方案的设计与选择
实现方波发生器的方法很多,但主要有三个方案:采用单片函数发生器 8038,采用锁 相式频率合成器,采用单片机编程。其对比如下表:
方案
优点
缺点
简单易行,可实现数控 单片函数发生器 8038
调整频率
信号频率稳定度不高
锁相式频率合成器
图 1 – 方波信号发生器设计原理框图
在信号发生器中,只用到片内中断请求,即是在 AT89C51 输出一个波形采样点信号后,
接着启动定时器,在定时器未产生中断之前,AT89C51 等待,直到定时器计时结束,产生
中断请求,AT89C51 响应中断,接着输出下一个信号波形,如此循环。当有按键按下时,
产生外部中断请求信号,CPU 暂停当前工作,处理中断请求,重新装入定时初值,开始定
/************************
定时器中断子程序
************************/
void Timer0_freq() interrupt 1 //频率定时器 0 中断
{
TR1=1;
//启动定时器 1,占空比定时
TL0=TIMER0_L;
TH0=TIMER0_H;
OUTPUT=1;
EA=1;
//系统中断允许
TR0=1;
//定时器 1 和定时器 0 开始定时
TR1=1;
}
/********************* 主函数
13
成都理工大学《电子系统设计》课程设计
*********************/ void main(void) { chushihua(); //系统初始化 while(1) {} }
//系统时钟频率 //控制频率百位; //控制频率十位; //控制占空比十位; //控制占空比个位;
sbit OUTPUT=P2^0;
//方波输出端口;
uchar zkb;
uint freq;
uchar TIMER0_L,TIMER0_H,TIMER1_L,TIMER1_H; //定时器 0 和 1 的定时初值;
//输出高电平
}
void Timer1_zkb() interrupt 3 //占空比定时器 1 中断
{
TR1=0;
//定时器 1 停止
TL1=TIMER1_L;
TH1=TIMER1_H;
OUTPUT=0;
//输出低电平
}
/*********************** 键盘扫描子程序
14
成都理工大学《电子系统设计》课程设计
比分别为 50Hz 和 50%,符合程序初始化的结果。
图 7 – Proteus 仿真 – 初始状态
8
成都理工大学《电子系统设计》课程设计
2) 分别按下按键 1、2 调节方波频率。可以看到方波波形频率不断增加,一快一慢, 而占空比依然为 50%未变。
图 8 – Proteus 仿真 – 调节方波频率
时。
根据计算定时器初值的公式:
TC
=
2L
−
fOSC × 12
t
计算出定时器 0 与定时器 1 所要装入的初值。
定时器 0 初值:C1=(65536-fosc/(12.0*freq))
定时器 0 初值:C1=(65536-(fosc*zkb)/(12.0*100*freq))
其中 freq 表示输出方波频率,zkb 表示方波占空比。
增加 10Hz。频率最大值为 500Hz,当频率大于最大值时,重新赋值为 50Hz。另外两个按键
控制方波信号占空比。当按键 3 和 4 按下时,进行占空比调节,频率不变。3 键按下时,
占空比进行增加 10%,4 键按下时,占空比增加 1%。占空比最大值为 100%,当占空比大于
100%时,重新赋值为 0%。
TH0=0xb1;
TL1=0xf0; //初始占空比 50%定时 10ms
TH1=0xd8;
TMOD=0x11; //定时器 1 和定时器 0 工作在方式 1
IT0=1;
//选择 INT0 为下降沿触发方式
EX0=1;
//外部中断 0 允许
ET0=1;
//定时器 1 和定时器 0 中断允许
ET1=1;
9
成都理工大学《电子系统设计》课程设计
图 10 – 系统运行 – 初始状态
2) 按下 1、2 键调节方波频率,可见方波频率增加,占空比依然保持 50%。
图 11 – 系统运行 – 调节方波频率
3) 使方波重新达到初始状态,分别按下 3、4 键,可见方波占空比发生相应变化,而 频率依然为 50Hz 未变。
/**************************** 延时子程序 ****************************/
void delay(uchar n) //延时 {
uchar i; while(n--)
{for(i=255;i>0;i--) {} }}
12
成都理工大学《电子系统设计》课程设计
性能良好
难以达到输出频率覆盖系数 的要求,电路复杂。
单片机编程
信号精度较高
需求软硬件结合
表 1 – 方案对比
通过对比,决定采用单片机编程的方法来实现。该方法可以通过编程的方法来控制信
号波形的频率和幅度,而且在硬件电路不变的情况下,通过改编程序来实现频率的变换。
此外,由于通过编程方法产生的是数字信号,所以信号的精度可以做得很高。
6
成都理工大学《电子系统设计》课程设计
开始 关中断 延时消抖
N 是否有键按下 Y 判断按键号
键处理
频率和占空比 N 范围是否超界
Y 赋初值 计算定时初值 键盘口初始化 关中断
结束
图 4 – 键盘中断处理子程序流程图
3.4 定时器中断子程序
定时器中断子程序中有定时器 0 与定时器 1 中断,频率定时器 0 中断流程图与占空比 定时器 1 流程图分别如图 5、图 6 所示。
/******************* 系统初始化 *******************/
void chushihua(void)
{
P1=0x0f;
freq=50;
zkb=50;
TIMER0_L=0xe0;
TIMER0_H=0xb1;
TIMER1_L=0xf0;
TIMER1_H=0xd8;
TL0=0xe0; //初始频率 50Hz 定时 20ms
1.2 设计原理
AT89C51 单片机具有组成微型计算机的各部分部件:CPU、RAM、I/O 定时器/计数器以 及串行通讯接口等。只要将 AT89C51 的 ROM,接口电路,再配置键盘及其接口,显示器及
2
成都理工大学《电子系统设计》课程设计
其接口,数模转换及波形输出,指示灯及其接口等四部分,即可构成所需波形发生器。其 信号发生器构成原理框图如图 1 所示。
总体看来,设计成果达到了设计要求。输出方波的波形稳定,调节也较为简单。
11
七、 源程序
成都理工大学《电子系统设计》课程设计
#include<reg51.h> #define uchar unsigned char #define uint unsigned int
合集下载

89C51单片机设计多功能低频函数信号发生器,能产生方波、正弦波、三角波等信号波形

89C51单片机设计多功能低频函数信号发生器,能产生方波、正弦波、三角波等信号波形

波形发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。

本次课程设计使用的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接口电路和显示驱动电路。

基于51单片机信号发生器的设计

基于51单片机信号发生器的设计

专业方向课程设计报告设计课题:信号发生器的设计设计时间:2012年06月6日信号发生器的设计摘要:本文以STC89C51单片机为核心设计了一个低频函数信号发生器。

信号发生器采用数字波形合成技术,通过硬件电路和软件程序相结合,可输出自定义波形,如正弦波、方波、三角波、三角波、梯形波及其他任意波形,波形的频率和幅度在一定范围内可任意改变。

波形和频率的改变通过软件控制,幅度的改变通过硬件实现。

介绍了波形的生成原理、硬件电路和软件部分的设计原理。

关键词:低频信号发生器; 单片机;D/A转换1设计要求设计一个能产生方波、三角波、梯形波、锯齿波并且频率、幅度可调的信号发生器。

发挥部分:作品还能产生正弦波。

2系统概述2.1.1波形产生方案采用AT89C51单片机和DAC0832数模转换器生成波形,加上一个低通滤波器,生成的波形比较纯净。

它的特点是可产生任意波形,频率容易调节,频率能达到设计的500HZ以上。

2.1.2改变幅度方案:方案一:可以将送给DA的数字量乘以一个系数,这样就可以改变DA输出电流的幅度,从而改变输出电压;但是这样做有很严重的问题,单片机在做乘法运算时需要很长的时间,这样的话输出波形的频率就会很低;并且该方案的输出电压做不到连续可调,当DA的输入数字量比较小时,输出的波形失真就会比较严重。

方案二:将输出电压通过一个运算放大器的放大。

这样还有个优点是幅度连续可调。

经比较,方案二既可满足课程设计的基本要求,并且电路也挺简单。

2.2工作原理数字信号可以通过数/模转换器转换成模拟信号,因此可通过产生数字信号再转换成模拟信号的方法来获得所需要的波形。

89C51单片机本身就是一个完整的微型计算机,具有组成微型计算机的各部分部件:中央处理器CPU、随机存取存储器RAM、只读存储器ROM、I/O 接口电路、定时器/计数器以及串行通讯接口等,只要将89C51再配置键盘及、数模转换及波形输出、放大电路等部分,即可构成所需的波形发生器,其信号发生器构成系统框图如图2.2所示。

方波信号发生器设计

方波信号发生器设计

单片机最小系统设计报告课程名称:基于单片机的方波信号发生器院系:机电工程学院专业班级:机械制造及其自动化学生姓名:陈静指导教师:吴兆华完成时间: 2010年06月15日报告成绩:_____ _____________________目录一、概述 ------------------------------------------------------------------------------------------------------------------------- 21.1、设计内容------------------------------------------------------------------------------------------------------ 31.2、设计目的------------------------------------------------------------------------------------------------------ 3二、方波发生器设计方案---------------------------------------------------------------------------------------------------- 3三、系统的硬件设计---------------------------------------------------------------------------------------------------------- 43.1、单片机最小系统--------------------------------------------------------------------------------------------- 43.2、电路板的制作------------------------------------------------------------------------------------------------ 5四、程序流程图 ---------------------------------------------------------------------------------------------------------------- 7五、单片机程序设计清单----------------------------------------------------- 7六、电路板连接图----------------------------------------------------------- 9七、调试与性能分析---------------------------------------------------------------------------------------------------------- 97.1硬件调试 -------------------------------------------------------------------------------------------------------- 97.2软件调试 -------------------------------------------------------------------------------------------------------- 9八、设计体会 ------------------------------------------------------------------------------------------------------------------ 10参考文献 ------------------------------------------------------------------------------------------------------------------------ 11方波信号发生器设计一、概述单片机集成度高、功能强、可靠性高、体积小、功耗地、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。

毕业设计(论文)-基于单片机的方波信号发生器[管理资料]

毕业设计(论文)-基于单片机的方波信号发生器[管理资料]

毕业设计课题名称基于单片机的方波信号发生器姓名学号所在系电子系专业年级指导教师_ _职称_副教授__二O一O 年月日目录摘要 .................................................................................................................................... I II ABSTRACT . (IV)8255芯片简介 (4)74LS373简介 (5)4.2.3 系统工作原理 (5)第5章.控制器的软件设计 (5)计数器初值计算 (5)计算公式 (6)1秒的方法 (6)软件延时 (7)时间及信号灯的显示 (7)8051并行口的扩展 (7)8255与8051的连接: (7)一、概述 (8)、设计内容 (8)、设计的基本要求 (8)二、方波发生器设计方案 (9)、方案介绍 (9).2、设计的基本要求 (9)、方波发生器的原理与功能 (10)三、系统的硬件设计 (11)、单片机最小系统 (11)、小键盘接口电路 (12).3、LED显示电路 (12)、LED显示电路 (13)四、系统的软件设计 (13)、系统初始化子程序 (14)、显示子程序 (14)程序源代码 (15)结束语 (21)参考文献 (22)致谢 (22)摘要近年来随着科技的飞速发展,单片机的应用正在不断地走向深入。

在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。

本文首先对智能交通灯的研究意义和智能交通灯的研究现状进行了分析,指出了现状交通灯存在的缺点,并提出了改进方法。

智能交通灯控制系统通常要实现自动控制。

本文还对AT89S51单片机的结构特点和重要引脚功能进行了介绍,同时对智能交通灯控制系统的设计进行了详细的分析。

基于单片机的波形发生器设计及实现

基于单片机的波形发生器设计及实现

基于单片机的波形发生器设计及实现一、设计方案波形发生器是一种能够产生不同频率、幅度和波形形式的信号的电路设备。

在本设计中,我们将采用单片机作为控制核心,利用其内部计时器和输出引脚来实现波形的产生。

具体的设计方案如下:1. 选择单片机:选用一款适合波形产生器设计的单片机,如ATmega328P等。

2.编程开发:利用单片机的C语言编程开发,在程序中实现波形发生器的控制逻辑,包括波形形状、频率、幅度等参数的设定和控制。

3.输出电路设计:设计适合单片机输出信号的电路,包括放大、滤波和隔离等功能,以确保输出信号的质量和稳定性。

4.外部控制接口:设计外部控制接口,包括旋钮、按键等,方便用户对波形发生器进行参数设定和调节。

5.功率供应:提供稳定的电源供应,确保波形发生器正常工作。

二、实现过程1.单片机编程:首先编写C语言程序,实现波形发生器的控制逻辑。

通过设置定时器的计数值和输出引脚的状态来产生不同形状的波形,如正弦波、方波、三角波等。

同时,通过按键和旋钮来实现频率和幅度的调节。

2.输出电路设计:设计一个简单的输出电路,将单片机的输出信号放大和滤波,以获得较为稳定和可靠的输出信号。

同时,通过隔离电路来防止单片机受到外部干扰。

3.外部控制接口:设计旋钮和按键的连接电路,将它们与单片机的GPIO引脚相连,实现参数的设定和调节。

通过旋钮来调节频率,通过按键来切换波形形状和设定幅度。

4.功率供应:设计一个合适的功率供应电路,为单片机和输出电路提供稳定的电源,以保证波形发生器的正常工作。

5.调试测试:将所有部件组装在一起,通过示波器等仪器对输出信号进行观测和测试,调节参数使得波形发生器产生符合要求的波形,并记录各种参数值,以便后续使用和改进。

三、实现效果经过上述步骤的设计和实现,我们成功地搭建了一个基于单片机的波形发生器。

该波形发生器可以产生多种波形形状,如正弦波、方波、三角波等,同时支持频率和幅度的调节。

通过外部控制接口,用户可以方便地对波形发生器进行参数的设定和调节,使得波形发生器具有较好的灵活性和易用性。

基于MCS-51单片机的可调频率方波发生器课程设计报告

基于MCS-51单片机的可调频率方波发生器课程设计报告

单片机课程设计报告设计题目:频率可调方波发生器专业班级:生物医学工程09班组长:李建华组员:梁国锋,赖水兵,郭万劲,李建华2010 年 06 月 16日摘要本实验是基于PHILIPS AT89C51 单片机所设计的,可以实现键位与数字动态显示的一种频率可调方波发生器。

通过键盘键入(10HZ-9999HZ)随机频率,使用七段数码管显示,每一个数码管对应一个键位。

单片机对各个键位进行扫描,确定键位的输入,然后数码管显示输入的数值,方波发生器输出以数码管显示的数值为频率的方波。

关键词:单片机七段数码管键盘电路频率可调方波发生器一、目的和功能1.1 目的:设计一种频率范围限定且可调的方波发生器,志在产生特定频率的方波。

1.2功能:假设键盘是4*4的键盘,当键盘输入范围在10hz-9999hz的数字,单片机控制数码管显示该数值,并把该数值当做方波发生器的输入频率,单片机控制该方波发生器以该数值作为频率显示方波,从而得到我们想要频率的方波。

二、硬件设计2.1 硬件设计思想键盘的数字和键位关系固定,通过键盘输入产生频率,通过LED数码管显示出来,每一个数码管对应一个键位。

基本设备是基于PHILIPS AT89C51单片机,外围设备采用的是4个七段数码管,PHILIPS A T89C51单片机,1个OSCILLOSCOPE 方波发生器,16个Button,若干电阻,电源电池。

2.2 部分硬件方案论述2.2.1 七段数码管扫描显示方式的方案比较方案一:静态显示方式:静态显示方式是指当显示器显示某一字符时,七段数码管的每段发光二极管的位选始终被选中。

在这种显示方式下,每一个LED数码管显示器都需要一个8位的输出口进行控制。

静态显示主要的优点是显示稳定,在发光二极管导通电流一定的情况下显示器的亮度大,系统运行过程中,在需要更新显示内容时,CPU才去执行显示更新子程序,这样既节约了CPU的时间,又提高了CPU的工作效率。

方波发生器程序(单片机课程设计)

单片机硬件用实习任务书这个设计中要完成波形发生器。

能够产生三角波、方波、正弦波。

当按A键时输出三角波,按B键时输出方波,按C键时输出正弦波,调节电位器能改变波形的频率,并用四位LED显示当前输出的是什么波形,频率是多少。

具体任务:●单片机芯片的选择●存贮器的设计●输入/输出接口的设计●键盘和显示器的设计●制作原理图与印刷电路板图●利用仿真器来调试电路板●程序编写与调试第一阶段:完成器件选择,原理图的绘制。

第二阶段:完成程序编写,仿真器的调试。

总成绩分为三部分: 1、原理图、硬件图的绘制 30%2、仿真器调试 40%3、设计报告 30%目录1 实习内容与要求.................................................................................. 错误!未定义书签。

2 总体方案设计...................................................................................... 错误!未定义书签。

3 硬件设计.............................................................................................. 错误!未定义书签。

3.1 单片机系统硬件设计................................................................ 错误!未定义书签。

3.2 显示模块硬件设计.................................................................... 错误!未定义书签。

3.3 键盘模块硬件设计.................................................................... 错误!未定义书签。

用单片机进行方波发生器的设计

用单片机进行方波发生器的设计方波发生器是一种产生具有固定频率和振幅的方波信号的电路或设备。

它可以广泛应用于通信、计算机、测量、控制等领域。

在本文中,我们将详细介绍如何使用单片机进行方波发生器的设计。

设计一个单片机方波发生器可以分为以下几个步骤:步骤一:选择单片机型号和开发工具选择一个适合的单片机型号是设计方波发生器的第一步。

目前市场上常见的单片机有MCS-51系列、AVR系列、STM32系列等。

根据需求选择适合的型号。

步骤二:确定方波的频率和振幅方波发生器的设计需要明确所需的方波频率和振幅。

频率指的是方波信号的周期性,单位为赫兹(Hz);振幅指的是方波信号的最大值和最小值之间的差值,单位为伏特(V)。

根据实际需求确定频率和振幅的数值。

步骤三:编写单片机程序在单片机方波发生器的设计中,需要编写相应的程序代码。

在编写代码之前,需要了解所选单片机的编程语言、开发工具和编程接口,以便正确地编写和调试程序。

在编写程序时,需要利用单片机的定时器/计数器功能。

通过配置定时器的工作模式、时钟源和计数值,可以生成一定频率的脉冲信号。

然后利用IO口输出脉冲信号,并通过电路将脉冲信号转换成方波信号。

具体的代码实现细节根据所选单片机型号和开发工具而定,可以参考相关的单片机开发文档和教程。

以下是一个使用STM32单片机的例子:#include "stm32f10x.h"void delay(uint32_t n)for(uint32_t i=0;i<n;i++);}int main(void)GPIO_InitTypeDef GPIO_InitStructure;TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;TIM_OCInitTypeDef TIM_OCInitStructure;RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOA, &GPIO_InitStructure);TIM_TimeBaseStructure.TIM_Prescaler = 72-1;TIM_TimeBaseStructure.TIM_Period = 1000-1;TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure);TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;TIM_OCInitStructure.TIM_Pulse = 500-1;TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;TIM_OC1Init(TIM2, &TIM_OCInitStructure);TIM_OC1PreloadConfig(TIM2, TIM_OCPreload_Enable);TIM_ARRPreloadConfig(TIM2, ENABLE);TIM_Cmd(TIM2, ENABLE);while(1)}}步骤四:电路设计和调试完成单片机程序编写后,需要进行相应的电路设计和调试工作。

基于单片机的方波信号发生器课程设计

微型计算机技术专业方向课程设计任务书题目名称:基于单片机的方波信号发生器专业自动化班级 122姓名学号学校:指导教师:2014年12月9日课程设计任务书课程名称:微型计算机技术设计题目:基于单片机的方波信号发生器系统硬件要求:从P1.0口输出方波,分四个档:按下S1时输出1HZ,按下S2时输出10HZ,按下S3时输出1KHZ,按下S4时输出10KHZ的方波,要求误差少于1%,软件设计:1)主程序设计2)各功能子程序设计其他要求:1、每位同学独立完成本设计。

2、依据题目要求,提出系统设计方案。

3、设计系统电路原理图。

1、调试系统硬件电路、功能程序。

2、编制课程设计报告书并装订成册,报告书内容(按顺序)(1)报告书封面(2)课程设计任务书(3)系统设计方案的提出、分析(4)系统中典型电路的分析(5)系统软件结构框图(6)系统电路原理图(7)源程序摘要本实验是基于AT89C51单片机单片机所设计的,可以实现四种频率不同的方波信号的发生。

本实验方波输出在89C51的P1.0口,分为四档,按下S1时输出1HZ,按下S2时输出10HZ,按下S3时输出1KHZ,按下S4时输出10KHZ的方波。

关键词:51单片机;方波;四档目录第一章前言 (5)第二章系统总体设计2.1系统介绍 (5)2.2 硬件简介 (5)2.3 软件简介 (5)2.4 系统结构框图 (5)第三章硬件电路3.1硬件设计思想 (6)3.2开关信号采集 (6)3.3复位电路及晶振电路 (8)3.4方波输出 (8)第四章软件系统4.1软件系统概述 (8)4.2各部分程序 (10)第五章总结 (15)附录 (16)第一章前言本文是以MCS-51单片机系统为基础的,通过四个单刀单掷开关控制单片机的P1.0口输出四种不同频率的方波信号。

即分为四个档,闭合开关S1时输出1HZ 方波信号,闭合开关S2时输出10HZ方波信号,闭合开关S3时输出1KHZ方波信号,闭合开关S3时输出10KHZ方波信号,并且每组方波信号的误差不大于1%。

基于MCS-51单片机的频率可调的方波发生器设计--2ahu

基于MC51单片机的频率可调的方波信号发生器用单片机产生频率可调的方波信号。

输出方波的频率范围为1Hz-200Hz,频率误差比小于0.5%。

要求用“增加”、“减小”2 个按钮改变方波给定频率,按钮每按下一次,给定频率改变的步进步长为1Hz,当按钮持续按下的时间超过2 秒后,给定频率以10 次/秒的速度连续增加(减少),输出方波的频率要求在数码管上显示。

用输出方波控制一个发光二极管的显示,用示波器观察方波波形。

开机默认输出频率为5Hz。

1:系统设计(1)分析任务要求,写出系统整体设计思路任务分析:方波信号的产生实质上就是在定时器溢出中断次数达到规定次数时,将输出I/O 管脚的状态取反。

由于频率范围最高为200Hz,即每个周期为5ms(占空比1:1,即高电平2.5ms,低电平2.5 ms),因此,定时器可以工作在8 位自动装载的工作模式。

涉及以下几个方面的问题:按键的扫描、功能键的处理、计时功能以及数码管动态扫描显示等。

问题的难点在按键连续按下超过2S 的计时问题,如何实现计时功能。

系统的整体思路:主程序在初始化变量和寄存器之后,扫描按键,根据按键的情况执行相应的功能,然后在数码显示频率的值,显示完成后再回到按键扫描,如此反复执行。

中断程序负责方波的产生、按键连续按下超过2S 后频率值以10Hz/s 递增(递减)。

(2)选择单片机型号和所需外围器件型号,设计单片机硬件电路原理图采用MCS51 系列单片机At89S51 作为主控制器,外围电路器件包括数码管驱动、独立式键盘、方波脉冲输出以及发光二极管的显示等。

数码管驱动采用2 个四联共阴极数码管显示,由于单片机驱动能力有限,采用74HC244 作为数码管的驱动。

在74HC244 的7 段码输出线上串联100 欧姆电阻起限流作用。

独立式按键使用上提拉电路与电源连接,在没有键按下时,输出高电平。

发光二极管串联500欧姆电阻再接到电源上,当输入为低电平时,发光二极管导通发光。

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