单片机课程设计以作息时间控制为主的多功能任务设计_第1页
单片机课程设计以作息时间控制为主的多功能任务设计_第2页
单片机课程设计以作息时间控制为主的多功能任务设计_第3页
单片机课程设计以作息时间控制为主的多功能任务设计_第4页
单片机课程设计以作息时间控制为主的多功能任务设计_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一. 课程设计目的二. 设计要求2.1 总体要求2.2具体要求三. 设计内容及方法3.1 设计准备3.2功能设计及系统总体设计四. 硬件电路总体设计4.1硬件总框图234.1.1主控电路4.1.24.1.3按键控制扫描模块DS1302实时时钟模块4.1.44.1.5数码管显示模块LED显示模块扬声器模块4.1.64.2硬件原理图五.软件流程框图及源程序5.1流程框图主程序流程图蜂鸣器流程图5.1.15.1.25.1.35.1.4流水灯程序流程图时钟显示流程图作息时间控制流程图5.1.55.2源程序代码及注释六. 调试情况及小结七. 课程设计体会八. 参考文献101212121214151617

2、18333435、课程设计目的单片机原理及应用课程设计是一项重要的实践性教育环节,是学生在 校期间必须接受的一项工程训练。在课程设计过程中,在教师指导下,运用工程 的方法,通过一个简单课题的设计练习,可使学生初步体验单片机应用系统的设 计过程、设计要求、完成工作内容和具体的设计方法,了解必须提交的各项工程 文件,也达到巩固、充实和综合运用所学知识解决实际问题的目的。(1)(5)通过课程设计,应能加强学生如下能力的培训: 独立工作能力和创造力; 查阅图书资料,产品手册和各种工具书的能力;工程绘图的能力;编写技术报告和编制技术资料的能力 综合运用专业及基础知识,解决实际工程技术问题的能力;设计要求

3、2.1总体要求(1)独立完成设计任务绘制系统硬件总框图 绘制系统原理电路图 制定编写设计方案,编制软件框图,完成详细完整的程序清单和注释; 制定编写调试方案,编写用户操作使用说明书写出设计工作小结。对在完成以上文件过程所进行的有关步骤如设计思想、指标论证、方案确定、参数计算、元器件选择、原理分析等作出说明,并 对所完成的设计作出评价,对自己整个设计工作中经验教训,总结收获和今后研 修方向。2.2具体要求本次工程实践的校内部分主要以单片机为基础,进行单片机软件编程,目的 是为了提高学生的软件编程和系统设计能力,整个设计系统包括两个部分,硬件 及软件部分,硬件部分已经制作成功,学生只需要掌握其原理

4、和焊接相应的元器件,掌握元器件的辨别和元器件的作用以及应用场所即可,另外对所焊接的电路 还需要进行仔细的检查,判断是否有焊接错误的地方或者短路的地方, 对出现的 异常情况要能够根据现象判别原因, 并具备解决问题的能力,从而切实提高学生 的硬件电子电路的分析、判断能力。软件编程是本次工程实践的重要环节。 在为期两周的工程实践中,将占据主要时间,学生要完成的软件编程任务主要包括以下几点:熟悉Keil C51编程平台及相关编程软件编写、调试蜂鸣器、继电器动作、方波程序并进行软硬件联调 编写、调试LED流水灯(循环显示)程序并进行软硬件联调 编写、调试键盘扫描子程序并进行软硬件联调 编写、调试数码管动

5、态扫描程序并进行软硬件联调 电子钟设计(包括键盘、时钟、显示等)温度测量控制系统设计(包括键盘、显示、时钟、报警等)8)、作息时间控制设计9)、交通灯控制设计10)、汉字输入设计、设计内容及方法单片机原理及其应用课程设计通常选择一般常见、常用的简单应用装置或对象进行微机控制。所涉及的系统可以实际制作,也可以实验室模拟,具体步骤 和内容如下:认真研究设计任务书,明确设计要求、条件、内容、和步骤;通过阅读有关 资料,了解设计对象;复习课程有关内容,熟悉有关单元电路的设计方法和设计 步骤;搜集、分析、消化相关资料、软件等,掌握微型计算机应用系统软件的设 计方法;准备好设计需要的图书、资料和工具;拟定

