用单片机进行方波发生器的设计1Word文件下载.docx

上传人:b****5 文档编号:8498452 上传时间:2023-05-11 格式:DOCX 页数:11 大小:64.03KB
下载 相关 举报
用单片机进行方波发生器的设计1Word文件下载.docx_第1页
第1页 / 共11页
用单片机进行方波发生器的设计1Word文件下载.docx_第2页
第2页 / 共11页
用单片机进行方波发生器的设计1Word文件下载.docx_第3页
第3页 / 共11页
用单片机进行方波发生器的设计1Word文件下载.docx_第4页
第4页 / 共11页
用单片机进行方波发生器的设计1Word文件下载.docx_第5页
第5页 / 共11页
用单片机进行方波发生器的设计1Word文件下载.docx_第6页
第6页 / 共11页
用单片机进行方波发生器的设计1Word文件下载.docx_第7页
第7页 / 共11页
用单片机进行方波发生器的设计1Word文件下载.docx_第8页
第8页 / 共11页
用单片机进行方波发生器的设计1Word文件下载.docx_第9页
第9页 / 共11页
用单片机进行方波发生器的设计1Word文件下载.docx_第10页
第10页 / 共11页
用单片机进行方波发生器的设计1Word文件下载.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

用单片机进行方波发生器的设计1Word文件下载.docx

《用单片机进行方波发生器的设计1Word文件下载.docx》由会员分享,可在线阅读,更多相关《用单片机进行方波发生器的设计1Word文件下载.docx(11页珍藏版)》请在冰点文库上搜索。

用单片机进行方波发生器的设计1Word文件下载.docx

二、方波发生器设计方案3

2.1、方案介绍3

2.2、方波发生器的原理与功能3

三、系统的硬件设计4

3.1、单片机最小系统4

四、系统的软件设计5

4.1、主程序5

4.2、系统初始化子程序6

4.4、定时器中断子程序6

五、调试与性能分析7

5.1硬件调试7

六、设计体会7

参考文献8

附录A:

基于单片机方波发生器的程序清单9

附录B:

基于单片机方波发生器的原理图12

方波发生器设计

一、概述

单片机集成度高、功能强、可靠性高、体积小、功耗地、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。

单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、PC机外围以及网络通讯等广大领域。

单片机有两种基本结构形式:

一种是在通用微型计算机中广泛采用的,将程序存储器和数据存储器合用一个存储器空间的结构,称为普林斯顿结构。

另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,一般需要较大的程序存储器,目前的单片机以采用程序存储器和数据存储器截然分开的结构为多。

本课题讨论的方波发生器的核心是目前应用极为广泛的51系列单片机。

1.1、设计内容

本课程设计是设计一个方波发生器,频率为38KHz。

1.2、设计的基本要求

我们在此设计的方波发生器频率38KHz,显示部分可以使用ZLG7290芯片及数码管来实现。

由此即可构成一个最小单片机应用系统。

二、方波发生器设计方案

在电子技术领域中,实现方波发生器的方法有很多种,可以采用不同的原理及器件构成不同的电路,但可以实现相同的功能。

在此次设计中,利用51单片机实现方波发生。

2.1、方案介绍

微处理器模块AT89S52,频率与占空比信息显示模块,2×

4矩阵键盘模块,74LS164移位寄存器显示驱动模块。

本设计中用到定时器0,定时器0工作在定时方式下, 

决定方波的频率。

2.2、方波发生器的原理与功能

方波发生器的原理方框图如图1所示

由于系统的要求不高,比较单一的,再加上我们是通过定时器来调节频率的,而非电阻,因此实现起来就相对简化了。

仅用AT89S52及串行显示便可完成设计,达到所要求实现的功能。

方波发生器工作原理与功能:

简单的流程为:

主程序扫描输入值,将设置信息输入,处理后,输出到示波器显示器显示。

单片机的晶振为11.0592MHz,用到了定时器0进行频率的定时,定时器是工作在方式1。

根据计算定时器初值的公式:

计算出定时器0所要装入的初值。

三、系统的硬件设计

3.1、单片机最小系统

单片机各功能部件的运行都是以时钟频率为基准的,有条不紊地进行工作。

因而时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。

常用的时钟电路方式有两种:

一种是内部时钟方式,一种是外部时钟方式,这里采用的是内部时钟方式,外接晶振。

时钟电路由片外晶体、微调电容和单片机的内部电路组成。

选取频率为11.0592MHz的晶振,微调电容是瓷片电容。

89S52单片机的P0.7口作为波形输出口,若接示波器,则可通过示波器来观察波形,是一个矩形波。

此单元电路包括时钟电路、复位电路,具体电路如图2所示:

图2单片机最小系统

四、系统的软件设计

