生产实习设计报告
单片机简易电子琴
姓名:
专业:电子信息工程
班级:073143
学号:07314304
同组人员:万怡星
指导老师:张 斌
完成时间:2010-6-26
目
录
一.摘 要 …………………………………………………………3
二.生产实习目的…………………………………………………4
三.89C52 芯片功能简介…………………………………………4
四.系统总体设计…………………………………………………8
五.系统框图………………………………………………………8
六.系统工作原理…………………………………………………8
七.软件设计流程图………………………………………………11
八.实习体会………………………………………………………12
九.参考文献………………………………………………………12
十.评分表…………………………………………………………13
2
摘
要
本次生产实习,我们基于单片机,做了一个简易的电子琴系统。
近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检
测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个
核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,
加以完善。
21 世纪是知识经济时代。其中以电子技术的发展最为迅速,以电子产品为介质的
通讯和应用更是日新月异,不短飙升。实际型的应用技术越来越向着顶端发展,更新
周期不断缩短。在人才竞争的当今社会,选择有着实际技术型的人才已经是用人单位
首先考虑的因素。
为此,学校开展了电子课程技术的设计,目的在于提高和加强学生的实践技能,
为就业奠定基础。电子课程设计是配合电子技术基础的课程与实验教学的一个非常重
要的教学环节。它能巩固电子技术的理论知识,提高电子电路的设计水平,加强综合
分析 和解决问题的能力,进一步培养学生的实验技能和动手能力,启发学生的创新
意识和创新思维。这将对学生毕业以后从事电子方面的工作有很大的帮助。
关键词:单片机;嵌入式系统;电子琴;
3
二、生产实习目的
(1)熟悉 8051 单片机的内部结构和功能,合理使用其内部寄存器,能够完成相
关软件编程设计工作。
(2)能够对电子电路、电子元器件、印制电路板等方面的知识有进一步的认识,
独立对其进行测试与检查。
(3)为实现预期功能,能够对系统进行快速的调试,并能够对出现的功能故障
进行分析,及时修改相关软硬件。
(4)对软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到
较全面的锻炼和提高。
三、8051 芯片功能简介
1. 8051 单片机的内部组成
8051 内部有 4 KB ROM,基本组成如图 3-1 所示。
T0
T1
时钟电路
ROM
RAM
定时/计数器
CPU
并行接口
串行接口
中断系统
P0
图 1
P2
P3
P1
8051 单片机结构框图
TXD RXD
INT0
INT1
1) 中央处理器(CPU)
中央处理器是单片机的核心,完成运算和控制功能。8051 的 CPU 能处理 8 位二进
制数或代码。
2) 内部数据存储器(内部 RAM)
8051 芯片中共有 256 个 RAM 单元,但其中后 128 单元被专用寄存器占用,能作
为寄存器供用户使用的只是前 128 单元,用于存放可读写的数据。因此通常所说的内
部数据存储器就是指前 128 单元,简称内部 RAM。
3) 内部程序存储器(内部 ROM)
8051 共有 4KB 掩膜 ROM,用于存放程序、原始数据或表格,因此,称之为程序
存储器,简称内部 ROM。
4) 定时/计数器
8051 共有两个 16 位的定时/计数器,以实现定时或计数功能,并以其定时或计
4
数结果对计算机进行控制。
5) 并行 I/O 口
MCS-51 共有 4 个 8 位的 I/O 口(P0、P1、P2、P3),以实现数据的并行输入/输
出。
6) 串行口
8051 单片机有一个全双工的串行口,以实现单片机和其它设备之间的串行数据
传送。该串行口功能较强,既可作为全双工异步通信收发器使用,也可作为同步移位
器使用。
7) 中断控制系统
8051 单片机的中断功能较强,以满足控制应用的需要。8051 共有 5 个中断源,
即外中断两个,定时/计数中断两个,串行中断一个。全部中断分为高级和低级共两
个优先级别。
8) 时钟电路
8051 芯片的内部有时钟电路,但石英晶体和微调电容需外接。时钟电路为单片
机产生时钟脉冲序列。系统允许的晶振频率一般为 6 MHz 和 12 MHz。
从上述内容可以看出,MCS-51 虽然是一个单片机芯片,但作为计算机应该具有
的基本部件它都包括,因此,实际上它已是一个简单的微型计算机系统了。
2.8051 的信号引脚
8051 是标准的 40 引脚双列直插式集成电路芯片,引脚如图 3-2 所示。
图 2 80C52 引脚图
1)信号引脚介绍
(1)主电源引脚
◇ VCC:+5 V 电源
◇ VSS:地线。
(2)时钟电路引脚
◇ XTAL1 和 XTAL2:外接晶体引线端。当使用芯片内部时钟时,此二引线端用于
外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。
(3)控制信号引脚
5
◇ RST/VPD:复位信号。当输入的复位信号延续两个机器周期以上的高电平时即
为有效,用以完成单片机的复位初始化操作;当单片机掉电时,此引脚上可接备用电
源,由 VPD 向片内 RAM 提供备用电源,一保持片内 RAM 中的数据不丢失。
◇ ALE/PROG:地址锁存控制信号。在系统扩展时,ALE 用于控制把 P0 口输出的
低 8 位地址锁存起来,以实现低位地址和数据的隔离。此外,由于 ALE 是以晶振 1/6
的固定频率输出的正脉冲,因此,可作为外部时钟或外部定时脉冲使用。
对于 EPROM 型单片机,在 EPRAM 编程期间,此引脚接收编程脉冲。
◇ PSEN:片外程序存储器读选通信号输出端。
◇ EA/VPP:访问程序存储控制信号。当 EA 信号为低电平时,对 ROM 的读操作限
定在外部程序存储器;当 EA 信号为高电平时,对 ROM 的读操作是从内部程序存储器
开始,并可延至外部程序存储器。
对于 EPROM 型单片机,在 EPRAM 编程期间,此引脚接上加 21V EPROM 编程电源 VPP。
(4)I/O 引脚
P0.0 ~ P0.7: P0 口 8 位双向口线。
P1.0 ~ P1.7 :P1 口 8 位双向口线。
P2.0 ~ P2.7 :P2 口 8 位双向口线。
P3.0 ~ P3.7 :P3 口 8 位双向口线。
2) P3 口线的第二功能。P3 的 8 条口线都定义有第二功能,详见表 3-1。
表 1-1 P3 口各引脚与第二功能表
引脚
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7
第二功能
RXD
TXD
INT0
INT1
T0
T1
WR
RD
信号名称
串行数据接收
串行数据发送
外部中断0申请
外部中断1申请
定时/计数器 0 的外部输入
定时/计数器1的外部输入
外部RAM写选通
外部RAM读选通
以上把 8051 单片机的全部信号引脚分别以第一功能和第二功能的形式列出。对
于各种型号的芯片,其引脚的第一功能信号是相同的,所不同的只在引脚的第二功能
信号。对于 9、30 和 31 三个引脚,由于第一功能信号与第二功能信号是单片机在不
同工作方式下的信号,因此不会发生使用上的矛盾。但是 P3 口的情况却有所不同,
它的第二功能信号都是单片机的重要控制信号。因此,在实际使用时,都是先按需要
选用第二功能信号,剩下的才以第一功能的身份作数据位的输入/输出使用。
3. 并行输入/输出口电路结构
单片机芯片内还有一项主要内容就是并行 I/O 口。8051 共有 4 个 8 位的并行 I/O
口,分别记作 P0、P1、P2、P3。每个口都包含一个锁存器、一个输出驱动器和输入
缓冲器。实际上,它们已被归入专用寄存器之列,并且具有字节寻址和位寻址功能。
在访问片外扩展存储器时,低 8 位地址和数据由 P0 口分时传送,高 8 位地址由 P2
口传送。在无片外扩展存储器的系统中,这 4 个口的每一位均可作为双向的 I/O 端口
使用。
6
8051 单片机的 4 个 I/O 口都是 8 位双向口,这些口在结构和特性上是基本相同
的,但又各具特点。
4. 时钟电路
(1)内部方式时钟电路
在 8051 芯片内部有一个高增益反相放大器,其输入端为芯片引脚 XTAL1,其输出
端为引脚 XTAL2。而在芯片的外部,XTAL1 和 XTAL2 之间跨接晶体振荡器和微调电容,
从而构成一个稳定的自激振荡器,这就是单片机的时钟电路,如图 3-3 所示。
时钟电路产生的振荡脉冲经过触发器进行二分频之后,才成为单片机的时钟脉冲
信号。请读者特别注意时钟脉冲与振荡脉冲之间的二分频关系,否则会造成概念上的
错误。一般地,电容 C1 和 C2 取 30pF 左右,晶体的振荡频率范围是 1.2~12MHz。晶
体振荡频率高,则系统的时钟频率也高,单片机运行速度也就快。8051 在通常应用
情况下,使用振荡频率为 6MHz 或 12MHz。
XTAL1
C1
晶振
C2
XTAL2
8051
1
至内部时钟电路
图 3 时钟振荡电路
(2)外部方式时钟电路
在由多片单片机组成的系统中,为了各单片机之间时钟信号的同步,应当引入惟
一的公用外部脉冲信号作为各单片机的振荡脉冲。其连接如图 3-4 所示。
TTL
1
外部时
钟信号
VCC
8051
XTAL2
XTAL1
VSS
图 4 外部时钟源接法
(3) 时序
时序是用定时单位来说明的。8051 的时序定时单位共有 4 个,从小到大依次是:
节拍、状态、机器周期和指令周期。它们之间的关系如下:
(1)一个振荡脉冲的周期为节拍;
(2)一个状态就包含两个节拍;
(3)一个机器周期的宽度为 6 个状态;
(4)一条指令周期由若干个机器周期组成。
5. 单片机的复位电路
单片机复位是使 CPU 和系统中的其他功能部件都处在一个确定的初始状态,并从
这个状态开始工作,复位后 PC=0000H,使单片机从第一个单元取指令。单片机复位
的条件是:必须使 RST/VPD 或 RST 引脚加上持续两个机器周期(即 24 个振荡周期)
的高电平。若时钟频率为 12 MHz,每机器周期为 1 μs,则只需 2μs 以上时间的高
7
电平,在 RST 引脚出现高电平后的第二个机器周期执行复位。
四、系统总体设计
1.系统框图
电子琴系统框图如下图所示。
键
盘
放大器
扬
声
器
振荡器
分频器
电源
图 5 系统总框图
2.系统工作原理
(1)要产生音频脉冲,只要算出某一音频的周期(1/音频),然后将此周期除以 2,
即为半周期的时间,利用定时器计时这个半周期时间,每当计时到后就将输出脉冲的
I/O 反相,然后重复计时此半周期时间再对 I/O 口反相,就可在 I/O 脚上得到此频率的
脉冲
(2)利用 8051 的内部定时器使其工作在计数器模式 MODE1 下,改变记数值 TH0 及
TL0 以产生不同频率的方法。例如频率为 523HZ,其周期 T=1/523=1912 微秒,因此只要
令计数器定时 956/1=956 在每记数 9 次时将 I/O 口反相,就可得到中音 D0(523HZ)。
记数脉冲值与频率的关系公式如下:
N=Fi/2/Fr
N:记数值
Fi:内部计时一次为 1 微秒.故其频率为 1MHZ
Fr;要产生的频率
(3):起记数值的求法如下:
T=65536-N=65536-Fi/2/Fr
例如:设 K=65536,F=1000000=Fi=1MHZ,求低音 D0(523HZ),高音的 D0(1046HZ)
8