单片机节日彩灯实训报告_单片机设计节日彩灯控制器课程设计报告

单片机设计节日彩灯控制器课程设计报告

(8页)

本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!

9.9 积分

片用单片机设计节日彩灯控制器一、 设计任务与要求本实验中采用汇编语言和89C51单片机实现儿円彩灯控制器,在Keil uVision软件环境中编辑和调试节日彩灯程序,并在Proteus软件环境下仿真节 口彩灯的硬件电路。可编程节口彩灯系统采用8个LK)灯来模拟彩灯的显示,设 计要求8个LED灯能以多种不同的方式变换的亮火,以达到节日彩灯的效果。木实验中彩灯具体的变换方式采用以下四种方式:方式一:启动彩灯运行,按下与89C51单片机P1.2相连接的按钮,则彩灯 按照由上而下的顺序依次点亮。方式二:停止彩灯运行,按下与89C51单片机P1.3相连接的按钮,则彩灯 全部熄火。方式三:向下依次点亮彩灯,按下与89C51单片机P1.4相连接的按钮,则 彩灯按照由上向下的顺序依次点亮。方式四:向上依次点亮彩灯,按下与89C51单片机P1.5相连接的按钮,则 彩灯按照由下向上的顺序依次点亮。二、 设计方案以80C51单片机为控制核心,采用模块化的设计方案,运用LED彩灯、按键 等组成电路,实现彩灯在开扁时满足不一样的闪亮方法。按键可以在彩灯使用的 时候选择不同的亮法,使彩灯流动的方向改变,键一可以使彩灯由上而下开始流 动,键二可以使彩灯停止,三号键可以使彩灯由上而K流动,四键则可以使彩灯 由下而上流动。通过按键能方便使用者选择节日彩灯的开启、流动方向和停止。 系统框图如下:三、单片机设计节H彩灯控制器的硬件电路设计单片机设计过程中用到的管脚说明:1、 VCC (40):供电电压。2、 GND (20):接地。3、 P1端口 (P1.0-P1.7): P1 口是一个内部提供上拉电阻的8位双向I/O 口,P1 口缓冲器能接收输出4TTL门电流。P1 口管脚写入1后,被内部上拉为高 电平,可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于内 部上拉的缘故。在FLAS11编程和校验时,P1门作为第八位地址接收。4、 P2端U (P2.0-P2. 7): P2 U为一个内部上拉电阻的8位双向T/0 l_l, P2 U 缓冲器可接收,输出4个TTL门电流,当P2 口被写“1”时,其管脚被内部 上拉电阻拉高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低, 将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或16 位地址外部数据存储器进行存取时,P2门输出地址的高八位。在给出地址“1” 吋,它利用内部上拉优势,当对外部八位地址数据存储器进行读写吋,P2 口输出其特殊功能寄存器的内容。P2 口在FLASH编程和校验时接收高八位地 址信号和控制信号。5、 P3端口 (P3.0-P3. 7): P3 口管脚是一个带有内部上拉电阻的8位的双向I/O 端门,可接收输出4个TTL门电流。当P3 口写入“1”后,它们被内部上拉 为高电平,并用作输入。作为输入端吋,由于外部下拉为低电平,P3 口将输 出电流(ILL)。P3 口也可作为AT89C51的一些特殊功能口,其中P3.3可作 为外部中断1输入。6、 XTALK19):反向振荡放大器的输入及内部时钟工作电路的输入。7、 XTAL2C18):來自反向振荡器的输出。8> (31):外部程序存储器访问允许控制端。打开PROTEUS的ISIS编辑环境,从PROTEUS中选取该电路所需要的元器件,放置元器件、放置电源和地、连线得到下图所示的电路原理图,再点菜单栏工具 下拉的电气规则检査,当规则检査出现:“NETL 1ST GENERATED OK NO ERC ERROR!) FOUND”,表示通过检查。电路设计完成。C2Hh30pC130pVCCU722.U1?XTAL1PO.G'ADOP0.VAD1PO2AD2XTAL2P0,3.'AD3P0.4.AQ4PO.5.'AD5P0.6.-AD6RSTP07/AD7R20A8R2J/A9P2.2-A10PSENP2.3/A11ALEP2.4.A12EAP2.5'A13P2.a-Al4P2.7/A15P1.0P3.0/RXDP1.1P3.1OXDP1.2P32»1NT0P1.3P3.a-1NT1P1.4P3.4JDP1.5P3.5/T1P1.6R3.6AVRP1.7P3.7W2L-9-292S_ 311TZ士ATg9C51LEDREOAND_PROTEUS硬件电路原理图四、单片机设计节日彩灯控制器的软件设计单片机设计节闩彩灯控制器的软件设计流程图如下: 编写成功的程序如下所示:ORG 0000H:程序入U地址LJMP MAIN;跳转到主程序ORG 0013H;中断入口地址LJMP INT1X ;跳转到中断程序ORG 010011;主程序入门地址MAIN:SETBTT1 :设置外部中断1为跳沿触发方式SETB EX1;允许外部中断1SETB EA;开启中断总开关CLR F0;清标志位MOV A, #0FFH ;为久赋初值SO:MOV P2,A ;设置P2为OFFHJB F0, SI;若印为1则跳转S1RR A;右移A值SJMP S2;跳转S2S1:RL A;左移A值;S2: LCALL DELA ;调用延吋SJMP SOINT1X: JNB Pl. 2, L00P1 ;P1. 2 端口为 0 则跳转 L00P1JXB Pl. 3, L00P2JNB Pl. 4, L00P1JXB Pl. 5, L00P3LOOP1:MOVA, #OFEH ;对4进行赋值SETB F0;对标志位置1AJMP INT;跳转至INTL00P2:MOVA, #0FFHAJMP TNT在Keil uVision软件环境下编写单片机设计节日彩灯控制器的软件,最终LOOP3:MOV A,#7FHCLR FOAJMP INTTNT: RETT ;中断返回DELA:MOV R1,#1OO ;延时子程序MOV R3, #50DELA 1: MOV R2,#10DELA2: NOPDJNZ R2, DELA2DJNZ Rl’DELAlDJNZ R3,DELA1RET ;子程疗:返回END ;结束五、 在PROTEUS中的硬件电路中进行仿真把程序装入单片机后,通过按不同的按键实现彩灯运行的不同方式,检验实 验结果是否与要求相符合。若与要求不符,则检验电路和程序是否正确,直至实 验结果与要求相符合。六、 实验程序与实验电路的总体叙述硬件电路中LED灯是共阳极的,在程序运行时,按下与P1. 2相连的按键, 程序进入中断,并检测到P1. 2为低电平0,此时进入L00P1,对A赋值FEH和置 标志位F0为1,然后返回S0,对P2端门赋值(赋值为FE11,转换为二进制数为 11111110),及此吋在电路上为P2. 7为低电平0,只有最上面的LED灯亮,程序 跳至S1,左移A值,及A变为11111101,调用延时子程序,然后返InjSO,此时 重复以上过程,使得第二个LED灯亮,依次执行则LED等依次点亮,直到改变按 下的按键。七、 单片机课程设计的体悟本设计本身比较简单,整个课程设计的过程中每一步都是自己亲自做的,在 经过遇到问题,思索问题到解决问题的过程中,收获是最多的。以往没有注意到的问题,都在这一次的课程设计中得以体现,这培养了我的细心,耐心和专心。 经过几天的努力,终于完成丫本学期的单片机课程设计,过程虽是辛苦的,但从中我们却学到了很多东西。首先巩固了课上学的理论知识,对于计算机汇 编语言的系统化整体化有了更深的认识。在编写程序的过程中遇到了很多困难经 过我反复修改不断修正最终冰能得以执行。再次是经过搜集资料基本了解了 protcus软件是使用。整个设计过程最大的收获就是意识到理论知识扎实的重要 性,实践是建立在理论之上的。 关 键 词: 单片机 设计 节日 彩灯 控制器 课程设计 报告

 天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。

你可能感兴趣的:(单片机节日彩灯实训报告)