基于单片机的流水灯设计讲解

  • 格式:doc
  • 大小:244.50 KB
  • 文档页数:17

****

课 程 设 计 报 告 书

系 别: 机械与电子工程学院

专 业:

学 生 姓 名: 学 号:

课程设计题目: 基于单片机的流水灯设计

起 迄 日 期:

课程设计地点:

指 导 教 师:

下达任务书日期: 2013 年 12 月 16 日

第 2 页 共 17 页 目录

第一章 设计背景 .......................................................................... 3

第二章 硬件设计 .......................................................................... 4

2.1硬件组成 .................................................................................................................................................... 4

2.2 AT89C51引脚功能 .................................................................................................................................... 4

2.3晶振 ............................................................................................................................................................ 6

2.4 复位状态 ................................................................................................................................................... 7

2.5流水灯硬件原理图 .................................................................................................................................... 8

2.6 MCS-51系列单片机内部采用模块式结构 .............................................................................................. 9

2.7元件清单 .................................................................................................................................................... 9

2.8程序流程图 ............................................................................................................................................... 10

第三章 软件编程 ......................................................................... 11

3.1位控法 .......................................................................................................................................................11

3.2 C语言编程 .............................................................................................................................................. 12

3.2.1 C语言程序 .................................................................................................................................. 12

3.2.2编程注意事项 .............................................................................................................................. 13

3.3仿真结果 ................................................................................................................................................... 15

实验总结 ................................................................................ 16

参考文献: .............................................................................. 17

第 3 页 共 17 页 第一章 设计背景

单片机的应用已经广泛的渗透到国民经济的各个领域,随着在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统正以前所未有的速度被单片机智能控制系统所取代,它已经成为工科大学生的必修课程之一。单片机技术含有硬﹑软两个方面的技术。硬件是以单片机为核心,再加以其他各元器件组成的电子电路的一个实体。它既有单片机的技术,又有电子类专业所必须的模拟﹑数字﹑高频电子电路的综合运用。单片机的种类繁多,目前单片机应用系统开发工具也有不少,但同一系列单片机的开发工具或实验系列基本相同。51系列单片机时目前应用最广泛的一种8为单片机之一,它具有体积小﹑功能强﹑成本低﹑应用面广等优点。经过20多年的推广与发展,51系列单片机形成了一个规模庞大,功能齐全,资源丰富的产品群。当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。随着电子技术的迅速发展,单片机得到了越来越多的运用。 本设计用单片机8951结合LED制作了一种新型的LED流水灯控制系统的设计,以AT89C51作为主控核心,利用软件实现对LED流水灯进行控制。本系统具有体积小、硬件少、电路结构简单及容易操作等优点。

本文设计的是基于单片机89C51的流水灯设计

关键词:LED AT89C51单片机 控制系统 流水灯

第 4 页 共 17 页 第二章 硬件设计

2.1硬件组成

按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗系统及典型系统等。AT89C51单片机是美国ATMEL公司生产的低电压、高性能CMOS 8位单片机,具有丰富的内部资源:4kB闪存、128BRAM、32根I/O口线、2个16位定时/计数器、5个向量两级中断结构、2个全双工的串行口,具有4.25~5.50V的电压工作范围和0~24MHz工作频率,使用AT89C51单片机时无须外扩存储器。因此,本流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位等电路和必要的软件组成的单个单片机。

2.2 AT89C51引脚功能

XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C51

图1 AT89C51引脚图

VCC:供电电压。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,

第 5 页 共 17 页 将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如下表所示: