




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机原理及应用课程设计报告课题: 以温度计为主的多功能系统设计 班级 学号学生姓名指导教师淮阴工学院电子与电气工程学院一、 设计目的单片机原理及应用课程设计是一项重要的实践性教育环节,是学生在校期间必须接受的一项工程训练。在课程设计过程中,在教师指导下,运用工程的方法,通过一个简单课题的设计练习,可使学生通过综合的系统设计,熟悉应用系统的设计过程、设计要求、完成的工作内容和具体的设计方法,了解必须提交的各项工程文件,也达到巩固、充实和综合运用所学知识解决实际问题的目的。通过课程设计,应能加强学生如下能力的培养:(1) 独立工作能力和创造力;(2) 综合运用专业及基础知识,解决实际工程技术问题
2、的能力;(3) 查阅图书资料、产品手册和各种工具书的能力;(4) 工程绘图的能力;(5) 编写技术报告和编制技术资料的能力。二、设计要求 1总体要求(1) 独立完成设计任务(2) 绘制系统硬件总框图(3) 绘制系统原理电路图(4) 制定编写设计方案,编制软件框图,完成详细完整的程序清单和注释;(5) 制定编写调试方案,编写用户操作使用说明书(6) 写出设计工作小结。对在完成以上文件过程所进行的有关步骤如设计思想、指标论证、方案确定、参数计算、元器件选择、原理分析等作出说明,并对所完成的设计作出评价,对自己整个设计工作中经验教训,总结收获和今后研修方向。2 具体要求本次工程实践主要以单片机为基础
3、,进行单片机软件编程,目的是为了提高学生的软件编程和系统设计能力,整个设计系统包括两个部分,硬件及软件部分,硬件部分已经制作成功,学生只需要掌握其原理和焊接相应的元器件,掌握元器件的辨别和元器件的作用以及应用场所即可,另外对所焊接的电路还需要进行仔细的检查,判断是否有焊接错误的地方或者短路的地方,对出现的异常情况要能够根据现象判别原因,并具备解决问题的能力,从而切实提高学生的硬件电子电路的分析、判断能力。我们要完成的软件编程任务主要包括以下几点: 1)、熟悉Keil C51编程平台及Proteus 仿真; 2)、当按下A按键,实现蜂鸣器或继电器动作; 3)、当按下B按键,实现LED流水灯(循环
4、显示); 4)、当按下C按键,实现数码管动态扫描显示(显示内容可以自己确定);5)、当按下D按键,就要实现显示温度到达一定值的时候报警。三、设计步骤3、1系统硬件总框图图1 系统设计总框图此次课程设计,AT89C52是一种带2K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS 8位微处理器,俗称单片机。此次课程设计的电子钟就是由AT89C52单片机、时钟电路、报警电路,LED流水灯电路,动态数码管显示电路、音乐电路等组成。运用汇编语言来控制单片机AT89C52来实现LED流水灯
5、、报警器、动态数码显示、电子音乐等功能,并在此基础上综合运用上述功能,实现电子钟的设计(包括键盘、时钟、显示等),温度测量控制系统(包括键盘、显示、控制、报警等)。且本设计中的AT89C52单片机是整个工作过程的核心,是整个设计灵魂,它控制了脉冲时序的产生,显示信号的发送控制显示LED的选择。同时也考虑到AT89C52单片机来制作电子时钟其最大的好处就是可最大的调整时钟使其准确度更高。3、2系统总体设计根据设计要求,本实验有硬件和软件两部分组成。其中硬件设计框图如图1所示。它是由以单片机为核心, LED流水灯、蜂鸣器、数码管等常用模块组成。软件设计则是根据具体要求编写程序代码调动硬件实现设计功
6、能。图2 系统总体硬件电路设计图3、2、1 蜂鸣器模块蜂鸣器发声原理是电流通过蜂鸣器内部电磁线圈,使电磁线圈产生磁场来驱动振动膜发声,因此需要一定的电流才能驱动它,由于单片机IO口输出的电流较小,其TTL电平驱动不了蜂鸣器,因此需要增加一个电流放大的电路。以获得较大的电流来使蜂鸣器发出声响。再通过程序改变单片机对应IO口输出波形的频率,就可以改变控制蜂鸣器音调,产生各种不同音色、音调的曲调。另外,改变其占空比,也可以控制蜂鸣器的声音大小。3、2、2 LED流水灯模块 因为我们用的数码管是共阳极,单片机不能直接接高电平驱动LED灯,所以要用外加电源和分压电阻来产生低电平驱动灯亮。编程时按要求依次
7、从低位到高位逐个变为低电平,等待少许时刻再变高,即可实现LED灯的流水式闪烁显示。3、2、3 数码管模块数码管有共阳和共阴之分,我们试用的是共阳极数码管。静态显示,原理简单,容易编程,但电路复杂占用的资源较多。动态显示电路,控制较难,但电路简单,在资源紧张时是首选。我们这里用的是动态显示。数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起。通过片选的方式来选择是那个数码管显示。表1 字型共阳极段码字型共阳极段码014H525H10D7H624H24CH7857H345H804H487H905H3、2、
8、4 温度报警模块 我们接P3.4,作为温度传感器,当温度达到报警温度时,P3.4就变为低电平,这时喇叭所接的P3.0变为高电平,喇叭就会响作为报警。当温度低于报警温度时,P3.5就是高电平,这时P3.0就为低电平,所以喇叭就不响。3、3系统分步设计3、3、1 蜂鸣器下图为蜂鸣器电路图4 蜂鸣器电路本电路是通过一个PNP三极管9012来放大信号驱动蜂鸣器的,如图4蜂鸣器的正极接到VCC(5V)电源上面,负极接到三极管的发射极,三极管的基极经过限流电阻R11后由单片机的IO控制,当输出高电平时,三极管Q1截止,没有电流流过线圈,蜂鸣器不发声;当输出低电平时,三极管导通,这样蜂鸣器的电流形成回路,发
9、出声音。因此,我们可以通过程序控制IO口的P3.0输出的电平高低来使蜂鸣器发出声音和关闭,P3.0是高电平蜂鸣器发出声音,P3.0是蜂鸣器关闭声音,从而实现各种可能音响的产生。3、3、2 LED流水灯 如图3所示,D1-D8连接到R1-R8这8个电阻,再连接到单片机IO口P0,当P0口某脚变低时,相应的LED发光。只要我们让程序按要求IO口中的P0.0-P0.7依次从逐个变低等待少许时刻再变高,这样就实现流水灯效果。再改变延时时间,就能改变流水灯的流动速度。 图3 LED流水灯电路3、3、3 数码管显示电路我们采用的是动态显示电路,字符是在不同时刻出现的,即同一时刻,只有一位显示,其它各位熄灭
10、,但由于数码管具有余辉特性和人眼有视觉暂留现象,所以只要每位数码管显示间隔足够短,给人眼的视觉印象就会是连续稳定地显示。数码管不同位显示的时间间隔则是通过调整延时程序的延时长短来完成。数码管显示的时间间隔也能够确定数码管显示时的亮度,若显示的时间间隔长,显示时数码管的亮度将亮些,若显示的时间间隔短,显示时数码管的亮度将暗些。若显示的时间间隔过长的话,数码管显示时将产生闪烁现象。本设计采用共阳电路:图5为数码管显示电路图5 数码管电路3、3、4 温度报警电路图6 温度报警模块图用SW5充当温度传感器,当温度达到报警温度时,SW5闭合时,P3.0就是高电平,喇叭响,但温度低于报警温度时,SW5就断
11、开,P3.0就是低电平,喇叭就不响了。3、3、5AT89C52 AT89C52是此次课程设计的核心部分。其管脚图如下:图10 AT89C52管脚图AT89C52是低功耗、高性能的CMOS8位单片机。片内带有8KB的Flash存储器,且允许在系统内改写或用编程器编程。另外,AT89C52的指令系统和引脚与80C52完全兼容。AT89C52各管脚功能如下:VCC:供电电压;GND:接地;P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。;P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流;P2口:P2口为一个内部上拉电阻的8位双向I/
12、O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流;P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入;P3口管脚功能:P3.0是RXD(串行输入口);P3.1是TXD(串行输出口);P3.2是/INT0(外部中断0);P3.3是/INT1(外部中断1);P3.4是T0(记时器0外部输入);P3.5是T1(记时器1外部输入);P3.6是/WR(外部数据存储器写选通);P3.7是/RD(外部数据存储器
13、读选通);P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许输出电平用于锁存地址的地位字节。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。四、软件单元设
14、计4.1程序流程图开始取系统时间并转二进制为ACSII码将时间存入显示缓冲区显示时间和界面调用延时子程序返回DOS程序结束调用清屏子程序C键按下?ESC键按下?否是是否调用时间修改程序读键盘输入值4.2程序清单软件设计采用汇编语言:ORG 7000H;;程序执行开始地址LJMP START ;;跳转到标号start执行 ORG 8100HSTART: LCALL KEY ;;调用按键子程序 AJMP START ;-KEY: MOV P1,#0F0H ; ;单片机按键口置位 MOV A,P1 MOV B,A ACALL DELAY2 MOV A,P1 CJNE A,B,K4 ; 判断是否有键按
15、下,没有则转移 CJNE A,#0E0H,K1 ; 判断KEYA键是否按下,没有则转移 AJMP KEYA ; KEYA键按下,执行扬声器子程序K1: CJNE A,#0D0H,K2 ; 判断KEYB键是否按下,没有则转移 AJMP KEYB ; KEYB键按下,执行流水灯子程序K2: CJNE A,#0B0H,K3 ; 判断KEYC键是否按下,没有则转移 AJMP KEYC ; KEYC键按下,执行数码管动态显示子程序K3: CJNE A,#070H,K4 ; 判断KEYD键是否按下,没有则转移 AJMP KEYD ; KEYD键按下,执行速度里程表子程序K4: RET;*扬声器*KEYA:
16、MOV R5,#0FFHSETB P3.0DJNZ R5,$MOV R6,#0FFHCLR P3.0DJNZ R6,$RET;*流水灯*KEYB:MOV P2,#11111110BLCALL DELAY1MOV P2,#11111101BLCALL DELAY1MOV P2,#11111011BLCALL DELAY1MOV P2,#11110111BLCALL DELAY1MOV P2,#11101111BLCALL DELAY1MOV P2,#11011111BLCALL DELAY1MOV P2,#10111111BLCALL DELAY1MOV P2,#01111111BLCALL D
17、ELAY1SETB P2.7RET ;数码管动态显示KEYC: CLR P1.0MOV P0,#0F9HSETB P1.3 ACALL DELAY2MOV P0,#0FFHCLR P1.3MOV P0,#0A4HSETB P1.2ACALL DELAY2MOV P0,#0FFHCLR P1.2MOV P0,#0B0HSETB P1.1ACALL DELAY2MOV P0,#0FFHCLR P1.1MOV P0,#99HSETB P1.0ACALL DELAY2RET;智能温度计KEYD:KD:JB P3.5,KASJMP KDKA:MOV R5,#0FFHSETB P3.0DJNZ R5,$M
18、OV R6,#0FFHCLR P3.0DJNZ R6,$RETDELAY1: MOV R7,#25 ; 延时0.5s DL1: MOV R6,#100 DL2: MOV R5,#100 DJNZ R5,$ DJNZ R6,DL2 DJNZ R7,DL1 RETDELAY2: MOV R4,#10 ; 延时2ms DL3: MOV R3,#100 DJNZ R3,$ DJNZ R4,DL3RET;-END五、设计调试调试应由硬件调试和软件调试量部分组成。在调试时必须先硬、软件分别调,再硬软间结合调的宗旨。我们用Proteus 仿真软件来代替硬件仿真,用Proteus 画好仿真图,再将软件调试的结
19、果烧进去。软件调试:首先是对各个子程序设计的调试,确保每个子程序的实验现象符合编写的要求。然后对整个程序进行调试,将所有的程序进行整和,会出现程序的混乱的问题,则必须修改调用名称,同时可统一延时子程序,减少不必要的程序语句。将所有修改完毕后,编译无错误。 按照此次课程设计的要求调试过程如下:按键KEY0,KEY1,KEY2,KEY3分别对应蜂鸣器,LED流水灯,数码管,音乐四个功能。1、蜂鸣器测试 通过按按键KEY0,听到蜂鸣器发出“嘀” ,“嘀”的响声;与相应的程序代码相比较,结果正确。2、LED流水灯测试 通过按按键KEY1,观察到LED流水灯显示,并循环2次;与相应的程序代码相比较,结果正确。 3、数码管测试 通过按按键KEY2,观察到数码管从“1000” 开始计时,依次显示“1001” ,“1002” ,“1003”
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国4-甲氧基苄胺项目商业计划书
- 生物医药产品注册与市场准入咨询合同
- 2025年广东省汕头市金平区中考一模地理试题(含答案)
- 中国方形振动筛行业市场前景预测及投资价值评估分析报告
- 2025-2030年中国脱氧机行业深度研究分析报告
- 仔猪营养性贫血的发生原因、临床表现、诊断及防治
- 创业-养羊创业计划书
- 银行国际业务部工作计划
- 2025年河蟹养殖市场需求分析
- VR技术在医学教育中的应用研究与实践创新
- 嵌入式系统的应用与创新
- 普通饮片车间共线生产风险评估报告
- 三年制中职旅游管理课程标准 《旅游心理学》课程标准-中职
- 银屑病治疗新进展
- 医疗机构信息化成本控制方案
- 糖尿病视网膜病变护理
- 【工程法规】王欣 教材精讲班课件 35-第6章-6.1-建设单位和相关单位的安全责任制度
- 2024年供电营业规则复习题库含答案解析
- GB/T 18457-2024制造医疗器械用不锈钢针管要求和试验方法
- 2020海湾GST-LD-8362H输入输出模块安装使用说明书
- 计算机联锁系统概述 (1)讲解
评论
0/150
提交评论