实验二 单片机最小系统及流水灯电路
单片机最小系统实现花样流水灯

3.灯阵从由下顶点开始,以逆时针依次点亮,最后回到下顶点。
4.灯阵从由下顶点开始,以顺时针依次点亮,最后回到下顶点。
5.先奇数灯点亮,然后偶数灯点亮,呈交替状态。
6.所有灯先同时点亮,后同时熄灭,呈闪烁状态。
7.以上六种状态依次运行。
以上七种运行方式, 由外部中断(微动开关) 控制,即一次中断运行状态1, 两次中断运行状态2,… 当遇到第八此中断时,再次从状态1开始。
uchar ID;
uchar cnபைடு நூலகம்=0; uint j;
void main()
{SP=0x50;
P1=0x00;
//P0=0x00;
EA=1;
IT0=1;
EX0=1;
TMOD=0x10; TH1=15536/256;
TL1=15536%256;
ET0=1; TR0=1;
ID=1;cnt=0; while(1){if(ID>7)
功;最后用keil C编程软件及STC-ISP下载软件完成STC89C5单 片机对外围流水灯设计的整体控制。
三、设计需求
整个流水灯系统由按键控制,实现各种状态之间的转换,即按 键第一次压下,流水灯进入到第一种状态;按键第二次压下,流水 灯进入到第二种状态;以此类推。
四、设计材料
序号
器件
数量
功能
1
STC-89C52单片机最小系统板
基于STC-89C51的流水灯的设计与实现
一、设计目的
以STC-80C51单片机最小系统为核心,设计多样式流水灯。掌 握外围LED电路的设计方法,熟练掌握C51软件编程控制方法,实 现LED闪烁功能,最终完成单片机的应用与外围电路的开发任务。
基于单片机最小系统的流水灯

电气工程学院学生科研实践计划项目总结报告项目编号:SRPP201715项目名称:基于单片机最小系统的流水灯项目参加人:李恺(论文撰写者)任子业所在班级:电子161项目指导教师:宋潇项目完成时间:2017年 6 月填报日期:2017年 6 月 4 日河南科技大学电气工程学院2016年制目录一、项目研究内容 (3)二、设计方法 (3)三、系统各模块的设计过程 (4)1.电源模块 (4)2.单片机最小系统 (5)3.驱动电路 (8)4.PCB设计 (8)四、系统软件设计 (10)1.源程序 (10)2.程序流程图 (11)五、系统调试与结果分析 (12)六、总结 (14)一、研究内容单片微型计算机简称单片机,是指集成在一块芯片上的计算机,它具有与结构简单,控制功能强,可靠性高,体积小,价格低等优点。
单片机技术作为计算机技术的一个重要的分支,广泛的应用于工业控制,智能仪器仪表,家用电器,电子玩具等各个领域。
此次研究的内容是:用AltiumDesigner制作基于单片机最小系统流水灯的原理和PCB,自己进行各个原件的焊接。
并进行程序的设计,通过程序来精确的控制LED的亮灭时间,从而达到预期的目的。
二、设计方法首先,我们设计使用8个LED小灯制作流水灯,采用STC90C51RC作为主控芯片,并在单片机外围设计了电源指示模块,复位电路和晶振。
通过编程控制I/O口的电平高度,使8个LED灯能够准确的以不同的时间亮灭。
其基本的模块图如下所示:图2-1-1 流水灯结构在这之后,为了防止所设计的系统没有误差,同时练习自己的焊接能力,于是我们找到了洞洞板并将单片机的最小系统焊于其上,录入程序看是否工作。
如果不工作则进行修改,直到成功为止。
这样,即练习了焊接技术以防焊接PCB时失误又能够进一步掌握单片机最小系统。
最后进行程序和PCB的设计。
主要通过Keil uVision5和AltiumDesigner两个软件进行单片机的程序设计,原理图和PCB的制作。
单片机流水灯实验报告

单片机流水灯实验报告本实验旨在通过单片机控制LED灯的亮灭,实现流水灯效果。
通过对实验的设计、搭建和调试,我们可以更深入地理解单片机的工作原理和掌握相应的编程技巧。
实验器材和元件:1. 单片机,我们选用了STC89C52单片机作为控制核心;2. LED灯,我们使用8个LED灯作为实验的输出设备;3. 电阻,为了限流,我们使用了适当的电阻;4. 连接线、面包板等。
实验步骤:1. 搭建电路,首先,我们按照电路图将单片机、LED灯和电阻连接在一起,并将电路连接到电源上;2. 编写程序,接下来,我们使用C语言编写单片机的控制程序,实现LED灯的流水灯效果;3. 烧录程序,将编写好的程序通过烧录器烧录到单片机中;4. 调试程序,将烧录好的单片机连接到电路上,进行程序的调试和验证;5. 完善电路,根据实际调试情况,对电路进行必要的调整和完善,确保LED 灯能够按照预期的流水灯效果工作。
实验结果:经过反复调试和完善,我们成功实现了单片机控制LED灯的流水灯效果。
在程序控制下,8个LED灯按照顺序依次亮起并熄灭,形成了流水灯的效果。
整个实验过程非常顺利,取得了预期的效果。
实验心得:通过本次实验,我们对单片机的控制原理有了更深入的理解,也掌握了一定的C语言编程技巧。
在实验的过程中,我们遇到了一些问题,如LED灯未按预期工作、程序逻辑错误等,但通过分析和调试,最终都得到了解决。
实验不仅提高了我们的动手能力,也培养了我们的分析和解决问题的能力。
总结:本次实验不仅让我们熟悉了单片机的控制方法,也让我们体验了从实验设计到调试完善的整个过程。
通过这次实验,我们不仅学到了专业知识,也培养了动手能力和解决问题的能力。
希望在以后的学习和实践中,能够更好地运用所学知识,不断提升自己的能力。
以上就是本次单片机流水灯实验的报告内容,希望对大家有所帮助。
单片机流水灯实训报告

基于AT89C52单片机的流水灯设计实训报告学院:信息工程学院班级:12级电子信息工程本科班学号:姓名:指导教师:2014年 12月29日目录前言 (1)一、总体设计 (2)1.1 总体设计框图 (2)1.2 硬件具体原理图 (3)二、设计内容 (3)2.1 设计要求 (3)2.2 硬件设计 (3)2.3 软件设计 (5)2.3.1 Keil的使用步骤: (5)2.3.2 程序流程 (8)2.3.3 程序代码 (9)三、最小系统板的焊接及调试流程 (12)3.1 最小系统板电路焊接流程: (12)3.1.1焊前准备: (12)3.1.2焊接步骤: (12)3.2 调试及问题解决方法 (13)3.2.1仿真 (13)3.2.2下载 (14)3.2.3问题及解决方法 (14)四、总结体会 (15)前言随着社会的进步和发展和人们生活水平的不断提高单片机技术已经成为当今各种新技术的载体各个应用领域的工程技术人员都应掌握单片机应用术。
同时,它所给人带来的方便也是不可否定的。
其中,数码管就是一个典型的例子。
但人们对它的要求越来越高要为现代人工作、科研、生活、提供更好的方便的设施,就需要从单片机技术入手,一切向着数字化控制、智能化控制方向发展。
单片机应用的意义不仅在于它的广阔范围及所带来的经济效益。
更重要的意义在于,单片机的应用从根本上改变了控制系统传统的设计思想和设计方法。
以前采用硬件电路实现的大部分控制功能,正在用单片机通过软件方法来实现。
单片微型计算机就是将CPU、RAM、ROM、时/计数器和多种接口都集成到一块集成电路芯片上的微型计算机。
近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。
在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。
我们周围有许多广告牌。
【实验2io口实现流水灯】

实验二IO口实现LED灯闪烁一、实验目的:1.正确安装keil软件2.正确安装调试驱动,熟悉实验板的用法3.学习IO口的使用方法。
二、实验设备:单片机开发板、学生自带笔记本电脑三、实验内容:利用单片机IO口做输出,接发光二极管,编写程序,使发光二极管按照要求点亮。
四、实验原理:1.LPC1114一共有42个GPIO,分为4个端口,P0、P1、P2口都是12位的宽度,引脚从Px.0~Px.11,P3口是6位的宽度,引脚从P3.0~P3.5。
引脚的内部构造如图所示。
其中Rpu为上拉电阻、Rpd为下拉电阻。
2.为了节省芯片的空间和引脚的数目,LPC1100系列微处理器的大多数引脚都采用功能复用方式,用户在使用某个外设的时候,要先设置引脚。
控制引脚设置的寄存器称之为IO配置寄存器,每个端口管脚PIOn_m都分配一个了一个IO配置寄存器IOCON_PIOn_m,以控制管脚功能和电气特性。
3.IOCON_PIOn_m寄存器其位域定义如表所列。
4.各引脚IOCON寄存器的位[2:0]配置不同的值所相应功能。
5.GPIO寄存器GPIO数据寄存器用于读取输入管脚的状态数据,或配置输出管脚的输出状态,表5-5对GPIOnDATA寄存器位进行描述。
GPIO的数据方向的设置是通过对GPIOnDIR寄存器的位进行与或操作实现的,LPC1100微处理器和8051单片机的GPIO不同,在使用前一定要先设置数据方向才能使用,6.发光二级管的工作电压和工作电流如何?___________________________________________________________________________ ___________________________________________________________________________ _________________________________________________________________________。
单片机最小系统及流水灯实验

实验一:单片机最小系统及流水灯实验一、实验目的1、掌握单片机最小系统的原理2、学习51系列单片机P1口作输出端口的使用方法3、学习延时程序的设计方法二、实验器材普中科技单片机开发试验仪一台STC90c516RD+单片机一个12欧姆晶振一个杜邦线若干USB线一根三、实验原理1、单片机最小系统,是指在尽可能少得外部电路的条件下,形成一个可以独立工作的单片机系统。
它一般包含晶振电路(时钟源,为单片机提供基准时钟信号,保证各指令的正常运行),复位电路(使单片机的片内电路初始化)。
2、P1口作输出时:P1口置为低电平(0),led灯亮;P1口置高电平(1),led灭。
3、延时子程序的延时计算问题延时长度=机器周期(12M/12)*指令周期数*循环次数。
4、实验原理图四、实验步骤及内容1、实验内容P1口做输出口,接八位逻辑电平显示,编写程序,使发光二极管循环点亮。
2、实验步骤1)、根据实验内容编写程序2)、观察试验仪,正确安装STC90c516RD+单片机,12欧姆晶振。
3)、将USB线连接PC机,连接JP8和JP1.4)、打开电源开关,观察现象是否与所编程序一致五、参考程序及实验要报告要求1、参考程序ORG 0000H ;程序从000H地址开始运行AJMP MAIN ;跳转到MAIN程序ORG 030H ;MAIN程序从030H开始运行MAIN:MOV P2, #0FEHACALL DEL ;调用延时子程序MOV P2, #0FCHACALL DEL ;调用延时子程序MOV P2, #0F8HACALL DELMOV P2, #0F0HACALL DELMOV P2, #0E0HACALL DELMOV P2, #0C0HACALL DELMOV P2, #080HACALL DELMOV P2, #000HACALL DELMOV P2, #0FFHAJMP MAIN ;跳转到MAIN程序; 延时子程序DEL: MOV R5, #02HDEL1: MOV R6, #0F0HDEL2: MOV R7, #0F0HDEL3: DJNZ R7, DEL3DJNZ R6, DEL2DJNZ R5, DEL1RETEND2、思考题1)、利用指令L IMP和RL改写参考程序中的黑体部分,使原程序更简练。
实验二 单片机最小系统及流水灯电路

