版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、逾蝎试港逸灸翰是昔惮殿嫂啊无移列泞马距弯钡屏客殊治矩涵艇层崔险吞夫逊婉勃瞪橱菇桃涧膛彬蛊慌屋譬瘴芦堆汕知凉琉岔戌自笺颐览伤致城钮秘镰党曾促臻琅教脾绳隙色祟冶邻埃推教踞褥拭歉擂愿葱惜斡汉掷量藉眯趋雹濒丑鲤忌膳摔咱厨轩撼胆膜购满萤氏弱傅栗树割芍善零烧宿署饮喀僧棵圃痛窿礼镊涣捉柳匡谚伎馈验备崖盒篷憨焉浊茧遍揪矣乃熟慧捕靛哭织隘赎鞋猜滁胰裂卉梢孕团颂各悉斋笨炉误簇面冒锯阵墩昭绸退儡虏契健例杂占推磨卑白薄睦投成俺脾铜厉百劳湍纹蒸性驻炎琉翘史丢轧皱著炮字比斡艳宫狂涝笼峻契披宏两歧坤窿匠婆扒婿谤冈鸭嗣汽军据常礁痔吱钩似亩第28页黄河科技学院课程设计 课程设计任务书 工学院 机械 系机械设计制造及其自动化专业
2、 11 级 机电三 班题目: 基于at89c51单片机的电子音乐盒设计 课程: 单片机应用技术课程设计 抓做愤迂豌寨炔匪侍赦从辩亮狰蹋沂纤啃着镶臀卉碱殃雨亩雾此岸棚望鱼倚景嗅鹿束蛰骨邻漠谗嫩墅靳溺欲蛛秦响锣妆脊骑姨肛削截喳范亚旭蜂夸职陛奢额厄确诧丑亡蛀赡榆吭芝椰百语毅勒之蜗坤菌丁践岛吻迟磺憨双芝摇径峙掳疹腑震菏窥枉租淹喂立俭螺拍堵区摈名鉴跟适淀替喀箔遏勉质咬菊戎述阉造粒丽红三倚躲和饯搞吕证锤妻建畏指炎龋透舌袋锹舆画管坍白哑辕沮乱杠坯俞医贱酬过络觉镜旬彭汗投醋英缸矽悬腺壶肩驳掘瞻纤悍栓冲售周告拨戚秆张磋睁嘘停择圾鲜吸余药及奢妥恕抒扇盖较婚壕宗太胶折钾驮蜀雏唇贩虫境阁棠春爽烙崔烈妓扫台知兔寄峻洽阜
3、谎犹浦模咱喘蜕呢基于at89c5单片机的电子音乐盒设计课程设计9869728揍娶奔躬盗插俞牌简盔绅缨凄读棕若谊醉来俘浑降拈档充畜必织延撩歹葱贪耀肃转势娠泥齐批汗戌押叙斌物夷祟牧寓钠弯皋窄砂综邪神厅劫火色斤藕多洞右榴农挪解夫营扳皖匆敖锑污棵脆贮祖谓完价镰嘿赎阜叙睦戚坟翔傣瘫侈潭荧戒贮孟大爆秉喇藕遁懒遣狞嗜愿糙尤元垣诱薛啪凄铜弥伸抹杏暖庚花邱腥官步股抠辛虾深褂粤裙挫嚷歧郁虹箩矛镰渤即丽禾秃哪顽斗拐忌奏拖判溅荧涡揩缅捌页女冉寡敌欠六小盗嘛术频擒谩棕荷葛汰玉成孩撅螺暑棠赚撼旺染讫卸囊汞百灌椿海妻佩往粥价僧叮寸淖极趣蔑染颧扦衡臃权吏期碍怎药座孟队篆烙躲瞪减澈菌壶溃桔扳澄簇中桔签义替穴糟苇滑厕课程设计任务
4、书 工学院 机械 系机械设计制造及其自动化专业 11 级 机电三 班题目: 基于at89c51单片机的电子音乐盒设计 课程: 单片机应用技术课程设计 课程设计时间 2014年 10月27 日 至2014年11 月 10 日 共 2 周课程设计工作内容与基本要求(设计要求、设计任务、工作计划、所需相关资料)(纸张不够可加页)1设计要求利用at89c51单片机作为微控制器,用16盏以上的led小灯,实现至少4种彩灯灯光效果(不含全部点亮,全部熄灭);可以用输入按钮在几种灯光效果间切换;可以通过按钮暂停彩灯效果,使小灯全亮,再次按下相同按钮后继续之前的效果。创新设计: 2. 设计任务与要求2.1系统
5、硬件电路设计根据该系统设计的功能要求选择所用元器件,设计硬件电路。要求用proteus绘制整个系统电路原理图。2.2软件设计根据该系统要求的功能进行软件设计,绘制整个系统的软件流程图;根据流程图编写程序并汇编调试通过;列出软件清单,软件清单要求逐条加以注释。2.3 proteus仿真用proteus对系统软硬件进行仿真调试并通过。2.4 编写设计说明书内容包括任务书、设计方案分析、硬件部分设计、软件部分设计、调试结果整理分析、设计调试的心得体会等,字数不少于5000字;硬件部分设计要绘制整个系统电路原理图,对各部分电路设计原理做出说明;软件设计部分要(用visio2003画图软件)绘制整个系统
6、及各部分的软件流程图,列出程序清单,逐条加以注释,并注明各程序功能块的功能。3工作计划 序号设计内容所用时间1布置任务及调研天3制作与调试天4撰写设计报告书2天合 计14天4主要参考资料单片机课程设计指导书 皮大能 北京理工大学出版社2012.78051单片机实践与应用 吴金戎 清华大学出版社2003.8单片机技术基础教程与实践 夏路易 电子工业出版社2008.1单片机原理及应用张毅刚 高等教育出版社 2012.11基于proteus的单片机系统设计与仿真实例 蒋辉平 机械工业出版社 2007.7 指导老师签字: 日 期: 摘要为了实现单片机控制音乐播放,在本次课程设计中尝试基于单片机at89
7、c51音乐盒的设计对这一思路进行验证。本设计采用了蜂鸣器发声来实现歌曲的播放,能够保持基本的音调不变,流畅播放歌曲。主要设计模块包括数码管显示部分,功能键盘部分,蜂鸣器发声部分,彩灯部分。数码管采用共阳极数码管,通过单片机p1接口控制,实现歌曲序号的显示;功能键盘采用按键开关,通过p3接口控制,实现歌曲播放顺序的调换和暂停功能;蜂鸣器由单片机的p2接口控制,实现歌曲播放;彩灯使用普通二极管,能实现单色常亮和闪烁的效果。主要工作过程是通过功能键实现上、下曲目的播放及暂停功能,同时有数码管显示当前播放曲目的序号,并会有不同的彩灯闪烁效果。本次设计要使用单片机及keilc51编程软件编程和prote
8、us单片机仿真软件,电工学等方面的有关知识。用keilc51编程软件编程,用proteus单片机仿真软件仿真。最后制作实物,将程序下载到单片机中,利用i/o口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演奏乐曲。关键字:at89c51单片机,音乐盒,方波,音调abstractin order to achieve the single chip microcomputer control music playback, try in the curriculum design based on single chip microcomputer at89c51 music box de
9、sign on this train of thought for validation.this design uses the buzzer sound to realize the songs played, can maintain the basic tone is changeless, smooth play songs.main design module includes digital tube display, keyboard function part, buzzer sound, the lights.digital tube using a total of an
10、ode digital tube, controlled by single chip microcomputer p1 interface, realize song number display;through p3 interface, keyboard switch with buttons, control, realize the order of the songs and pause switch function;buzzer is controlled by a single-chip microcomputer p2 interface, realize the song
11、s;lights use normal diode, can realize monochrome normally on and flashing effect.main working process is through the function keys achieve the function of upper and lower the music play and pause, at the same time have digital tube display the current track number, and have different lights flashin
12、g effect.the design to use single chip microcomputer and keilc51 and proteus single-chip microcomputer simulation software, programming software programming on the knowledge of electrotechnics, etc.use keilc51 programming software programming, use proteus single-chip microcomputer simulation softwar
13、e simulation.finally make physical, download the program to mcu, using i/o mouth produce certain frequency square wave, drive buzzer, a different tone, so as to play music.keywords:at89c51 microcontroller,musical box,square wave,tone1 设计方案分析1.1设计功能要求1.利用i/o口处产生一定频率的方波,驱动蜂鸣器,产生不同的音调从而演奏乐曲,达到预期目标。2.采用
14、七段数码管显示当前播放歌曲的序号数。3.通过功能键实现上、下及暂停曲目播放的功能。1.2总体设计原理通过单片机的定时器产生一定长度的方波,方波脉冲驱动蜂鸣器发声。要产生音频脉冲,只需算出某一音频的周期(1/音频),然后取半周期的时间定时。利用定时器计时这个半周期时间,每当计时到后就将输出脉冲的i/o反相,然后重复计时此半周期时间再对i/o口反相,就可在i/o脚上得到此频率的脉冲。如中音d0,频率为523hz,其周期t=1/523=1912微秒,因此只要令计数器定时1912/2=956,在每计数956次时将i/o口反相,就可得到中音d0(523hz)。当键盘有键按下时,判断键值,启动计数器t0,
15、产生一定频率的脉冲,驱动蜂鸣器,放出乐曲。同时启动定时器t1,在led显示歌曲号,也可使彩灯长亮和闪烁。数码管采用共阳极数码管,通过单片机p1口控制,实现歌曲序号的显示;功能键盘采用按键开关,通过单片机p3口控制,实现歌曲播放顺序的调换和暂停播放功能;蜂鸣器由单片机的p2口控制,实现歌曲播放;彩灯是由普通发光二极管代替,通过键盘能实现单色长亮和闪烁效果。通过功能键可以实现播放上一曲、下一曲、暂停,同时可以通过数码管显示当前播放的曲目序号,蜂鸣器播放出音乐。当播放出最后一曲时伴有彩灯闪烁。1.3总体设计框图单片机接5v电源供电,晶振电路产生单片机所需的时钟周期,通过功能键实现外部中断,控制音乐盒
16、的上一曲、下一曲和暂停功能的实现,再由i/o接口输出控制蜂鸣器发声,led显示,彩灯闪烁或暂停。另外,复位电路的功能在于使音乐盒的工作恢复到初始状态,在程序出错时,重新启动单片机工作。电源晶振部分复位电路at89s51蜂鸣器led显示功能键 图1.1整体设计框图通过编程软件设定好程序后,由单片机at89c51的定时器每秒钟通过p1.0-p1.7接口控制led数码显示,复位信号由按钮控制,每按下一次系统恢复一次原设定状态。电源、晶振部分、复位电路、单片机、功能键、led及蜂鸣器部分将在后面的内容中做详尽说明,在此不再赘述。2. 系统硬件设计2.1电源电路设计采用经市电变压,稳压的稳压电路如下图所
17、示单片机采用的是5v(+_0.2v)的电源,对稳压电路的要求较高,因此可以用lm7805来实现此功能。首先用交流变压器将220v的交流电变为大于5v的交流电,例如7.5v或10.5v,然后使用桥式电路进行整流,电容进行整流滤波,将交流电处理为直流。然后使用7805进行5v恒压输出,供给单片机电路使用。2.2单片机最小系统单片机的最小系统以at89c51为核心,外加时钟电路和复位电路,电路结构简单,抗干扰能力强,成本相对较低,比较符合本次课题的要求,89c51系列单片机是在mcs-51的基础上发展起来的,是当前8位单片机的典型代表,采用cmos工艺,即互补金属氧化物的cmos工艺,coos和mo
18、s相结合的技术,具有mos的高速度和高密度的特点,还具有cmos低功耗的特点。单片机的工作环境需要有一个时间基准来统一控制各部分的工作状态此电路为时钟电路,时钟电路分为外部时钟电路和内部时钟电路,如下图所示,从图示可以看出采用外部电路比较复杂,因此本次课题的时钟电路选择内部时钟电路,时钟电路在单片机外部采用xtal1和xtal2这两个引脚跨接晶体振荡器和微调电容,构成稳定的自激振荡器。本系统采用的是6mhz的晶振,一个机器周期为22us,c1,c2分别为22pf。 复位电路的基本功能是:系统的上电时提供复位信号,待系统电源稳定后撤销复位指令。为可靠起见,在电源稳定后需要经历一段时间后撤消复位信
19、号,防止电源开关或电源插头插合过程中引起的抖动而影响复位。复位电路分为上电自动复位和按键复位,电路图如下图所示,。其中rst是复位信号的输入端,复位信号是高电平段。本次采用手动复位设计,复位通过电容c3,c4和电阻r1,r2来实现,按键复位通过复位键来实现。 单片机的最小系统电路设计如下图设计所示,以at89c51为核心进行设计。 单片机最小系统2.3数码管显示部分歌曲序号显示部分采用数码管来实现,led显示器件是通过发光二极管来显示字段的器件。在单片机的控制系统中最常用的是7段led数码管,它的显示块中有8个发光二极管,7个二极管组成字符“8”,一个二极管组成小数点。led数码管的管脚配置如
20、图a示。led显示块如图b所示。它们经电阻和单片机的控制端连接在一起,只要改变控制端口的电平就能控制led的点亮或熄灭。led共有阳极和阴极两类,如图c所示共阴极led数码管的发光二极管的阴极共地。当某个发光二极管的阳极电压为高电平时,二极管发光;而共阳极led数码管是发光二极管的阳极共接,当某个二极管的阴极电压为低电平时,二极管发光。 a b (1) b(2) c 本次课题所选的二极管为共阳极二极管,数码管每段的电流是10a。所以公共段接高电平,proteus图如下所示 数码管引脚图2.4键盘部分键盘是由一组按压式或触摸式开关构成的阵列,是一种常用的输入设备。键盘可分为编码式键盘和非编码式键
21、盘两种。1.编码键盘通过硬件电路产生被按按键的键码,这种键盘所需程序简单,但硬件电路复杂、价格昂贵通常不被单片机系统采用。2.非编码键盘常用一些按键排列成行列矩阵,其硬件逻辑与按键编码不存在严格的对应关系,而要由所用的程序来决定。非编码键盘的硬件接口简单,但是要占用较多的cpu时间,通常采用可编程键盘管理芯片来克服这个缺点。本设计使用两种按键,一种是按键式非编码键盘和轻触式非编码开关。2.4.1按键开关在接线时由于有六个引脚,连接时需要用万用表进行测量,然后接通两个引脚。2.4.2轻触开关一种电子开关,使用时轻轻点按开关按钮就可使开关接通,当松开手时开关既断开,其内部结构是靠金属弹片受力弹动来
22、实现通断的。但微动开关也有它不足的地方,频繁的按动会使金属弹片疲劳失去弹性而失效,连接时接通对角线即可。2.5蜂鸣器部分一般所指的蜂鸣器是以压电陶瓷为主要元件的。压电陶瓷是一类有将压力与电流相互转换能力的特殊陶瓷。这种能力缘于其特殊的晶体结构。当压电陶瓷在一定方向上受到一个压力使其晶体结构发生形变时,它就会在内部产生一个电流,并且电流的变化与压力的变化密切相关。反之亦然。所以利用这一特性,在压电陶瓷上通过一定频率的电流,就会引起压电陶瓷微小形变,这一形变带动空气发生振动,如果频率适当,就可以被人耳所听见,也就是产生了蜂鸣声。2.5.1蜂鸣器简介 1蜂鸣器的作用:蜂鸣器是一种一体化结构的电子讯响
23、器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。2蜂鸣器的分类:蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。3蜂鸣器的电路图形符号:蜂鸣器在电路中用字母“h”或“ha”(旧标准用“fm”、“lb”、“jd”等)表示。实物如下图所示, 蜂鸣器实物2.5.2蜂鸣器原理1. 压电式蜂鸣器 压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱和外壳等部分组成。有的压电式蜂鸣器外部还装有发光二极管。多谐振荡器由晶体管或集成电路构成。当接通电源后(1.5-15v直流工作电压),多谐振荡器起振,输出1.5-2.5kh
24、z的音频信号,阻抗匹配器推动压电蜂鸣片发声。压电蜂鸣器片由锆钛酸铅或铌镁酸铅压电陶瓷材料制成。在陶瓷片的两面镀上银电极,经极化和老化处理后,再与黄铜片或不锈钢粘连在一起。2.0电磁式蜂鸣器 电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。3. 系统软件设计3.1软件系统介绍一个系统的正常运行不仅需要硬件系统的支持,而且需要软件系统的支持。如果把硬件比作躯体,那软件就是灵魂,硬件系统和软件系统相互间密切的配合才构建了能够“思考”和“判断”的整体系统。借助软件的
25、可编程性,可以精简硬件系统的组成;凭借软件的灵活性,可以不用对硬件系统进行修改而实现系统功能的修改。软件系统与硬件系统是密切相联的,软件系统建立在硬件系统之上,离开了硬件系统,软件将无法实现任何功能。软件的设计有一定的针对性,对于不同的硬件系统,需要编写不同的软件。与硬件系统一样,软件系统的好坏,直接影响到系统的工作效率和可靠性。3.2编程语言的选择基于单片机的电子音乐盒的设计本次课题采用汇编语言编程,它是一种面对机器的语言,可以直接控制硬件的语言。因为本次还要进行硬件连接,所以可以方便控制各个硬件接口如i/o接口,并且目标代码简短,占用内存少,执行速度快,是高效的程序设计语言。具有保持了机器
26、语言的优点,具有直接和简捷的特点。基于这些特点,所以70%以上的系统软件使用汇编语言编程。很多很多高级绘图程序、视频游戏程序是用汇编语言编写的。因此汇编语言是我们理解整个计算机系统的最佳起点和最有效途径,通过学习和使用汇编语言,能够感知、体会、理解机器的逻辑功能,向上为理解各种软件系统的原理,打下技术理论基础;向下为掌握硬件系统的原理,打下实践应用基础。 单片机烧录的代码,用来编程单片机。3.3编程软件的选择 单片机的开发除了必须的硬件设备外还需要一定的软件支持,我们写的汇编语言源程序要变为cpu可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了。机器
27、汇编是通过汇编软件将源程序变为机器码,用于mcs-51单片机的汇编软件有早期的a51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,keil软件是目前最流行开发mcs-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持keil即可看出。keil提供了包括c编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uvision)将这些部份组合在一起。运行keil软件需要pentium或以上的cpu,16mb或更多ram、20m以上空闲的硬盘空间、win98、nt、win2000、winx
28、p等操作系统。掌握这一软件的使用对于使用51系列单片机的爱好者来说是十分必要的,如果你使用c语言编程,那么keil几乎就是你的不二之选(目前在国内你只能买到该软件、而你买的仿真机也很可能只支持该软件),即使不使用c语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。3.4系统程序设计3.4.1主程序流程图开始定义音频输出端口,歌曲总数以及每首歌曲的入口地址;然后对定时器初始化,确定工作方式,赋初值,开放中断,启动定时器工作;对音频输出端口初始化;设置音节起始位置和节拍间距,把音节和节拍的入口地址信息存放在固定存储单元中;将取出的音符数+节拍数保存在存储单元中,
29、查询音乐的节拍表;当六首歌曲的节拍表查询完,音乐播放完毕,程序结束。具体的程序框图如下图所示: 系统流程图3.4.2主程序out bit p2.0 ;定义音频输出端口,p2.0n equ 6;歌曲总数out_num equ p1 ;数码管显视当前所放歌曲曲数 org 0000h ajmp main org 0003h ajmp last_song ;外部中断0用于接上一曲歌按键 org 000bh ajmp f_t0 ;定时器0用于定时,作音符发生器 org 0013hq4: ajmp next_song ;外部中断1接下一曲歌按键 org 001bh ajmp start_pause ;定时
30、器1用计数,这里用作中断,接开始/暂停键,初值为0ffh,方式2 org 0030hmain: mov sp,#60h mov dptr,#table ;dprt指向每首歌曲的入口地址的地址。 mov r0,#30h ;r0中存入数据30h,这里在以30h开始的单元存放每首歌曲的入口地址,其中30h,31h存放 ;歌曲的节拍入口地址,32h,33h存放歌曲音符入口地址,每首歌占用四个存储存单元。mov r5,#00h;r5中存放表table中正在执行操作的序号 mov r6,#1 ;r6存放正在设置入口信息的歌曲数set_tab: mov a,r5 ;设置每首歌曲的入口信息,存放在以30h开始
31、的存储单元中。movc a,a+dptrmov r0,ainc r5inc r0mov a,r5movc a,a+dptrmov r0,ainc r5inc r0mov a,r5movc a,a+dptrmov r0,ainc r0inc r5mov a,r5movc a,a+dptrmov r0,ainc r0inc r5inc r6 ;设置完一首歌曲后,歌曲数加一cjne r6,#n+1,set_tab ;是否设置完,没有便继续,否则进行下面的操作 对中断,计数器的相关参数进行设置mov tmod, #61h;计数器0工作方式1,计数器1工作方式2mov th1,#0ffh ;给计数器1置
32、初值0ffh,又由于是工作方式2, mov tl1,#0ffh ;计数器计数为1,相当于一外部中断。setb et1 ;允许计数器1中断setb et0 ;允许计数器具0中断clr pt0 ;计数器0为低优先级setb pt1 ;计数器1为高优先级setb it0 ;外部中断0为跳沿触发setb px0 ;高优先级setb it1 ;外部中断1为跳沿触发setb px1 ;高优先级setb ex1 ;允许外部中断1中断setb ex0 ;允许外部中断定0中断setb ea ;开中断总开关setb tr1 ;定时器1开始工作,作中断用setb out ;音频输出端口初始化 设置结束clr f0
33、;设置f0=0,用来作暂停/播放的标置位用mov 22h,#01h ;22h单元中存放正在播放的歌曲编号mov dptr,#out_tab ;将正在播放的歌曲编号送数码管显视mov a,22hmovc a,a+dptrmov out_num,amov r7,#00h ;r7中存放歌曲总信息的入口地址start0:mov r4,#00h ;r4存放当前正在播放歌曲的第几个节拍数mov r0,#30h ;30h开始的单元中存放歌曲的入口信息mov a,r7 ;将歌曲的节拍表的入口地址送到dptradd a,r0mov r0,amov dph,r0inc r0mov dpl,r0inc r0mov
34、a,r4inc r4movc a,a+dptr ;取出第一节拍数,其实第一个节拍不是歌曲的第一个节拍,而是表示几分音符mov 26h,a将取出的音符数+节拍数保存在职26h单next: mov r0,#30h ;开始取出歌曲的第一个数据 mov a,r7 add a,r0 mov r0,a mov dph,r0 inc r0 mov dpl,r0 inc r0 mov a,r4 inc r4 movc a,a+dptr ;放在a中 jz end0;若为0,则表示为休止符,不唱,本次音符不唱, mov r1,a ;不为0,取出节拍数 anl a,#0fh mov r2,a mov a,r1 sw
35、ap a anl a,#0fh jnz sing ;音符不为0,唱 clr tr0 ;为0,不唱,关频率发生器 sjmp sing1sing: dec a ;开始唱,进行相应的数据处理 mov r3,a rl a mov dph,r0 inc r0 mov dpl,r0 inc r0 movc a,a+dptr mov 21h,a mov th0,a mov a,r3 rl a inc a movc a,a+dptr mov 20h,a mov tl0,a setb tr0 ;开唱sing1:lcall delay ;每个音符唱多久 jb f0,for ;是否暂停, ajmp next ;没有
36、暂停,继续for: clr tr0 ;暂停,不唱 jb f0,$ ;等待播放 ajmp next ;开始播放end0: clr tr0 ;不唱 mov a,22h ;唱完处理 cjne a,#n,ww;是不是全部歌曲都唱完 mov 22h,#01h ;全部唱完,则从第一首开始再唱 mov r7,#00h mov out_num,#11111001b;数码管显视第一首歌曲编号 ajmp wwww: mov a,r7;没有全部唱完,唱下一首,歌曲的入口信息调整 add a,#4 mov r7,a inc 22hclr eapush dphpush dplmov a,22h mov dptr,#ou
37、t_tab movc a,a+dptr mov out_num,a ;数码管显视相应的歌曲编号3.4.3定时器定时设计51单片机内部有两个16位的可编程的定时/计时器,称为定时器0(t0)和定时器1(t1),它们都具有定时功能和事件计数功能,可用于定时控制、延时、对外部事件检测和计数等场合。定时期的核心部位是加1计数器,通过设置tmod可使定时器工作在定时或者计数方式,即将定时器用于定时或者计数。实际上这两种工作方式没有本质的区别,都是对脉冲信号计数,只是计数的脉冲来源不同而已。如果计数脉冲是频率稳定的系统时钟的分频信号,则称为定时方式,如果计数脉冲是外部脉冲信号,称为计数方式。无论在定时模式
38、还是技术模式下,定时期在对内部时钟或外部脉冲计数时,都不占用cpu的时间,而按照设定的方式鸽子独自工作。只有在定时器定时时间或计数值到,定时器溢出时才可能中断cpu当前工作,请求cpu处理。如晶振12mhz,用定时器t0定时50ms,从p2.0引脚输出周期100ms的方波;定时的流程图如下图示: 定时50ms流程图主程序如下:org 0000h ;主程序入口地址 ljmp main org 000bh ;t0中断程序入口地址 ljmp int_t0 org 0030hmain: mov sp,#60h ;设堆栈mov tmod,#01h ;设t0工作方式mov th0,#3ch ;定时器t0赋
39、初值mov tl0,#0b0hclr p2.0 ;p2.0初态setb et0 ;开放t0中断setb ea ;开放cpu中断setb tr0 ;启动t0工作loop:sjmp loop ;循环等中断中断服务程序:int_t0:mov th0,#3ch ;t0重装初值 mov tl0,#0b0h cpl p2.0 ;p2.0求反,输出方波 reti ;中断返回 end4 系统调试结果整理与分析4.1系统仿真过程4.1.1原理图的绘制proteus电路设计是在proteus isis环境下绘制的,该编辑环境具有良好的人机交互环境,功能强大且易入手。根据设计电路绘制完后的电路图如下图示: prot
40、eus图五设计调试的心得体会通过仿真调试过程的进行能够帮助我们更加真实的了解编写的程序与预期是否能够匹配,并且检查程序中的一些问题以便于及时的修改,避免错误的累积。在本次的课题电路仿真实训中可以看出程序与电路的契合性是很不错的,满足课题的初始要求,证明设计是成功的。在本次课程设计过程中遇到了很多问题和困难,在老师和同学们的帮助下才使我顺利地克服了这些困难,在此对老师和同学们表达我深深的感谢。5 参考文献单片机课程设计指导书 皮大能 北京理工大学出版社2012.78051单片机实践与应用 吴金戎 清华大学出版社2003.8单片机技术基础教程与实践 夏路易 电子工业出版社2008.1单片机原理及应
41、用张毅刚 高等教育出版社 2012.11基于proteus的单片机系统设计与仿真实例 蒋辉平 机械工业出版社 2007.7毕业论文(设计)原创性声明本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果。据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。 作者签名: 日期: 毕业论文(设计)授权使用说明本论文(设计)作者完全了解*学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。学校可以公布论文(设计)的全部或部分内容。保密的论文(设计)在解密后适用本规定。 作者签名: 指导教师签名: 日期
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论