方波发生器的软件设计包括主程序、延时子程序、系统初始化程序、显示子程序、定时器中断子程序。

其中主程序用来控制整个程序的执行,它与各子程序紧密相联,共同实现方波发生器各种功能的执行。

4.1、主程序

主程序包括系统初始化及显示程序,是一个死循环系统。

其流程图如图4所示:

4.2、系统初始化子程序

在此程序中,给所有变量赋初值,有选择串行口工作方式SCON、状态标志位flag、初始频率及其定时、定时器0的工作方式等。

初始化时启动了定时器0。

4.4、定时器中断子程序

定时器中断子程序中有定时器0中断,频率定时器0中断流程图如图6所示。

定时器0遇中断执行的操作有复位,启动自身进行频率定时。

五、调试与性能分析

5.1硬件调试

硬件的测试首先是检查电路的逻辑线路是否正确,如果正确再检查原理图的线路连接是否正确,电路的布局安排是否合理等等。

软件的测试只要是检查程序的语法是否正确,数据结构安排是否妥当,时序是否正确,整体流程安排是否合理。

上面两部检查妥当后,就到了系统调试最关键的一步,软硬件的协同调试,问题往往在此才能被发现。

六、设计体会

在单片机课程设计中,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。

更重要的是,我在这一设计过程中,学会了坚持不懈,不轻易言弃。

设计过程,也好比是我们人类成长的历程,常有一些不如意,也许这就是在对我们提出了挑战,勇敢过,也战胜了,胜利的钟声也就一定会为我们而敲响。

但是,由于平时对单片机知识学习得不够扎实,理解得不够透彻、一知半解,致使在运用是不能贯通,导致在设计过程中困难重重,往往无从下手,但是通过和同组的同学一起探讨,最后还是一步一步的把所有的问题给一一解决了。

在这次设计过程中,我也对word、protel、画图板等软件有了更进一步的了解,这使我在以后的学习中更加熟练。

总之,本次单片机课程设计让我悟出了许多东西:

第一,就是对资料的搜索、整理、归类、总结、保存的能力是一个至关重要的个人能力。

如果没有这种能力,在大学学习阶段,那么我们的学习将会是一种负担;

今后我们走出校门,甚至在整个人生阶段,也将会碌禄无为;

第二,我们要学会坚持不懈,不轻易言弃,这对于我们非常的重要。

如果我们没有这种精神,一旦我们遇到一点挫折,我们也许就会被打败,以后进入社会就会没有我们的立足之地。

因此,我们要珍惜大学时光,循序渐进的培养这些能力,这样才不会被瞬息万变的时代所淘汰。

参考文献

[1]何立民.MCS51单片机应用系统设计[M].北京:

北京航空航天大学出版社,2003.

[2]徐君毅.单片微型机原理与应用[M].上海:

上海科技出版社,1995

[3]公茂法.单片机人机接口实例集[M].北京:

航空航天大学出版社,1998.

[4]沈红卫.基于单片机的智能系统设计与实现[M].北京:

电子工业出版社,2005.

[5]李广弟,朱月秀等.单片机基础[M].北京:

北京航空航天大学出版社,2003.

基于单片机方波发生器的程序清单

#include<

reg51.h>

intrins.h>

#defineucharunsignedchar

#defineuintunsignedint

sbitOutPut=P0^7;

//矩形波输出口

/*设全局变量*/

floatfosc=11059200;

//系统时钟频率

floatlength=65536;

//方式1计数长度

uintPL;

//频率

uintZKB;

//占空比

ucharTIMER0_L,TIMER0_H;

//定时器0的定时初值

/*****************************************

延时子程序

*****************************************/

voiddelay1ms(ucharn)//延时nms

{

ucharj;

while(n--)

for(j=0;

j<

122;

j++)

{;

}

}

系统初始化

voidsystem_init(void)

SCON=0x00;

PL=38000;

ZKB=50

TL0=0x66;

//初始频率38KHz定时1ms

TH0=0xfc;

TL1=0x33;

//初始占空比50定时0.5ms

TH1=0xfe;

TMOD=0x11;

//定时器0工作在方式1的定时模式

IT0=0;

//选择INT0为低电平触发方式

EX0=1;

//外部中断0允许

ET0=1;

//定时器0中断允许

ET1=1;

EA=1;

//系统中断允许

TR0=1;

//定时器0开始定时}

发送数据

voidsend(uchard)

SBUF=d;

while(!

TI);

TI=0;

定时器中断子程序

voidTimer0_PL()interrupt1//频率定时器0中断

{

TL0=TIMER0_L;

TH0=TIMER0_H;

OutPut=1;

//输出高电平

主函数

voidmain()

uintPL0=0;

system_init();

//系统初始化

while

(1)

  {send();

}}

基于单片机方波发生器的原理图

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2