6、设计计划等。3.2功能设计及系统总体设计要求学生有创新精神和创新意识,分析所掌握的资料,了解设计对象的功能。在充分考虑功能设计后,进行总体设计,以功能、结构为标,制定总体方案,规 划硬、软件功能分配等;初步确定关键元器件地选择 。此次设计任务本人所作工作是协助组长和组员查阅资料文献,在代码编写完成后主负责调试程序,完成产品后编辑报告。(个人自己编 不要写一样)四、硬件电路总体设计4.1硬件总框图原理说明:本电路以单片机 AT89C52为主控电路,分别连接按键控制扫描模块、时钟模块、数码显示模块、LED显示模块、扬声器模块。首先,按键扫描模块的四个按键分别用来控 制数码显示、LED显示和扬声器工

7、作,P1 口作为输出口,用来控制 LED的亮灭,要使其亮只需要让P1.0-P1.7 口保持低电平就可以使8个灯亮起来。同时通过P2.3端控制蜂鸣器发生,当P2.3输出低电平时候使蜂鸣器发出声音,按下按键1时使蜂鸣器发声。P0 口用来控制数码管段选和位选,以显示相应的数值。在其位 选控制部分,采用了 9012型的三极管,要求当对应端口输出低电平时,位选成功,使得该位选的数码管亮,数码管显示时分通过按键3控制。最后通过按按键4实现作息时间控制的功能。4.1.1主控电路本次课程设计中主要是设计一个以作息时间控制为主的多功能控制系统。该设计中我们主控电路部分采用了单片机AT89C52芯片来实现这些功能

8、,AT89C52是一个低电压,高性能 CMOS勺8位单片机,片内含 8KB的可反复擦写的Flash只读程序存储器和 256B的随机存取数据存储器(RAM。其引脚如下图所示:DB22DB33DB44DB55DB66DB77d554RST9P3.010P3.111eSDA12INTI13LCDEN 14RS15WR16RD17X2ISXI1920DB1P1.0VCCP1.1POOPl?PO.lPl 3P0.2Pl 4penPl.5P04Pl.6P0.5Pl.7P0.6RESP0.7P3.0/ICWEAps.iaxDAIF32型西P3 J INTIPSENP2.7P3.4-T0P2.6P3.5/T1

9、P2-5P3.e/WRP2.4P3.7MP2 3XTAL2P2.2XTALlP?.lGNDP2.0STCS9C5240 i38D137D2托D335D434D5旳D63iD73】EA30ATF2928WEIA21dVLa26DIOLA25CSUSB24FM231SB20和SCL21SDAVCCS93456P1 10K图1.AT89C52引脚图VCC供电电压。GND接地。P0 口( P0.0-P0.7): P0 口来输出数码管位选及段选数据,以控制相应数码管显示相应数值。P1 口 (P 1.0-P1.7): P1 口来控制 LED的亮灭。P2 口(P2.0-P2.7):使能相应的模块功能;wel

10、a (P2.7):控制数码管位选;dula (P2.6):控制数码管段选。P3 口(P3.0-P3.7) : P3.0 为 RXD(串行输入口),P3.1 为 TXD(串行输出口),P3.2 为/INTO (外部中断 0), P3.3 为/INT1 (外部中断 1), P3.4 为 T0(记时器0外部输入),P3.5为T1 (记时器1外部输入),P3.6为/WR(外部数据存储器写选通),P3.7为/RD (外部数据存储器读选通)。XTAL1 ( 19脚)和XTAL2( 18脚)为振荡器输入输出端口,外接12MHz 晶振。RST/Vpd (9脚)为复位输入端口,外接电阻电容组成的复位电路。VCC

11、(40脚)和VSS( 20脚)为供电端口,分别接 +5V电源正负端。P0P3 为可编程通用I/O脚,其功能用途由软件定义。4.1.2按键控制扫描模块按键用于控制数码显示、LED显示、扬声器等模块的工作。通过扫描按键是否按下,来设定各模块的工作情况,使各模块可以在按键的控制下,有序地进行工作。设计中使用单个按键实现单个功能,属于较为简单的控制方式._LCDENO0S2O OS3RSOOS4WRO OS5独立键盘图2.按键输入电路在多功能系统设计的实验中中我们使用四个按键分别与单片机的P 3.4、P3.5、P3.6、P3.7相连,按键1控制蜂鸣器发声、按键 2控制LED流水灯、按 键3控制数码管显

12、示,按键4控制作息时间。通过按下相应的按键来处理相应的 程序。SCLK gIpOGND RST32.768DS13O2N4.1.3DS1302实时时钟模块VCCusVCC2 VCC1XIX2时钟模块图3.DS1302模块电路图DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为 2.5V5.5V。采用三线接口与 CPUS行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31X8的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,

13、与 DS1202兼容,但增加了主电源 /后背电源双电源引脚,同时提供了对后备电源进行涓细电流充电的能力。DS1302与 CPIU勺连接:实际上,在调试程序时可以不加电容器,只加一个 32.768kHz的晶振即可。只是选择晶振时,不同的晶振,误差也较大。CC2 CX1 LX2 CGND匸1 82 g 7 3轻64Q 53 VcciSCLK3 l;0:CE图4. DS1302引脚图其中Vcc1为后备电源,VCC2为主电源。在主电源关闭的情况下,也能保持 时钟的连续运行。DS1302由 Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+ 0.2V 时,Vcc2 给 DS1302供电。当

14、Vcc2 小于 Vcc1 时,DS1302由 Vcc1 供电。X1和X2是振荡源,外接32.768kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。 RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当 RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在 Vcc2.5V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。I/O为串行数据输入输出

15、端(双 向),SCLK始终是输入端。RAWCK63A2AO如图2所示DS1302控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表 示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。 在控 制字指令输入后的下一个SCLK时钟的上升沿时,数据被写入 DS1302数据输入从最低位(0位)开始。同样,在紧跟8位的控制字指令后的下一个 SCLK脉冲的下降沿,读出DS1302的数据,利用单片机的外部中断来处理中断系统通过数 码管显示出时

16、间。4.1.4数码管显示模块设计中采用六位共阳极数码管,共阳极是指其公共端接正极,通过单片机AT89C52的P0 口控制其位选和段选,以达到动态显示相应数值的效果。在其位 选控制部分,采用了一个9012型三极管,要求当P0 口输出低电平时,位选成功。WEIWE2WEJWE4WE5WE6数码管显示模块图5.数码管显示电路1选择,键2、键3调整。从而显示出硬件电路中,数码管显示的小时、分、秒,通过键 数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,我们要的数字,因此根据数码管的驱动方式的不同, 可以分为静态式和动态式两 类。静态显示驱动:静态驱动也称直流驱动。静态驱动是指每个数码管的每一个

17、段码都由一个单片机的I/O端口进行驱动,或者使用如 BCC码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要5X 8= 40根I/O端口来驱动,要知道一个89S51单片机可用的I/O端口才32个呢:),实际应用时必须增加译码 驱动器进行驱动,增加了硬件电路的复杂性。 动态显示驱动:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极 COM曾加位选通控制电路,位选通由 各自独立的I/O线控制,当单片机输出

