欢迎来到天天文库
浏览记录
ID:35628711
大小:733.50 KB
页数:22页
时间:2019-04-03
《单片机原理及应用课程设计-基于单片机的教学用电子打铃器电路设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、科信学院课程设计说明书(2010/2011学年第二学期)课程名称:单片机原理及应用课程设计题目:基于单片机的教学用电子打铃器电路设计专业班级:电子信息工程0801学生姓名:学号:指导教师:设计周数:两周设计成绩:2011年6月23日21目录1、课程设计目的22、总体设计22.1模块设计22.2程序流程图23、硬件单元设计43.1电路设计总原理图43.2各模块电路设计43.2.1键盘扫描模块43.2.2时钟和复位模块43.2.3显示模块53.2.4响铃模块64、软件设计74.1键盘扫描程序84.2数码管显示程序104.3
2、主程序114.4响铃程序125、课程设计总结156、参考文献16211.课程设计目的通过设计学习单片机最小系统的基本设计方法,掌握单片机应用系统的开发调试过程。(1)学习常用单片机开发工具功能、特点和使用方法。(2)学会单片机控制系统程序的编制和调试方法。(3)设计单片机打铃器硬件电路,绘制出电路原理图。(4)编制并调试出键盘扫描程序和显示驱动程序。(5)掌握单片机定时器的基本用法,编制出定时中断程序。(6)要求设计具有电子时钟功能,并能显示时间值、课程节数。2.总体设计2.1模块设计教学用电子打铃器主要由80C51单
3、片机、键盘扫描模块、时钟和复位模块、打铃器模块、八段数码管显示模块等组成。运用汇编语言来控制单片机80C51来实现、动态数码显示等功能。且本设计中的80C51单片机是整个工作过程的核心,是整个设计灵魂,它控制了脉冲时序的产生,显示信号的发送控制显示LED的选择。所用到的芯片元器件:80C51单片机,3个按键,1个蜂鸣器,4个八段LED数码管80C51是一种带4K字节存储器(的低电压、高性能CMOS8位微处理器,俗称单片机。2.2程序流程图开始初始化参数设置调用显示子程序调用打铃对比程序调用键盘子程序图2.2(1)主程序
4、流图2.2(1)主程序程序流程图21图2.2(2)定时中断程序流程图213.硬件单元设计3.1电路设计总原理图图3.1总体原理图3.2各模块电路设计3.2.1键盘扫描模块利用四个按键进行校时,按键K1是调整时间选择,按键K2进行小时加1,按键K3进行分钟加1,按键K4则调整时间结束返回主程序,K1接P1.1,K2接P1.2,K3接P1.3,K4接P1.4。213.2.2时钟和复位模块图3.2.2时钟和复位模块3.2.3显示模块及芯片说明根据设计要求系统需要4个共阳LED,数码管显示电路使用80C51的动态显示功能。4个
5、LED八段(a、b、c、d、e、f、g、dp),数码管分别显示:“时”、“分”,用二极管的“点”作为时、分的间隔。该系统采用共阳极数码管,对于共阳极数码管,其公共端必须接高电平。21当打铃的时候四个数码管中前三个不显示数据,最后一个显示课程节数。图3.2.3显示模块3.2.4响铃模块打铃电路(接P3.7):当前时间与程序设定时间相同时,P3.7端输出高电平的方波,即打铃。每次响铃时间是60S。21图3.2.4响铃模块4.软件设计中断服务程序通过定时器T0(工作方式为1),实现一日的24小时,首先得初始化,正常工作,主函
6、数调用数码管显示程序显示当前时间,然后调用打铃对比函数,若当前时间与系统设定打铃时间相同是,响应打铃程序。当需要对时间校正时,可以通过按键扫描处理程序进行校时。//////////程序初始化//////////ALBEQU20H//打铃设置标志BUFEQU30H//30-33h连续四个字节存放显示器数据HOUREQU34H//存放小时变量MINEQU35H//存放分钟变量SECEQU36H//存放秒钟变量DEDAEQU37H//存放5ms计数值HHEQU38H//打铃设置小时变量MMEQU39H//打铃设置分钟变量;按
7、键输入引脚K1EQUP1.1K2EQUP1.2K3EQUP1.3K4EQUP1.4;蜂鸣器和指示灯引脚定义SPKEQUP1.521WLEDEQUP1.0//工作指示灯引脚定义ORG00HlJMPMAINORG0BHlJMPT0_SRV/////////////主程序入口///////////MAIN:CLRALB//清除闹铃标志MOVA,#80H//加载显示器初始值数据`MOVP0,AACALLBZ;ACALLBZACALLLED_BLACALLDELAY1;定时器T0的初始化ACALLINITLOOP:ACALLCO
8、NVACALLDISPLOOP2:ACALLCONVACALLLD1//查询打铃时间MOVA,MINCJNEA,#10,AGNJMPLOOP2AGN:21CJNEA,#55,LOOP3JMPLOOP2LOOP3:JBK1,M1JNBK1,$ACALLSETTIMEM1:JMPLOOPjmploopACALLDISPLD1:MOVA
此文档下载收益归作者所有