单片机三个发光二极管的循环点亮

合集下载

单片机发光管闪烁和流水灯的操作

单片机发光管闪烁和流水灯的操作

单片机发光管闪烁和流水灯的操作1、闪烁:尝试让第一个发光管闪烁程序如下:#include<reg52.h> //52单片机头文件sbit led1=P1^0; //单片机管脚位声明void main() //主函数{unsigned int i; //定义一个int型变量while(1){i=50000; //变量赋初值为50000led1=0; //点亮灯while(i--); //延时i=50000;led1=1; //熄灭灯while(i--);}}2、流水灯程序如下:#include<reg52.h> //52单片机头文件void main() //主函数{unsigned int i; //定义一个int型变量while(1){i=50000; //变量赋初值为50000P1=0xfe; //点亮第一个灯while(i--); //延时i=50000; //变量赋初值为50000P1=0xfd; //点亮第二个灯while(i--); //延时i=50000; //变量赋初值为50000P1=0xfb; //点亮第三个灯while(i--); //延时i=50000; //变量赋初值为50000P1=0xf7; //点亮第四个灯while(i--); //延时i=50000; //变量赋初值为50000P1=0xef; //点亮第五个灯while(i--); //延时i=50000; //变量赋初值为50000P1=0xdf; //点亮第六个灯while(i--); //延时i=50000; //变量赋初值为50000P1=0xbf; //点亮第七个灯while(i--); //延时i=50000; //变量赋初值为50000P1=0x7f; //点亮第八个灯while(i--); //延时}}。

单片机led循环点亮的实验总结

单片机led循环点亮的实验总结

单片机led循环点亮的实验总结下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。

文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!本店铺为大家提供各种类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you! In addition, this shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!单片机LED循环点亮的实验总结在学习单片机编程过程中,LED循环点亮是一个经典的实验,有助于理解单片机IO口控制以及简单的循环结构。

单片机三个发光二极管的循环点亮

单片机三个发光二极管的循环点亮

三个发光二极管的循环点亮1611020110陈珏本一,系统设计分析本系统为最小单片机系统+三个LED核心处理器采用c51系列单片机AT89C51。

整个系统在系统软件的控制下工作。

开始时将P1端口全部置1,在单片机内,经识别、延迟等环节实时发出控制LED1、2、3闪烁的控制信号。

左侧电路使起完成相应的动作。

二,系统原件AT89C51、CAP 30pf、CRYSTAL 12MHZ、RES、BUTTON、LED三,系统原理图设计四,源程序设计ORG 0030HMOV A,#0FFHMOV P1,A LOOP:CLR P1.0LCALL DELAYCPL P1.0CLR P1.1LCALL DELAYCPL P1.1CLR P1.2LCALL DELAYCPL P1.2LCALL DELAYAJMP LOOP DELAY:MOV R7,#200D1:MOV R6,#248D2:DJNZ R6,$DJNZ R7,D1RETEXIT:NOPEND五,keil仿真创建“三个发光二极管的循环点亮”项目,选择单片机型号为AT89C51,输入汇编语言程序,保存为“三个发光二极管的循环点亮.asm”。

将源程序添加到项目中,编译源程序,创建“三个发光二极管的循环点亮.hex”。

六,prutues仿真成果图七,调试结果分析第一次仿真失败,请教王初韩同学后找出问题,是我使用了另外一个之前做的HEX文件,修改后三展灯循环点亮,实验成功。

八,想对老师说的话老师您好,是这样的,这次实验的编程语言我是从网上搜的,因为我完全不会编程语言,但是我的确照着网上的步骤一步步的把实验做成功了,也算是花了一番心血,至于其他的缺陷的部分,我会在之后的日子里向同学请教也好一点点的学的,希望老师给个高点的分数(注:文档可能无法思考全面,请浏览后下载,供参考。

可复制、编制,期待你的好评与关注!)。

单片机循环灯点亮实验

单片机循环灯点亮实验