实验二单片机最小系统及流水灯电路一、实验目的1.熟悉单片机实验电路板,通过测量单片机最小系统参数,掌握单片机系统工作条件。
2.测绘单片机流水灯电路,掌握51单片机汇编语言程序的编辑、调试、编译的一般过程和基本操作步骤。
3.掌握单片机程序烧录基本步骤和方法,掌握单片机系统的开发过程。
二.实验电路原理单片机最小系统包括单片机(内部包含有程序存储器、随机存储器)、晶振电路、复位电路和电源电路,这是单片机工作的基本硬件要求。
本实验通过单片机P0口控制8个LED,单片机P0口结构如图1所示,熟悉I/O口结构对硬件电路设计有非常重要的意义。
图1 单片机P0口结构P0口内部没有上拉电阻,一般必须加上拉电阻。
接发光二极管时,应该使用低电平点亮发光二极管(即采用灌电流),发光二极管和限流电阻起到上拉电阻的作用,在这种情况下,可以不接上拉电阻。
实验电路如图所示。
图2 流水灯电路单片机工作离不开软件,要根据硬件电路编制相匹配的软件,流水灯电路软件设计的流程图3所示:图3 流水灯电路软件流程图三、实验设备和软件单片机实验开发板、计算机、Protues软件、万用表、示波器。
四、实验内容与步骤1.单片机工作状态测试(1)熟悉实验板电路布局,找出实验板电源电路的结构,晶振电路、复位电路的元器件位置,用万用表查找LED与单片机的连接。
(2)实验板加电开机,电源指示灯点亮,用万用表检测单片机Vcc(40脚)、RST(9脚)、晶振工作电源(18脚、19脚)电压。
(3)用示波器观察晶振引脚信号波形和幅度。
注意:在测量单片机引脚电压时要小心万用表和示波器的表笔不能将单片机引脚短路!2.流水灯电路设计与仿真先采用Proteus ISIS软件进行流水灯电路硬件与汇编程序设计,完成硬件和软件的设计后再进行编译和仿真,一般操作步骤如下:(1)在桌面创建一个文件夹,打开Proteus SISI软件。
参照测量单片机实验板硬件结构绘制流水灯电路,注意元器件库查找、元器件放置和编辑、导线绘制方法。
最小系统—流水灯课程设计(绝对可用,完整)