18、字形码时,所有数码管都接收到相同的字 形码,但究竟是那个数码管会显示出字形, 取决于单片机对位选通 COMS电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形, 没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的 COMS,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点 亮时间为12ms由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳 定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的, 能够节省 大量的I/O端口,而且功耗更低。4.1.5 LED显示

19、模块LED ( Light Emitting Diode ),发光二极管,是一种固态的半导体器件,它可以直接把电转化为光。LED的心脏是一个半导体的晶片,晶片的一P型半导体,在端附在一个支架上,一端是负极,另一端连接电源的正极,使整个晶片被 环氧树脂封装起来。半导体晶片由两部分组成,一部分是它里面空穴占主导地位,另一端是N型半导体,在这边主要是电子。但这两种半导体连接起来的时候,它们之间就形成一个“P-N结”。当电流通过导线作用于这个晶片的时候,电子就会被推向P区,在P区里电子跟空穴复合,然后就会以光子的形式发出能量,这就是LED发光的原理。而光的波长也就是光的颜色,是由形成P-N结的材料决定

20、的。VCC- L7VCC576931DM Lo?卜rl流水灯LED模块DIfjf:!0-|P191:y 沁 1 *T- 4 i 7 3 V G QQQQQQQQ2 3B1D32TD33 DMD3ti 3B? 厂DBft图6. LED显示电路本次设计中通过按键2来控制其流水显示,打开电源后按下按键2流水灯模 块有效。由于电路中LED为共阳极,故控制流水灯显示的 P1 口应为低电平时才 有效。从原理图中可以看出,如果要让接在P1.0 口的LED1亮起来,那么只要把P1.0 口的电平变为低电平就可以了;相反,如果要接在P 1.0 口的LED1熄灭, 就要把P 1.0 口的电平变为高电平;同理,接在