单片机循环灯点亮实验
一:实验名称:循环灯点亮
二:实验目的:了解p1 口输出,了解移位操作要通过累加器ACC 来实现,
掌握89C51 的汇编指令。

三:实验原理:
1.八个循环灯是由发光二极管组成的阵列,发光二极管采用共阳极连接(这
样可以提高二极管的亮度)。

2.每个二极管外接一个电阻和一个非门,这样把p1 口输出的高电平转换成了
低电平,二极管正常导电,并发光点亮。

3.每个二极管对应赋一时点亮,但是p1 口输出的电平值,只能对应二极管阵
列的一个确定的状态,不能实现循环点亮。

所以要先把值赋给寄存器ACC,通
过ACC 实现移位操作,实现不同的二极管对应赋一,这样确定的二极管实现
高电平点亮,其余的为低电平。

4.计时实现了循环赋一,人的视觉还是感受不到灯在循环,因为CPU 晶振的
频率为6MHZ,一个震荡周期T=1/6M,则一个机器周期为T’=12/6M=2us。


极其短暂的时间远远不到人眼所能分辨的范围,所以要通过延时来实现效果的
观察。

对89C51 来说,延时可以通过硬件、软件实现。

本实验通过软件延时,
即通过汇编指令的循环来实现。

实验程序如下:
org 0HLJMP startorg 4100Hstart:MOV A, #1loop:MOV P1, ADD2:MOV R0, 10MOV R1, #200DD1:MOV R2, #126DJNZ R2, $DJNZ R1, DD1DJNZ R0, DD2RL AJMP loopend
从第七行到第十一行为循环语句,下面对汇编语言进行解释:。

单片机实验之二极管循环点亮

单片机实验之二极管循环点亮

实验一P1口亮灯实验一、实验目的(1)学习P1口的使用方法;(2)学习延时子程序的编写。

二、实验内容P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。

三、实验预备知识(1)P1口为准双向口,可定义为输入,也可定义为输出。

(2)本实验中延时子程序采用指令循环来实现,机器周期(12/6MHZ)*指令所需机器周期数*循环次数,在系统时间允许的情况下可以采用此方法。

四、程序框图五、实验步骤1、实验连线P1.0~P1.7用插针连至L1~L82、PC环境在与PC联机状态下,打开桌面图标“MCS-51集成开发环境”,下载PH51\he01.asm,编译、连接、装载,用连续方式运行程序。

3、观察运行结果在连续运行方式下,观察发光二极管闪亮移位情况。

4、终止运行按“暂停图标”或实验箱上的“暂停按钮”,使系统无条件退出该程序的运行返回监控状态。

六、思考修改延时常数,使发光二极管闪亮时间改变。

修改程序,使发光二极管闪亮移位方向改变。

七、实验电路八、实验程序ORG 0790H;----------------------------------------------------------SE18: MOV P1,#0FFH ;送P1口LO34: MOV A,#0FEH ;L1发光二极管点亮LO33: MOV P1,ALCALL SE19 ;延时RL A ;左移位SJMP LO33 ;循环;----------------------------------------------------------SE19: MOV R6,#0A0HLO36: MOV R7,#0FFHLO35: DJNZ R7,LO35DJNZ R6,LO36 ;延时RET;----------------------------------------------------------END教你如何用W ORD文档(2012-06-27 192246)转载▼标签:杂谈1. 问:W ORD 里边怎样设置每页不同的页眉?如何使不同的章节显示的页眉不同?答:分节,每节可以设置不同的页眉。

单片机流水灯三个点亮方向

单片机流水灯三个点亮方向

