- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一、设计目的
为了进一步巩固学习的理论知识,增强学生对所学知识的实际应用能力和运用所学的知识解决实际问题的能力,开始为期两周的课程设计。通过设计使学生在巩固所学知识的基础之上具有初步的单片机系统设计与应用能力。
1、通过本设计,使学生综合运用《单片机技术原理与应用》、《DSP原理与应用》《C语言程序设计》以及《数字电路》、《模拟电路》等课程的内容,为以后从事电子产品设计、软件编程、系统控制等工作奠定一定的基础。
2、学会使用KEIL C和PROTEUS等软件,用C语言或汇编语言编写一个较完整的实用程序,并仿真运行,保证设计的正确性。
3、了解单片机接口应用开发的全过程:分析需求、设计原理图、选用元器件、布线、编程、调试、撰写报告等。
二 设计内容
单片机的P1口分别接有7个按键,分别对应输出7个音符。当某一按键按下时,发出对应的音符的声音。
三、设计要求
1、掌握原理图的画法,在PROTEUS平台上用单片机完成所选题目的原理图设计
2、在KEIL C平台上使用C语言编程实现编程,并调试通过
3、在PROTEUS平台上利用设计好的原理图和调试好的程序完成整个仿真。
4、按设计报告要求完成课程设计报告
四 方案实施所需的条件
软件条件Keil、Proteus软件2. 硬件条件
系统整体方案
利用AT89S51产生乐曲音符,再把乐谱翻译成计算机音乐语言,由单片机进行信息处理,经过信号放大,由蜂鸣器放出声音。由于音符和节拍是由计算机产生的,所以发音音符和节拍准确。实现功能如下:
按下开关K1,K2,K3,K4 K5 K6 K7发出不同声音。
4 电路原理
发出声音部分电路
音乐播放部分电路原理图如2-1图所示:
图2-1音乐播放电路原理图
图2-1音乐播放电路原理图中可以看出:从单片机T0/3.5口的定时器送出脉冲调制方波信号,经三极管NPN放大后传输至蜂鸣器输出,发出乐曲声。R17是限流电阻防止电流过大烧坏三极管及蜂鸣器。三极管是属于流控流型的器件,通过三极管可以控制流过蜂鸣器的电流达到我们想要的功率
图2-2按键电路原理图
此按键电路的K1~K4开关分别接至单片机P1.0~P1.4口,由单片机内置程序控制。当按下K1~K7中任意一个开关播放。
3、核心部分电路原理
核心部分电路原理图如2-3图所示:
图2-3核心部分原理图
图2-4三点式电容振荡电路图
这是核心部分电路中的并联晶体振荡器电路图,在这中晶体振荡器为单片提供一个稳定的准确的时钟信号,2个电容与晶体振荡器构成三点式电容振荡器电路,
五 硬件介绍
此次设计中用到了AT89S51单片机,蜂鸣器,LED,NPN三极管,晶体振荡器等。
1、AT89S51:
图2-5 AT89S51管脚图
AT89S51概述:
AT89S51是一个低功耗,高性能8位,片内含4k Bytes (In-system programmable)的可反复擦写1000次的只读程序存储器,器件采用的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash,AT89S51在众多嵌入式控制应用系统中得到广泛应用。
1、4k Bytes Flash片内程序存储器; 2、128 bytes的随机存取数据存储器();
3、32个外部双向输入/输出(I/O)口;4、2个、2层中断;
5、6个中断源;6、2个16位可编程 7、2个全双工串行通信口;
()电路;9、片内和;10、与MCS-51兼容;
11、全静态工作:0Hz-33MHz;12、三级程序存储器必威体育官网网址锁定13、可编程串行通道; 14、低功耗的闲置和掉电模式。
图2-6 蜂鸣器电路
蜂鸣器是一种一体化结构的电子讯响器,采用供电,广泛应用于、打印机、复印机、报警器、、汽车电子设备、电话机、等电子产品中作发声。 ;蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。蜂鸣器在中用字母“H”或“HA
(旧标准用“FM”、“LB”、“JD”等)表示。
1 程序流程图
主程序流程图:
主程序流程图
2 核心代码
#include reg52.h
#define uchar unsigned char
#define uint unsigned int
sbit BEEP = P3^7;
sbit K1 = P
文档评论(0)