基于单片机的方波信号发生器课程大学本科毕业论文.doc

上传人:re****.1 文档编号:559637414 上传时间:2023-01-29 格式:DOC 页数:20 大小:522.50KB
返回 下载 相关 举报
基于单片机的方波信号发生器课程大学本科毕业论文.doc_第1页
第1页 / 共20页
基于单片机的方波信号发生器课程大学本科毕业论文.doc_第2页
第2页 / 共20页
基于单片机的方波信号发生器课程大学本科毕业论文.doc_第3页
第3页 / 共20页
基于单片机的方波信号发生器课程大学本科毕业论文.doc_第4页
第4页 / 共20页
基于单片机的方波信号发生器课程大学本科毕业论文.doc_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《基于单片机的方波信号发生器课程大学本科毕业论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的方波信号发生器课程大学本科毕业论文.doc(20页珍藏版)》请在金锄头文库上搜索。

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

2、订成册,报告书内容(按顺序)(1)报告书封面(2)课程设计任务书(3)系统设计方案的提出、分析(4)系统中典型电路的分析(5)系统软件结构框图(6)系统电路原理图(7)源程序(8)课设字数不少于2000字成绩评语摘 要本实验是基于AT89C51单片机单片机所设计的,可以实现四种频率不同的方波信号的发生。本实验方波输出在89C51的P1.0口,分为四档,按下S1时输出1HZ,按下S2时输出10HZ,按下S3时输出1KHZ,按下S4时输出10KHZ的方波。关键词:51单片机;方波;四档目录第一章 前言.5第二章 系统总体设计2.1系统介绍.52.2 硬件简介.52.3 软件简介.52.4 系统结构

3、框图.5第三章 硬件电路3.1硬件设计思想.63.2开关信号采集.63.3复位电路及晶振电路.83.4方波输出.8第四章 软件系统4.1软件系统概述.84.2各部分程序.10第五章 总结.15附录.164第一章 前言 本文是以MCS-51单片机系统为基础的,通过四个单刀单掷开关控制单片机的P1.0口输出四种不同频率的方波信号。即分为四个档,闭合开关S1时输出1HZ方波信号,闭合开关S2时输出10HZ方波信号,闭合开关S3时输出1KHZ方波信号,闭合开关S3时输出10KHZ方波信号,并且每组方波信号的误差不大于1%。第二章 系统总体设计2.1系统介绍根据开关按键的不同,在51单片机的P1.0输出

4、不同频率的方波,在无按键按下的时候,保持当前电平输出。2.2 硬件简介硬件核心为51单片机以及周围电路,主要有51的复位电路,晶振电路,在加上四个单刀单掷开关。2.3 软件简介本实验软件编程使用的51系列的汇编语言。2.4 系统结构框图开关信号采集系统晶振电路复位电路方波信号输出51单片机5第三章 硬件电路3.1硬件设计思想 由于只要求四种不同频率方波输出档位,只需要四个开关的状态信息的采集,考虑到系统结构的成本,采用四个开关直接51单片机的P2.0P2.3口相连的硬件设计,这样的系统结构简单,稳定,易于实现。本系统总共有开关信号采集,复位电路,晶振单路,方波输出模块。其中单片机VCC接+5V

5、电源3.2开关信号采集 采用四个单刀单掷开关和51单片机直接相连 3.3复位电路及晶振电路 C1:30pF的无极性电容 C2:30pF的无极性电容 C3:1uF的电解电容 R1:10K的电阻 3.4方波输出第四章 软件系统4.1软件系统概述4.1.1如何输出方波 由于只是要求频率可调,不要求电平,并且在P1.0口输出,可以用P1.0口的高地电平输出方波的上下限电平。4.1.2如何采集开关状态 因为只要求四档不同频率的方波,只有四个开关状态要采集,所以可以直接把四个开关连接到P2.0到P2.3口上,可以采用对四个口的遍历的方法查询状态。4.1.3程序总述 主程序先对中断定时器T0进行相关设置,并

6、对开关第一次信息采集,根据开关信息的不同状态对定时器T0进行赋值,然后开启定时,等待中断。因为题目要求频率最低为1Hz,定时器T0选择方式一,TMOD控制字设置为#01H。S1按下时:要求频率1Hz,周期为1s,定时器要求500ms,采用方式一,最大定时时间为:=1us=65.536ms, 这里采用定时50ms,溢出10次改变一次电平重 装值的计算公式为:TC=-50ms/1us=3CB0H S2按下时:要求频率10Hz,周期50ms,采用方式一 装值的计算公式为:TC=-50ms/1us=3CB0H S3按下时:要求频率1KHz,周期500us,采用方式一 装值的计算公式为:TC=-500u

7、s/1u=FEFBH S3按下时:要求频率10KHz,周期50us,采用方式一 装值的计算公式为:TC=-50us/1us=FFCDH主程序设置T0根据开关状态的不同,设置相应的T0初值,等待中断再次判断开关状态进入相应开关状态的子程序程序流程图4.2各部分程序4.2.1主程序 主要进行T0中断设置,对开关状态的初次响应,并根据不同的开关状态进行不同的赋值给T0,然后等待中断。 ORG 0000H LJMP 0A00H ORG 0A00H SETB EA SETB ET0 SETB PT0 MOV TMOD,#01H LOOP:MOV P2,#0FFH CLR TR0 JNB P2.0,SS1

8、 JNB P2.1,SS2 JNB P2.2,SS3 JNB P2.3,SS4 SJMP LOOP SS1:MOV TH0,#3CH MOV TL0,#0B0H SETB TR0 MOV R0,#10 SJMP $ SS2:MOV TH0,#3CH MOV TL0,#0B0H SETB TR0 SJMP $ SS3:MOV TH0,#0FEH MOV TL0,#0FBH SETB TR0 SJMP $ SS4:MOV TH0,#0FFH MOV TL0,#0CDH SETB TR0 SJMP $ 开始等待中断设置T0循环扫描开关状态根据开关状态的不同,进行不同的装初值给T0 主程序流程图4.2

9、.2中断程序在T0溢出是进入本程序,本程序初始地址为000BH,本程序开始就进行了一次扫描,来确定是哪一个开关按下,然后跳转到相应的程序。 ORG 000BH LJMP NEXT ORG 0100HNEXT:JNB P2.0,S1 JNB P2.1,S2 JNB P2.2,S3 JNB P2.3,S4 SJMP NEXT S1:DJNZ R0,NS1 CPL P1.0 MOV R0,#10 NS1:MOV TH0,#3CH MOV TL0,#0B0H RETI S2:CPL P1.0 MOV TH0,#3CH MOV TL0,#0B0H RETI S3:CPL P1.0 MOV TH0,#0FEH

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号