单片机流水灯三个点亮方向一、横向点亮(依次点亮P0.0~P0.1到P1.0~P1.7到P2.0~P2.7到P3.0~P3.7)include "reg52.h" //此处使用的为89S52的芯片void delay(unsigned int second){unsigned int i,j; //定义为unsigned防止负数,习惯问题for(i=0;i<second;i++){for(j=0;j<200000;j++);}}void main(void){unsigned int i;while(1){for(i=0;i<8:i++){P0=0x01<<i;delay(100); //由1us=10E6,故此处100为2秒P0=0: //使P0端全处于低电平,熄灭点亮的流水灯}for(i=0;i<8:i++){P1=0x01<<i;delay(100);P1=0;}for(i=0;i<8:i++){P2=0x01<<i;delay(100);P2=0;}for(i=0;i<8:i++){P3=0x01<<i;delay(100);P3=0;}}}二、纵向点亮(点亮次序由P0.0~P1.0~P2.0~P3.0再到P0.1~P1.1以此类推)include "reg52.h" //此处使用的为89S52的芯片void delay(unsigned int second){unsigned int i,j; //定义为unsigned防止负数,习惯问题for(i=0;i<second;i++){for(j=0;j<200000;j++);}}void main(void){unsigned i;while(1){for(i=0;i<8;i++){P0=0x01<<i;delay(100);P0=0;P1=0x01<<i;delay(100);P1=0;P2=0x01<<i;delay(100);P2=0;P3=0x01<<i;delay(100);P3=0:}}}三、斜向点亮(从P0~P3口斜向点亮)include "reg52.h" //此处使用的为89S52的芯片void delay(unsigned int second){unsigned int i,j; //定义为unsigned防止负数,习惯问题for(i=0;i<second;i++){for(j=0;j<200000;j++);}}void main(void){unsigned i;while(1){for(i=0;i<8;i++){P0=0x01<<i;delay(100);P0=0;P1=0x01<<(i<7?i+1:i-7); //此处反映了当i为7时;0x01左移0位,亮P0.0的灯delay(100);P1=0;P2=0x01<<(i<6?i+2:i-6); //此处反映了当i大于6时;0ix01左移i-6位,亮P0.(i-6)的灯delay(100);P2=0:P3=0x01<<(i<5?i+3:i-5; //同上delay(100);P3=0:}}}。

单片机实现发光二极管的循环点亮控制讲解

单片机实现发光二极管的循环点亮控制讲解

桂林电子科技大学单片机最小应用系统设计报告指导老师:***学生:钟静茹学号:09210202机电工程学院2010年6月单片机最小应用系统设计报告目录一、设计题目 (3)二、设计内容与要求 (3)三、设计目的意义 (3)四、系统硬件电路图 (4)五、程序流程图与源程序 (6)5.1流程图 (6)5.2源程序 (7)5.2.1程序设计思想 (7)5.2.2源程序清单 (7)六、系统功能分析与说明 (9)6.1系统主要组成部分 (9)6.2指示灯显示部分 (10)6.3 电路板的制作 (10)6.3.1 PCB图的制作 (11)6.3.2 电路板的腐蚀、钻孔和元器件的焊接 (13)七、设计体会 (11)八、参考文献 (12)一、设计题目用8031单片机实现发光二极管的循环点亮控制。

采用3个按键分别控制发光二极管的启动、停止及每个灯点亮的时间的更换,定时时间有软件控制。

二、设计内容与要求用8031单片机控制8个发光二极管循环点亮。

要求用按键控制点亮时间(如每个灯点亮0.5秒或者1秒等,各灯点亮时间相同)。

按启动键开始循环点亮;按停止键后停止。

三、设计目的意义1、掌握单片机系统中扩展简单I/O接口的方法。

2、掌握单片机的硬件接口电路、8031单片机的内部结构及其编程方法。

3、掌握单片机的最小系统的设计。

4、掌握电路板的设计与制作。

5、了解程序编写与调试的方法和技巧。

6、综合掌握所学的单片机指令系统和硬件接口电路知识,进行简单的最小系统开发。

四、系统硬件电路图系统硬件图(图1)包括单片机最小系统(复位电路、晶振电路和相关的控制信号)、外电路接通显示部分、及电源显示部分。

设计硬件电路图时,其基本思想:先通过万能板搭建试验平台,将编好的程序下载到51中,等可以达到预期要求后,最后在PROTEL中设计原理图与PCB,做出电路板。

