(单片机课程设计报告_第1页
(单片机课程设计报告_第2页
(单片机课程设计报告_第3页
(单片机课程设计报告_第4页
(单片机课程设计报告_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

单片机课程设计报告单片机课程设计报告目的:可控流水灯摘要单片机是一个集成电路芯片,采用超大规模技术,将具有数据处理能力的微处理器、随机存取数据存储器、只读程序存储器、输入/输出电路以及可能的定时计数器、串口通信端口、显示驱动电路、脉宽调制电路、模拟多路复用器和模数转换器等电路集成在一个芯片上,形成一个最小的、完善的计算机系统。在软件的控制下,这些电路能够准确、快速、高效地完成程序员预先规定的任务。可控流水灯的设计通过编写代码实现了10个发光二极管灯的4种流水灯显示方式。在设计中,以89C51芯片为控制主体,以发光二极管为显示灯。系统通过P2端口外接8个发光二极管,通过P3端口外接2个发光二极管。该设计辅以简单的设备和必要的电路来设计水流灯,最终达到了预期的目的。关键词单片机89C51发光二极管自来水灯第1项简介.1 2主题摘要.的来源和意义.s 1 2.1项目面临的问题.1 2.2. 13系统设计.1 3.1总体设计.1 3.2模块设计。.2 3.3硬件设计.5 4代码编写.运行结果及分析.6 5系统调试.7 6系统.7总结.9感谢.“.第10节提及.第11章附录.12-1-1简介单片机控制系统可以取代以前由复杂的电子电路或数字电路组成的控制系统,可以通过软件控制实现,并且可以实现智能化。现在单片机的控制范围无处不在,如通讯产品、家用电器、智能仪器、过程控制和特殊控制装置等。单片机的应用领域越来越广泛。2主题概述2.12.1主题的来源和含义随着经济和科技的快速发展,芯片行业发展迅速。单片机技术已经广泛应用于民用和工业控制等各个领域。单片机以其低成本、高性能的不可替代的优势成为微机控制的主力军。学习供应链管理的有效途径是理论和实践并重。因此,通过对单片机可控流水灯的设计和研究,鼓励学生在熟悉基本原理的前提下,结合实际应用,提出自己的方案来完善设计,使他们更好地掌握单片机的应用。2.22.2面临的问题本课程设计的要求是为10个发光二极管灯设计4种水灯显示模式。要解决的问题是水灯显示模式的设计。下面将讨论各种问题。3系统设计3.13.1总体设计总体设计为实现本课题我们采用89C51作为控制体,十个普通的阳极发光二极管作为发光二极管显示水灯。连接外部晶体振荡器以提供外部时钟脉冲和复位电路。2-框图如下: 图3-1系统框图流程图如下:启动和结束发光二极管显示模式图3-2系统流程图图3.23.2模块设计模块设计3.2.1主控模块和引入芯片89C51为核心。端口P0、P1、P2和P3可用作输入/输出端口。发光二极管通过上拉电阻连接到89C51的两个端口P3,八个发光二极管连接到端口P2。核心控制模块AT89C51复位电路模块时钟电路模块显示电路模块-3-图3-3主控制模块图的引脚显示: VCC:电源电压。GND:地面。P0端口:P0端口是一个8位漏极开路双向输入/输出端口,每个引脚可以吸收8TTL栅极电流。当引脚P0首次写入1时,它被定义为高阻抗输入。P0可用于外部程序数据存储,可定义为数据/地址的第八位。当FIASH被编程时,P0端口被用作原始代码输入端口。当检查FIASH时,P0输出原始代码。此时,P0的外侧必须拉高。P1端口:P1端口是一个内置上拉电阻的8位双向输入/输出端口。P1端口缓冲器可以接收和输出4TTL栅极电流。P1端口引脚写入1后,内部上拉,可用作输入。当P1端口从外部拉低至低电平时,它将输出电流,这是由于内部上拉。在闪存编程和验证期间,P1端口被接收为第八个地址。P2端口:P2端口是一个带有内部上拉电阻的8位双向输入/输出端口。P2端口缓冲器可以接收和输出4个TTL门电流。当P2端口写入“1”时,其引脚被内部上拉电阻拉高并用作输入。因此,当用作输入时,P2端口的引脚从外部拉低,电流将被输出。这是由于内部上拉。当P2端口用于外部程序存储器或16位地址外部数据存储器进行行访问时,P2端口输出地址的高8位。当给出地址“1”时,它利用内部上拉优势。当读写外部8位地址数据存储器时,P2端口输出其特殊功能寄存器的内容。在闪存编程和验证期间,P2端口接收高八位地址信号和控制信号。P3端口:P3端口的引脚是8个带内部上拉电阻的双向输入/输出端口,可以接收和输出4个TTL栅极电流。当P3端口写有“1”时,它们被内部拉高并用作输入。作为输入,由于外部下拉电阻较低,因此P3端口会因上拉电阻而输出电流(ILL)。-4-P3端口也可以作为AT89C51的一些特殊功能端口。如下表所示: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(外部数据存储器读选通)P3端口同时接收一些用于闪存编程和编程验证的控制信号。RST:重置输入。当振荡器复位器件时,在两个机器周期内保持RST引脚高电平。访问外部存储器时,数据锁存器允许的输出电平用于锁存地址的状态字节。该引脚用于在闪存编程期间输入编程脉冲。正常情况下,ALE端子以恒定频率周期输出正脉冲信号,该频率周期为振荡器频率的1/6。因此,它可以用作外部输入脉冲或用于计时目的。然而,应该注意的是,当ALE脉冲用作外部数据存储器时,它将被跳过。如果要禁用ALE的输出,可以在SFR8EH地址上设置0。此时,ALE仅在执行MOVX且MOVC指令为ALE时工作。此外,该引脚被稍稍拉高。如果微处理器在外部执行状态ALE下被禁用,则该设置无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器提取期间,/PSEN在每个机器周期内有效两次。然而,当访问外部数据存储器时,这两个有效/PSEN信号将不会出现。/EA/VPP:当/EA保持低电平时,在此期间外部程序存储器(0000-FFFFH),不管是否有内部程序存储器。当注意加密方法1时,/EA会将内部锁定为复位;当/EA端子保持高电平时,这里是内部程序存储器。该引脚还用于在闪存编程期间施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入和内部时钟操作电路的输入。振荡器特性: XTAL1和XTAL2分别是反相放大器的输入和输出。反相放大器可以配置为片内振荡器。石晶体振荡和陶瓷振荡都可以使用。如果使用外部时钟源驱动器件,则不应连接XTAL2。内部时钟信号的输入必须通过一个2分频触发器,因此对外部时钟信号的脉冲宽度没有要求,但必须确保所需的高电平和低电平脉冲宽度。3.2.2时钟模块的时钟电路用于产生单片机工作时所需的时钟信号。芯片的外部通过18引脚和19引脚连接到晶体振荡器和微调电容,形成反馈电路,形成稳定的自激振荡器。赛道上的C1和C2大约30Pf。双晶体振荡器的频率范围通常为1.2-12兆赫兹。晶体振荡器的频率越高,振荡频率越高。-5-图3-5时钟模块图3.2.3流水灯模块发光二极管是一种发光二极管,由磷化镓等半导体材料制成,可直接将电能转化为光能。当一定量的电流通过它时,它会发光。发光二极管具有功耗低、体积小、可靠性高、寿命长和响应速度快的优点。自来水灯模块采用10个发光二极管,通过写代码实现4种自来水运动,其中电阻的作用是保护二极管,提供较小的电流,防止二极管因电流过大而烧毁。在设计中,发光二极管通过公共阴极连接。我们只需要不断向左移动初始值,就可以看到发光二极管打开,从而实现自来水灯的功能。-6-图3-5流水灯模块图3.33.3硬件设计硬件设计图3-7硬件连接图4代码编写定义每个端口: SBIT D1=P2 0;将p1.0端口定义为led 1位led2=p2 1。sbit led3=p22;sbit led4=p23;sbit led5=p24;sbit led6=p25;sbit led7=p26;sbit led8=p27;-7-sbit led9=p30;Sbit led0=P延迟:延迟(单位z)延迟链路单位x,y;对于(x=z;x0;(y=110y0;y-);模式1:对于(I=1;i20I) /在第一种情况下,所有都是明亮的 P2=0XFF;P3=0XFF;延迟(100);P2=0x 00;P3=0x 00;延迟(100);在第一种情况下,方式2:打开所有十个发光二极管,方式3依次打开灯1、3、5、7和9,方式4依次打开灯10,方式5依次打开灯2和1。通过用keil编译编写的代码来调试系统后,因为keil不太熟悉它,所以需要-8-很长时间才能将它加载到protues中进行模仿。后来,我向我的同学寻求帮助,并且完成了它。每种方法都可以很好地实现。6系统运行结果和分析通过USB线连接电源后,led灯可以正常显示。led灯首先完全打开,第一种情况在20个周期后结束。然后,自动执行第二种情况,以一个接一个地打开奇数灯。同样,在20个循环后,发光二极管灯自动进入第三个循环模式,以此类推,直到结束。然而,由于技术无法达到,开关不能用来选择哪个循环模式;同时,它不能自动停止,需要手动停止。-9-结论通过本次课程设计,我学到了很多知识,也认识到了很多问题。与此同时,我意识到一个非常重要的问题,那就是课程设计前的准备工作也非常重要,包括预习设计、上网和去图书馆查资料。我清楚地知道信息也很重要,否则在一个新的话题面前,你将无法开始。通过准备工作,可以保证在设计进行的时候,有足够的准备,这样在课程设计真正开始的时候,就不会茫然地盯着主题,毫无进展。因此,我认为这也是一种良好的学习态度,我将在今后的学习中一直持这种态度。此外,让我发现可控流水灯的设计不仅是对我以前的知识如led灯的一个很好的应用,而且对我的学习也有很大的好处。在编程的过程中,我也遇到了很多问题。在代码调试的开始,总是有错误和失望。在同学的帮助下,经过多次修改,我终于修改了程序代码。在大家的帮助下,我们能够完成可控流水灯的基本功能。总的来说,这个设计受益匪浅。因为这个课程设计是一个团队合作,它不仅让我们团结合作,学习知识,而且让我们学会更

温馨提示

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

评论

0/150

提交评论