电子**。
院系:机电工程学院生物医学工程系。
班级:生物医学工程10级本(1)班。
姓名:张挺李晨旭。
学号:100615039 100615061
时间:2012年11月11日。
指导教师:王佑湖
前言。本设计的主要内容是用stc89c52单片机为核心控制元件,设计一个电子****器。以单片机作为主控核心,与点阵、led小灯、数码管、蜂鸣器等模块组成核心主控制模块。
关键词: 点阵,数码管,led小灯,蜂鸣器,电子**。
一、设计任务
1、本课程设计的主要功能:
1)用功能键**或转换歌曲,可**预存的电子**;
2)采用点阵和数码管显示信息,在****前显示歌曲序号;
3)8个led小灯在**歌曲前依次点亮表示**歌曲倒计时。
2、设计思路和内容。
设计从单片机最小系统的出发,由与单片机外部中断io口相连接的按钮开关产生外部中断,每进入外部中断就改变数码管的显示并启动定时1,利用单片机的定时器1控制点阵及8个led小灯的显示。在显示结束后,关闭定时器1,同时由定时器0和52单片机特有的定时器2分别控制蜂鸣器产生音阶和节拍。
二、 系统硬件设计及说明。
1、系统组成及总体框图。
硬件设计的任务是根据总体设计要求,在选定stc89c52单片机的基础上,具体确定系统中所要使用的元器件,设计出系统的原理框图、电路原理图。
该设计要实现由单片机控制点阵、数码管、led小灯显示和电子**的**,因为单片机没有足够的驱动能力,这就需要相应的驱动电路。
系统结构图如图1-1所示。
图1-1 系统结构图。
2、各模块电路设计。
1)单片机最小系统的建立(复位电路和时钟振荡电路的连接,如图2-1所示。)
图2-1 单片机最小系统电路图。
2)点阵电路设计。
点阵的行与列分别有由单片机的p2与p0来控制。但在p2口和点阵的连接之间应接入驱动电路,以满足点阵的正常显示功能。点阵的驱动主要由8个pnp型三极管9012提供,利用其对电流的放大作用,驱动点阵的每行上的8个发光二级管。
具体电路如图2-2所示。
图2-2 点阵的控制及驱动电路。
3)数码管电路设计
4位数码管是共阴极的,其a,b,c,d,e,f,g和。对应和p 1口的p1.0~p1.7连接,位的选择则由p3.4~p3.7控制。具体电路如图2-3所示。
图2-3 数码管控制电路。
4)led小灯电路设计。
8个 led小灯采用共阳极方式,驱动仍然由9012提供,但三极管的基极与单片机的p3.1连接,以实现小灯的总开关控制。本设计中led的阴极也与单片机的p0口相连接,实现led小灯的控制。
具体电路如图2-4所示。
图2-4 led小灯的控制与驱动电路。
5)外部中断触发按键和蜂鸣器电路设计。
图2-5 外部中断触发按键和蜂鸣器的控制及驱动电路图。
3、 总电路(如图3-1所示)
3-1 总电路图。
4、元件清单。
三、程序流程图:
四、具体程序:
#include<>
sbit speaker=p3^2;
sbit led=p3^1;
typedef unsigned char uint8;
typedef unsigned int uint16;
uint8 i=0,j=0,k=1,m=0,l=0,y=0,z=0,timers=0;
uint16 n=0;
code uint8 tone1=
code uint8 beat1=
code uint8 tone2=
code uint8 beat2=
code uint8 tone3=
code uint8 beat3=
code uint8 a=
code uint8 b=
code uint8 c=
void load_tone1()
if(tone1[i]==0)
th0=tone1[i];
tl0=tone1[i+1];
i=i+2;
tr0=1;
void load_tone2()
if(tone2[i]==0)
th0=tone2[i];
tl0=tone2[i+1];
i=i+2;
tr0=1;
void load_tone3()
if(tone3[i]==0)
th0=tone3[i];
tl0=tone3[i+1];
i=i+2;
tr0=1;
void load_beat1()
if(beat1[j]==0)
j=0;timers=beat1[j++]
tl2=0xdc;
th2=0x0b;
cp_rl2=1;
tr2=1;
void load_beat2()
if(beat2[j]==0)
j=0;timers=beat2[j++]
tl2=0xdc;
th2=0x0b;
cp_rl2=1;
tr2=1;
void load_beat3()
if(beat3[j]==0)
j=0;timers=beat3[j++]
tl2=0xdc;
th2=0x0b;
cp_rl2=1;
tr2=1;
void tone_int()interrupt 1
tr0=0;
speaker=~speaker;
switch(z)
tr0=1;
void beat_int()interrupt 5
tf2=0;
tr2=0;
timers--;
if(timers==0)
th2=0x0b;
单片机课程设计
可变程序控制器是集微机技术 自动化技术 通讯技术于一体的通用工业控制装置。它可靠性强 性能 比高 使用方便,已在工业控制的各个领域里得到了极为广泛的应用,成为实现工业自动化的一种强有力的工具 1 plc的定义有许多种。国际电工委员会 iec 对plc的定义是 可编程控制器是一种数字运算操作的电子系统...
单片机课程设计
目录。内容提要2 关键词2引言3 一 硬件电路设计3 一 电路板原理3 二 电路元器件3 二 软件设计3 一 秒钟设计方案3 二 时钟设计方案4 结语7单片机时钟设计。内容摘要 一 在实验板上用动态扫描显示00 59秒钟,具体要求如下 一 6m晶振 二 l9 l10显示00 59十进制数并循环,间隔...
单片机课程设计
1 选题背景。1.1 家庭智能防盗报警系统设计的背景及目的。随着经济的发展,人们对防盗 防劫 防火保安设备的需求量大大增加。针对偷盗 抢劫 火灾 煤气泄漏等事故进行检测和报警的系统,其需求也越来越高。家居智能是以家为平台,兼备建筑 自动化,智能化于一体的高效 舒适 安全 便利的家居环境。自动化的家居...