图1 系统硬件图五、程序流程图与源程序5.1流程图5.2源程序5.2.1程序设计思想单片机通入电源后,一直让单片机对8031的P1和P3口进行采集,将8031的P3口开关信号送入8031,以控制流水灯的亮灭及时间。

单片机应用技术LED循环点亮控制

单片机应用技术LED循环点亮控制
控制模块 一.工作任务要求 二. LED 循环点亮电路设计 三. LED 循环点亮程序设计 四. 并行 I/O 端口电路介绍 二,MCS-五一单片机内存空间 一.数据存储器 二.特殊功能寄存器 三."头文件包含"处理 四.程序存储器 三,工作模块四 开关控制 LED 循环点亮模块 一.开关控制 LED 循环点亮电路设计 二.开关控制 LED 循环点亮程序设计 三.C 五一数据类型 四.C 语言常量与变量 四,工作模块五 步电机控制模块 一.认识步电机 二.步电机控制电路设计 三.步电机控制程序设计 五,技能拓展 ULN 二零零三 A 驱动器应用 一. ULN 二零零三 A 特点 二. ULN 二零零三 A 引脚功能 多媒体演示及实训练相结合 一.项目驱动 二.教学做一体
课时(学时) 终极目地 促成目地 教学重点 教学难点 学内容
教学手段 教学方法设计
项目二 LED 循环点亮控制
一零学时 一.能完成单片机地输入输出电路设计; 二.能应用 C 语言程序完成单片机输入输出控制,实现对 LED 循环点亮 控制地设计,运行及调试。
一. 掌握 P 零,P 一,P 二与 P 三功能及应用技能; 二. 掌握内部数据存储器地地址分配及特殊功能寄存器; 三. 掌握 C 语言数据类型,常量与变量; 四. 会利用单片机 I/O 口实现开关控制 LED 循环点亮与步电机控制 一. STC 八九 C 五二单片机 P 零,P 一,P 二与 P 三功能; 二.内部数据存储器地地址分配及特殊功能寄存器; 三.C 语言数据类型,常量与变量; 四.开关控制 LED 循环点亮。 一.电路图地设计 二.五一单片机地内存空间地址分配
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

三个发光二极管的循环点亮
10
陈珏本
一,系统设计分析
本系统为最小单片机系统+三个LED
核心处理器采用c51系列单片机AT89C51。

整个系统在系统软件的控制下工作。

开始时将P1端口全部置1,在单片机内,经识别、延迟等环节实时发出控制LED1、2、3闪烁的控制信号。

左侧电路使起完成相应的动作。

二,系统原件
AT89C51、CAP 30pf、CRYSTAL 12MHZ、RES、BUTTON、LED 三,系统原理图设计
四,源程序设计
ORG 0030H
MOV A,#0FFH
MOV P1,A LOOP:CLR
LCALL DELAY
CPL
CLR
LCALL DELAY
CPL
CLR
LCALL DELAY
CPL
LCALL DELAY
AJMP LOOP
DELAY:MOV R7,#200
D1:MOV R6,#248
D2:DJNZ R6,$
DJNZ R7,D1
RET
EXIT:NOP
END
五,keil仿真
创建“三个发光二极管的循环点亮”项目,选择单片机型号
为AT89C51,输入汇编语言程序,保存为“三个发光二极管的循环点亮.asm”。

将源程序添加到项目中,编译源程序,创建“三个发光二极管的循环点亮.hex”。

六,prutues仿真
成果图
七,调试结果分析
第一次仿真失败,请教王初韩同学后找出问题,是我使用了另外一个之前做的HEX文件,修改后三展灯循环点亮,实验成功。

八,想对老师说的话
老师您好,是这样的,这次实验的编程语言我是从网上搜的,因为我完全不会编程语言,但是我的确照着网上的步骤一步步的把实验做成功了,也算是花了一番心血,至于其他的缺陷的部分,我会在之后的日子里向同学请教也好一点点的学的,希望老师给个高点的分数。

相关文档
最新文档