方波发生器课程设计报告

  • 格式:doc
  • 大小:2.76 MB
  • 文档页数:7

下载文档原格式

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

一、任务说明

本次设计任务为用AT89C51单片机定时/计数器0的定时功能构成一简单的方波发生器,实现周期为400us错误!未找到引用源。的方波输出。若改变定时/计数器0的初值可得到不同周期的方波输出。编写程序,画出程序流程图,并在Proteus下进行仿真,实现相应功能,并使用VSM虚拟示波器观测波形。

二、原理图绘制说明

1、AT89C51芯片

图1 单片机AT89C51

AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。它与与MCS-51 兼容。

在设计中,使用单片机AT89C51的定时器功能,根据要求使用定时器0,芯片的18、19管脚为内部时钟工作电路的输入,设为12MHz。EA管脚接高电平,片内寻址;RST管脚接地,复位无效。由P1.0口输出波形。

2、晶振时钟电路

XTAL1

XTAL2

图2 晶振时钟电路

根据题目要求,晶振X1频率设为12MHz,并通过电容C1、C2接地,时钟输入单片机AT89C51的18、19脚。

三、流程图以及说明

开始

初始化

启动计数器

N

判断TF0是否为1?

Y

将P1.0的值取反

标志位TF0清零

程序开始,首先进行初始化,即为寄存器TMOD赋值,并给计数器赋初值,然后

启动计数器。运行中判断计数溢出标志位TF0是否为1,采用查询方式。如果值是0,则继续查询;如果值是1,将P 1.0的值取反,实现电平翻转,输出方波。接下来继续查询TF0的值,并重复上述过程。

源程序:

#include

sbit P1_0=P1^0;

void main(void)

{

TMOD=0x01;

TR0=1;

for( ; ; )

{

TH0=(65336/256);

TL0=(65336%256);

do{ }while(!TF0);

P1_0=!P1_0;

TF0=0;

}

}

四、Proteus仿真说明

图3 运行结果1

将P1.0口接示波器A通道,开始运行。将CH1振幅调至2V,将Timebase旋钮调至200us每格,并适当调节Trigger旋钮,观察波形。如图3所示,可以看到,方波周期为400us,略有误差。

图4 运行结果2

改变计数初值,设周期为2ms,改变计数初值,运行后观察示波器,如图4所示周期为2ms,实现了周期的改变。

五、体会及合理化建议

通过这次课程设计,我进一步掌握了单片机的C语言编程方法,基本达到了熟

练使用C语言语句、语法,设计实现了所需功能。同时,学会了PROTEUS软件的使用方法,能够较熟练的进行仿真。

课程设计这一周时间里,通过认真研究设计课题,到图书馆查资料、确定基本设计方案、对所用电路功能进行查找、计算,我对《单片机原理及应用》这门课程有了更深一步的理解,初次接触单片机,使得我们在掌握起来有一定困难,这就要求我们平时要多学多练,将知识融会贯通、学以致用,这样才能达到学习的目的。

这次课程设计,让我看到了自己的水平和差距,也积累了很多宝贵的经验。同时也感谢老师的指导和帮助,使我能顺利完成此次设计。本次实习有机地结合了理论与实践,既考察了我们对理论知识的掌握情况,还反映出我们查阅课外资料的能力,更主要的是它激起我们创新思维,为今后的进一步学习创下良好条件,为以后的就业打下一个根基。

附录I 电路原理图

参考文献

[1] 苏家健.单片机原理及应用技术.[M]北京:高等教育出版社.2004.P104

[2] 梅丽凤.单片机原理及接口技术.[M]北京:清华大学出版社.2004 .P65

[3] 李全利.单片机原理及应用技术.[M]北京:高等教育出版社.2001.P71

[4] 杨碧石.电子技术实训教程.[M]北京:电子工业出版社.2005.P90

[5] 张义刚.单片机原理及应用.[M]哈尔滨:哈尔滨工业大学出版社.2004.P96

[6] 何立民.单片机应用系统设计.[M]北京:北京航空航天大学出版社.1990.P137