一.概述 (3)1.1流水灯的设计要求 (3)1.2流水灯实现的功能 (3)二、总体方案 (3)2.1单片机系统的总体方案及可行性分析 (3)2.2系统框图 (4)2.3系统工作原理 (4)三、硬件系统 (4)3.1单片机控制电路 (4)3.2时钟电路 (6)3.3复位电路 (6)3.4串口电路 (7)3.5 LED显示电路 (8)四、软件设计 (9)4.1 程序设计 (9)4.2 部分程序 (9)4.3软件流程图 (9)4.4 系统运行流程 (11)五、系统调试 (11)5.1 硬件调试 (11)5.2程序调试 (11)六、结论 (12)七、参考文献 (13)八、附录 (14)8.1 流水灯源程序 (14)8.2 proteus仿真图 (16)8.3 protel原理图 (17)8.4 PCB图 (17)摘要单片微型计算机又称单片机,其具有结构简单、控制功能强、可靠性高、体积小、价格低等优点,已经在工业智能化仪表、家电等各个领域内广泛应用同时单片机的应用也正在不断地走向深入。
本文通过以STC89C52为核心制作一个最小系统,并在单片机P1口添加LED二极管做成流水灯实现LED的依次闪亮。
关键词:STC89C52 流水灯最小系统一.概述1.1流水灯的设计要求设计一个89C52单片机最小系统。
系统监控主程序的设计,如各种接口的初始化等;通用IO口的应用程序设计,如发光二极管的点亮与熄灭等;定时器/计数器的应用程序设计,如定时程序设计及应用等;串行接口听应用程序设计,如串口通信程序设计及应用等。
1.2流水灯实现的功能流水灯实现的功能主要分为两个部分:1、显示部分:通过电容与晶振产生单片机内部时钟信号,并通过单片机P1口电平的高低控制LED的循环闪亮。
2、串口部分:利用电平转换电路,把电脑串口电压从+12V转换为+5V,从而是单片机与电脑相连而不会因电压过高烧坏电路。
二、总体方案2.1单片机系统的总体方案及可行性分析以STC89C52为核心设计出最小系统,其中最小系统包括电源电路、时钟电路、复位电路,时钟电路提供脉冲信号,另外在最小系统的P1口添加LED显示电路构成流水灯。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二单片机最小系统及流水灯电路
一、实验目的
1.熟悉单片机实验电路板,通过测量单片机最小系统参数,掌握单片机系统工作条件。
2.测绘单片机流水灯电路,掌握51单片机汇编语言程序的编辑、调试、编译的一般过程和基本操作步骤。
3.掌握单片机程序烧录基本步骤和方法,掌握单片机系统的开发过程。
二.实验电路原理
单片机最小系统包括单片机(内部包含有程序存储器、随机存储器)、晶振电路、复位电路和电源电路,这是单片机工作的基本硬件要求。
本实验通过单片机P0口控制8个LED,单片机P0口结构如图1所示,熟悉I/O口结构对硬件电路设计有非常重要的意义。
图1 单片机P0口结构
P0口内部没有上拉电阻,一般必须加上拉电阻。
接发光二极管时,应该使用低电平点亮发光二极管(即采用灌电流),发光二极管和限流电阻起到上拉电阻的作用,在这种情况下,可以不接上拉电阻。
实验电路如图所示。
图2 流水灯电路
单片机工作离不开软件,要根据硬件电路编制相匹配的软件,流水灯电路软件设计的流程图3所示:
图3 流水灯电路软件流程图
三、实验设备和软件
单片机实验开发板、计算机、Protues软件、万用表、示波器。
四、实验内容与步骤
1.单片机工作状态测试
(1)熟悉实验板电路布局,找出实验板电源电路的结构,晶振电路、复位电路的元器件位置,用万用表查找LED与单片机的连接。
(2)实验板加电开机,电源指示灯点亮,用万用表检测单片机Vcc(40脚)、RST(9脚)、晶振工作电源(18脚、19脚)电压。
(3)用示波器观察晶振引脚信号波形和幅度。
注意:在测量单片机引脚电压时要小心万用表和示波器的表笔不能将单片机引脚短路!
2.流水灯电路设计与仿真
先采用Proteus ISIS软件进行流水灯电路硬件与汇编程序设计,完成硬件和软件的设计后再进行编译和仿真,一般操作步骤如下:
(1)在桌面创建一个文件夹,打开Proteus SISI软件。
参照测量单片机实验板硬件结构绘制流水灯电路,注意元器件库查找、元器件放置和编辑、导线绘制方法。
电路绘制完成后
“流水灯”保存在文件夹中。
(2)保存电路图后,点击“Source”创建软件代码文件以“流水灯.ASM”文件保存。
(3)将编制的流水灯汇编程序输入编辑器中。
输入程序时注意程序格以及“0”和“O”的区别(初学者经常出现的错误)。
在完成输入程序后对程序进行编译“Buidle All”。
生成“流水灯.HEX”文件。
注意:程序编译成功只说明程序语法正确,不能说明程序功能已经达到了设计目标。
(4)对流水灯电路程序进行仿真。
当程序编译正常,程序设计正确时,实现流水灯电路的正常仿真运行。
如果程序不正常、或出现语法错误要根据编译器的提示进行修改程序,也可以进行仿真调试。
仿真调试需要重点查看的对象是:Code区程序代码存储区间、PC值及其变化量、指令周期长度、P1口输出值、工作寄存器和及其它有关的SFR之值。
通过它们分别可以看到程序段的存储空间、指令的存储地址和字长、指令的执行时间长度、有关指令和程序段的运行结果等等,这些都是调试者评估程序段功能、修改和完善程序代码的基本依据。
更详细步骤请参照教材相关部分介绍。
3.烧录程序和硬件运行
YZ200实验板单片机烧入程序的方法有两种,一种是本实验板的专用方法JRISP(采用ISP接口),一种是采用STC-ISP软件(采用RS232口),在此我们采用ISP接口。
(1)用ISP下载线将单片机实验板与计算机USB口连接在一起。
(2)利用JRISP软件,将“流水灯.HEX”文件烧入单片机中。
如果电路上电后不能运行则需要检查单片机的基本工作条件是否正常;如果只是运行现象不符合设计目标,则需要分析现象进而修改程序代码,重复上述编译、仿真调试、烧写和试运行的过程。
如此反复调试,直至成功为止。
4.参考程序
1 ORG 0000H ;程序开始地址
2 LJMP MAIN
3 ORG 0100H
4 MAIN:MOV A,#0FEH ;初值1111 1110 送P0口,低电平点亮LED
5 LOOP:MOV P0,A
6 LCALL DEL
7 DJNZ R5, LOOP1
8 RL A ;循环左移一次
9 LJMP LOOP
10 DEL:MOV R0,#20 ;循环20次
11 DL3:MOV R2,#50 ;循环100次
12 DL2:MOV R3,#250 ;循环250次
13 DEL1: DJNZ R3,DEL1 ;此指令2us,循环250次:2*250=500us
14 DJNZ R2,DL2 ;50*500us=25ms
15 DJNZ R0, DL3 ;25ms*40=1s
16 RET ;子程序返回
17 END ;程序结束
5.深入实验问题
在参考程序中,单片机使用12MHz晶体,每一个LED点亮时间为1s。
根据下表中的问题,修改程序、用Proteus软件仿真验证,并将回答的问题填入表1中,交指导教师检查。
1.流水灯每次点亮2个LED,赋给累加器A的初值为多少?
2.每次点亮两个,每次跳两个LED,程序如何修改?
3.将延时程序修改为600ms,程序如何修改?
4.如果单片机石英晶体从12MHz改为6MHz,流水灯移动速度仍为1s,程序如何修改?
5.LED连接到P2口,其它功能不变,程序如何修改?
6.子程序返回后,单片机执行哪条指令?
7*.如何实现LED各闪烁5次再移位功能?
五、实验总结和报告要求
试验报告是实验过程的回顾总结与提高的过程,实验报告要求记录实验中出现的问题,解决方法,在回答下列问题的前提下,认真总结实验中的经验教训,完成实验报告。
回答下列问题:
1.伪指令有无机器码?不要伪指令END会产生什么问题?将伪指令ORG 0100H改为ORG 0200H会产生什么问题?用STC-ISP软件打开“流水灯.HEX”文件,查看代码在程序存储器中的位置发生了哪些变化。
2.为什么单片机在开机时或复位后,都从0000H开始执行程序?而一般程序的第一条指令都采用跳转指令:
ORG 0000H
LJMP MAIN
……
3.图1中P0口没有接上拉电阻为什么可以正常工作,如果将图1的发光二极管改为图2所示电路,即将+5V电源改成接地,这时仿真实验会有什么不同?加上10k上拉电阻呢?实际电路如果按照图2接法(加上10k上拉电阻)能够正常工作吗?上述实验你得到什么结论,请从I/O口电路结构上进行分析回答。
图4 发光二极管电路接地接法
4.如果程序烧录后,程序不能正常运行,应该如何检查,说出检查要点。
5.总结实验单片机开发过程,在使用Proteus绘制电路图、仿真、YZ2000单片机实验
板实现电路功能时,你有哪些经验教训?。