21、P1.1P1.7 口的其他7个LED 的点亮和熄灭的方法同 LED1因此,要实现流水灯功能,我们只要将发光二极管LED仁LED8依次点亮、熄灭,8只LED灯便会一亮一暗的做流水灯了。然后P1 口我们首先把要显示流水花样的数据建在一个以 TAB为标号的数据表中,通过查表指令“ MOVC A,A+DPTR把数据取到累加器A中,然后再送到进行显示。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每 条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们 就看不到“流水”效果了。4.1.6扬声器模块扬声器模块通过按键1来实现。要求扬声器能够发出连续,断续的声音及音 乐,我们可

22、以选择一个蜂鸣器来实现这些功能。VCCFMJ1KK Q1 k S8550蜂鸣器模块图7.扬声器电路蜂鸣器是一种一体化结构的电子讯响器, 采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时 器等电子产品中作发声器件。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。下面我们以电磁式蜂鸣器为例来说明它的工作原理:电磁式蜂鸣器由振荡 器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频 信号电流通过电磁线圈,使电磁线圈产生磁场。振动膜片在电磁线圈和磁铁的相 互作用下,周期性地振动发声,当输出高电平时,三极管截止,蜂鸣器的两引脚 间的直流

23、电压接近于0V,没有电流流过线圈,蜂鸣器不发声;当输出低电平时,三极管导通,使蜂鸣器的两个引脚间获得将接近 +5V的直流电压,这样蜂鸣器的电流形成回路,发出声音。因此,我们可以通过程序控制10 口输出的电平来控制蜂鸣器是否发出声音,实现各种可能音响的产生。在这个设计中是通P2.3 口控制其发声的。由于P2.3与ds1302是连在一起的,当P2.3 口输出低电平时蜂鸣器发出声响。故只要ds1302工作,就可以设定使扬声器发出声音。4.2硬件原理图汨.0.Lkb k - I-I ;f I.MWK.JfrAtjLEBHf 块jC131:B(ySBps2tta1語卜校P-U业 KlE2t)5樓转掩模块

24、=主土沖 詔cy twriBTin(u4r1p , _T亡弋监2隘2 盒晝.SB世存跨址外ft收模堆V V电廟电模地51 AT 转 BfeftL野眄黙稅块Ivw VVAi 金誌::誌::日!* fek* I J:F可止俺品冀|X1b tJ-nwip40 *0ll - 2 -XJ.-厶: IBiX串口怙世決$1电于五、软件流程框图及源程序5.1、流程框图5.1.1主程序流程图5.1.2蜂鸣器流程图5.1.3流水灯程序流程图开始5.1.4时间显示流程图5.1.5作息时间控制流程图作息时间控制的设计是比较简单的,其基本思路是我们设置扬声器的预响时间,然后通过DS1302实时时间的读取与预响时间做比较

25、,如果两者相同那么扬声器发声,如果两者不相同那么返回DS1302实时时间继续读取,直到与扬声器预响时间相同扬声器发声,然后通过延时关闭扬声器。5.2源程序代码及注释主程序清单:(见第二组代码(比之前的更短)调试情况及小结6.1硬件调试硬件调试分为静态调试和动态调试,对于硬件调试而言,只要认真焊接,硬 件一般不会出现什么问题的。没有出现什么问题。用所给的调试程序,调试结果 很好,各模块都能正常工作。静态调试一般采用的工具是万用表,其是在用户系统未工作时的一种硬 件检测。动态调试是在用户系统工作的情况下发现和排查错误的一种硬件检测。调试 步骤是:首先把电路分成若干模块,调式过程中与该模块无关的元件可以不加考 虑,这样可把故障限定在一定的范围内; 故障清除后,把各个模块合在一起进行 联调,即可完成整个硬件调试工作。6.2 软件调试软件调试是通过对程序的汇编、连接、执行来发现程序中存在的 语法错误与逻辑错误并加以排除纠正的过程。6.3软硬件调试软硬件联调是指把调试无误的软件程序载入进单片机芯片内部,通上电源 后,检查硬件工作是否有预期的效果,如果没有则需检测软件是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论