




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精品文档微机应用系统设计与综合实验(实践)课程设计实验报告实验课题 LED 霓虹灯设计姓名学号班级指导老师目录第一章设计概述 31.1 设计任务 31.2 设备器材 3. 。1欢迎下载精品文档第二章硬件设计方案 32.1 设计思想 32.2 硬件选择 42.3 AT89C52单片机介绍 42.4 硬件逻辑图 72.5 设计连线 82.6 仿真电路图 8第三章软件设计方案 83.1软件设计思想 83.2程序流程图 9第四章调试及运行结果 10第五章设计心得与体会 10参考资料 11源程序清单 11第一章设计概述1.1 设计任务设计内容:利用汇编语言(或 C语言),实现8个单色LED灯的左、右循环
2、 显示,并实现循环的速度可调。选用芯片:8255等注:由于实验室的没有提供8255芯片,所以改用单片机完成此实验,并且添加 了调节灯明暗的功能,以实现明暗可调。1.2 设备器材在本设计中,所用到的设备器材如下所示:(1) 计算机一台;(2) 唐都仪器实验箱一台;(3) AT89C52 单片机一片;(4) 导线若干。第二章 硬件设计方案2.1 设计思路本课题需要用按钮开关实现流水灯的左右循环显示、 调速、 控制亮度的功能。可以选用五个开关来实现这些操作。 单片机正在软件运行下通过不断扫描开关状 态, 来将相关操作对应量送入单片机的输入端口, 然后判断属于哪一类操作。 五 个开关分别为 K1,K2
3、,K3,K4,K5 ,分别控制流水灯的调向、加速、减速、变亮、 变暗。在设计过程中, 接开关的端口要全部保持高电平, 当按下一个开关时, 输入 一个低电平,即为状态改变信号。不能同时有两个端口同为高电平。在设计中我主要负责了用云脉冲宽度调制(PWM波控制LEW的亮度环节,开始对PW而不是很了解,通过请教同学和查阅相关资料,渐渐明白了其中的原 理。 在主程序运行时通过中断方式调整其输出电压的占空比,从而改变灯泡的亮度。 原理是这样的, 主程序的始终频率和中断的始终频率并不相同, 大约是中断 的一千倍,LED灯在移动时如果响应了中断,则在执行中断程序时,LED灯近似看做没有移动, 此时在中断程序中
4、设计一个初值和一个上限, 当计数到初值时置 灯泡灭掉,在计数到上限之前小灯泡都是熄灭的,到达上限后回0,并置灯泡为亮, 继续计数, 在到设定的初值时置小灯泡为灭掉。 这样在主程序的一个周期内, 中断程序将小灯泡置明置暗了近一千次, 通过改变设定的初值可以改变小灯泡的 亮度。2.2 硬件选择4 欢迎下载 。精品文档本实验选用AT89C52i1片机、五个按键开关和8个发光二极管。其中AT89C52 为控制核心,当5个开关的状态改变时,单片机检测到开关信号后就通过软件输 出控制发光二极管。2.3 AT89C52单片机介绍AT89C52是一个低电压,高性能CMOS8位单片机,片内含 8k bytes的
5、可反复擦写的 Flash只读程序存储器和 256 bytes 的随机存取数据存储器(RAM,器件采用 ATMEL公司的高密度、非易失性存储技术生产,兼容标 准MCS-51指令系统,片内置通用8位中央处理器和 Flash存储单元,功能强大的AT89C52单片机可为您提供许多较复杂系统控制应用场合。AT89C52有40个引脚,32个外部双向输入/输出(I/O )端口,同时内含2个外中断口, 3个16位可编程定时计数器 个读写口线。,2个全双工串行通信口,2AT89C52的内部结构图如下:计数器输出川引脚图如下:T2/F1.0 C1 -4。b VccT2EX/P1 1 匚23 3h po. o Va
6、doP1之匚h F0. I/ADIPL 3匚43Th F0. 2/AD2F1 4 E5如h P0.P1. 5 C635h F0. 4/AD4F1. 6 Ch P0. S/AD5Fl. T C83 3h P0. 6/AD6EST C332 P0. T/AD7KXD/F3. 0 匚1031 EA/VFPTKD/F3. I 匚1120 ALE/FROGrSro/F3. 2 匚1223 PESNLNTT/F3.鼻匚1328 P2. T/A15T0/F3. 4 匚14 2Th F2. 6/A14T1/F3. 5 匚15h P2. S/A13m/F3. & 匚1825h P2.O/F3. 7 匚1
7、T 之4h P2. 3fAi1XTAL2 C1823h F2. 2A10XTALI 匚22h F2. 1/A3PDIPGHD 匚2021h F2. 0/A8引脚功能说明:P0 口: P0 口是一组8位漏极开路型双向I/O 口,也即地址/数据总 线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口 P0写1”时,可作为高阻抗输入端用。访问外部数据存储器或程序存储器时,这组口线分时转换地址(低 8位)和数据总线复用,在 访问期间激活内部上拉电阻。在Flash编程时,P0 口接收指令字节,而在程序校验时,输出指令字 节,校验时,要求外接上拉电阻。P1 口: P1是一个带内部
8、上拉电阻的 8位双向I/O 口,P1的输出缓 冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时, 因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流 (IIL)。与AT89C51不同之处是,P1.0和P1.1还可分别作为定时/计数器 2的外部计数输入(P1.0/T2 )和输入(P1.1/T2EX), 参见表1。Flash编程和程序校验期间,P1接收低8位地址。表.P1.0和P1.1的第二功能引脚号功能特性P1.0T2,时钟输出P1.1T2EX (定时/计数器2)P2 口: P2是一个带有内部上拉电阻的8
9、位双向I/O 口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口 P2写1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用 时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流 (IIL) o在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVXDPTR旨令)时,P2 口送出高8位地址数据。在访问 8位地址的外 部数据存储器(如执行MOVXRI指令)时,P2 口输出P2锁存器的内容。Flash编程或校验时,P2亦接收高位地址和一些控制信号。P3 口: P3 口是一组带有内部上拉电阻的8位双向I/O 口。P3 口输出缓冲级可驱动(
10、吸收或输出电流)4个TTL逻辑门电路。对P3 口写入1” 时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的 P3 口将用上拉电阻输出电流(IIL )。P3 口除了作为一般的I/O 口线外,更重要 的用途是它的第二功能。P3 口还接收一些用于 Flash闪速存储器编程和程序校验的控制信号。RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。ALE/PROG当访问外部程序存储器或数据存储器时,ALE (地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目 的。要
11、注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可 禁止ALE操作。该位置位后,只有一条MOVX和MOVC旨令才能将 ALE激活。 此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置 ALE禁止位 无效。PSEN程序储存允许(PSEN输出是外部程序存储器的读选通信号, 当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次 PSEN有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次 PSEN"EA/VPP:外部
12、访问允许。欲使CPU仅访问外部程序存储器(地址为0000H FFFFH), EA端必须保持低电平(接地)。需注意的是:如果加密位 LB1被编程,复位时内部会锁存 EA端状态。如EA端为高电平(接Vcc端), CPU则执行内部程序存储器中的指令。Flash存储器编程时,该引脚加上+12V的编程允许电源 Vpp,当然这必须是该器件是使用 12V编程电压Vpp。XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。2.4 硬件连接框图单片机从开关上提取不同输入信号,进行相应的软件操作,反映输出在发光 二极管上。2.5 设计连线本实验的连线为:开关使用唐都试验箱
13、上的5个开关,分别接到单片机的P2.0-P2.4 口,然后发光二极管分别接到单片机的P1.0-P1.7 口。010欢迎下载2.6 实验仿真电路图C1仃雨下 . LEERED, 1 "汨叫POJOi'P0,11p端期X1W2PQ 那明PD.WPOii'Wfi.PDE烟R3TP0.7P2,JWP2.1.«0国 * F2.2A10岩 P5ENP2.3ft11本 AL£F2,12耙EA吐捌3出游朋匕球151'puon2?3Wf P1.峥P3."限4;P12R3,21M1D:P1J隐 3/IIH1 P 演PJ4TD; P1=P35H1;P1
14、flP3,W-P17PJTfiD39 a 即 至 的34 a 出5t2?2324_a_, “第三章软件设计方案3.1软件设计思想一个完整的系统仅有硬件是不够的,还要有软件的配合。软件和硬件对一个系统来说都是不可或缺的。本实验采用C语言编程,在具体设计中,通过GetKey() 函数来不停的扫描开关的状态,通过KeyProcess ()来确定输入的信号,即按键的位置,从而执行不同的子程序内容,实现LED灯的控制。3.2程序流程图转变方向加速流动LED灯流动运行第四章调试及运行结果精品文档通过设计和编写程序代码,讲程序通过Keil 软件编译后生成的 hex 文件写进AT89C52中,便可操作。为当拨
15、动相应的开关时,看LED灯的变化。调试过程中问题很多, 主要原因是对单片机结构的不熟悉, 其次就是程序中的一些问题。 但通过努力, 都被一一解决。 实际接线前我们先用 protues 仿真了 一下实验结果,确认无误后接线,这样提高了调试的时间。第五章 心得体会经过四次的上机课程设计, 在我和 * 同学的共同努力下, 顺利的完成了任务,并在其中体现了自己的独创部分。 同时我感觉自己学到了很多。 首先是要把理论和实际相结合起来, 从理论中得出结论, 然后再实践, 从而提高自己的实际动手能力和独立思考问题的能力。 在设计的过程中遇到了很多的问题, 也发现了自己的不足之处。 首先是之前对单片机并不十分
16、了解, 通过借阅书籍, 找同学咨询慢慢的开始对其有了初步的认识。 其次是一些相关软件的用法, 这个通过自己慢慢的摸索也逐渐熟悉了起来。 特别是 protues 的使用, 它给了我们很大的帮助, 帮助我们解决了很多调试过程中的问题。在者是对PWMO勺使用,这个问题很是伤到筋, 因为之前对其并不了解, 从熟悉到使用我们查阅了很多资料, 请教了同学,最后终于掌握了。同时也是设计更完善。此课程设计让我加深理解了所学的理论知识, 并进一步建立了计算机应用系统的整体概念, 初步掌握了单片机软、 硬件开发方法, 为以后进行实际的单片机软、 硬件应用开发奠定了良好的基础。 这对下学期单片机的学习会有很大的帮助
17、,也使我对单片机产生了兴趣。这次课程设计的顺利完成,离不开学长,同学和知道老师的帮助,特别是PWMO勺运用,也是学长给我们提出的建议。在此感谢老师和学长的无私帮助。附录一 参考文献1 单片机原理及其接口技术 胡汉才 编著 北京:清华大学出版社2MCS-5俾片机原理及应用张毅刚编著哈尔滨:哈尔滨工业大学出版社3 «51单片机C语言应用程序设计实例精讲(第二版)戴佳刘博文编著电子工业出版社附录一 C 语言程序清单/*/*/*/*程序名:可控流水灯/*功能:实现流水灯的方向、速度、亮度控制/*硬件:P2接开关,P1接LED*/ #include<reg52.h>/*/#incl
18、ude <intrins.h>sbit K1=P2A0;/方向sbit K2=P2A1;加速sbit K3=P2A2;/减速sbit K4=P2A3;/加亮sbit K5=P2A4;/变暗unsigned char Speed,LED;unsigned int tCount=0;unsigned char Idx; /速度取值索引bit Dirtect=1;/滚动方向char duty=10; /占空比unsigned int code sTable=0,1,3,7,9,15,30,50,100,200,230,280,300,350; /调速表void InitTimer0_Ti
19、mer1(void);void delay(unsigned int x)unsigned char i;while(x-) for(i=0;i<20;i+);unsigned char GetKey(void)unsigned char K;if(P2=0xFF) return 0;delay(10);switch(P2)case 0xFE:K=1;break;case 0xFD:K=2;break;case 0xFB:K=3;break;case 0xF7:K=4;break;case 0xEF:K=5;break;default: K=0;break;while(P2!=0xFF); / 等待释放按键 return K;void KeyProcess(unsigned char Key)switch(Key)15 欢迎下载。case 1:Dirtect=Dirtect;break;/方向加速 减速 加亮 变暗case 2:if(Idx>1) Speed=sTable-Idx;break;/case 3:if(Idx<15) Speed=sTable+Idx;break;/case 4:duty+;if(duty>=20) duty=20;break; /case
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 班级管理中小学生自我意识的培养策略研究
- 2024河北衡水中建邯港高速公路管理有限公司招聘高速公路收费员60人笔试参考题库附带答案详解
- 2.2加强宪法监督(课时检测)-八年级《道德与法治》下册(统编版)
- 2024广东佛山市高明展达资产投资有限公司副职招聘1人笔试参考题库附带答案详解
- 2024年四川泸州市兴泸商贸有限公司社会公开招聘1人笔试参考题库附带答案详解
- 第十章 极地地区 教学设计-2023-2024学年七年级地理下学期人教版
- 第二单元课题1 我们周围的空气(第2课时)教学设计-2024-2025学年九年级化学人教版上册
- 《课外古诗词诵读》教学设计2024-2025学年统编版语文七年级上册
- 2024年安徽润含林业发展有限公司招聘2人笔试参考题库附带答案详解
- Unit 8 Lesson 46 教学设计 2024-2025学年冀教版八年级英语下册
- 广东省汕头市潮阳区2024-2025学年高二上学期期末考试英语试题
- 计算机行业人工智能系列深度报告:deepseek研究框架-国海证券-20250214
- DB1331T 102-2025雄安新区应急物资储备库建设规范
- 2025年苏州经贸职业技术学院高职单招职业适应性测试近5年常考版参考题库含答案解析
- 2025年湖南工程职业技术学院高职单招数学历年(2016-2024)频考点试题含答案解析
- 北京市丰台区2024-2025学年九年级上学期期末道德与法治试题(含答案)
- 医院培训课件:《PET-CT的临床应用》
- (课件)-幼儿园中班社会教案《新年里的开心事》
- 2025海南省交通投资控股限公司招聘30人高频重点提升(共500题)附带答案详解
- 宋代美学研究
- 行政管理学知识点全套
评论
0/150
提交评论