中断控制LED流水灯 16页PPT文档

合集下载

可中断LED流水灯课程设计

可中断LED流水灯课程设计

摘要本设计是可中断LED流水灯的设计。

整机以美国ATMEL公司生产的40脚单片机AT89C51为核心,介绍了以它为控制系统的LED灯的动态设计和开发过程。

通过该芯片控制一个行LED灯按一定顺序亮,文中详细介绍了LED显示的设计思路。

单片机控制系统程序采用单片机汇编语言进行编辑,通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。

当然流水灯一般只是在用芯片做控制时起修饰作用,不能很好体现单片机的强大功能。

这里的流水灯只是单片机应用中的最基础的一方面。

LED显示以其组构方式灵活、显示稳定、功耗低、寿命长、技术成熟、成本低廉等特点在车站、证券所、运动场馆、交通干道及各种室内外显示场合的信息发布,公益宣传,环境参数实时,重大活动倒计时等等得到广泛的应用。

经实践证明,该系统显示误差小,性能稳定,结构合理,扩展能力强。

关键词:汇编语言;AT89C51单片机; LED;中断程序1绪论单片机的发展大致可分为四个阶段:第一阶段:单片机探索阶段。

以Intel公司MCS-48,Motorola公司6801为代表,属低档型8位机。

第二阶段:单片机完善阶段。

以Intel公司MCS-51,Motorola公司68HC05为代表,属高档型8位机。

此阶段,8位单片机体系进一步完善,特别是MCS-51系列单片机在世界和我国得到了广泛的应用,奠定了它在单片机领域的经典地位,形成了事实上的8位单片机标准结构。

第三阶段:8位机和16位机争艳阶段,也是单片机向微控制器发展的阶段。

此阶段Intel公司推出了16位的MCS-96系列单片机,世界其他芯片制造商也纷纷推出了性能优异的16位单片机,但由于价格不菲,其应用面受到一定的限制。

相反MCS-51系列单片机,由于其性能价格比高,却得到了广泛的应用,并吸引了世界许多知名制造厂商,竟相使用以80C51为内核,扩展部分测控系统中使用的电路技术、接口技术、A/D、D/A和看门狗等功能部件,推出了许多与80C51兼容的8位单片机。

实验五 流水灯与中断控制

实验五 流水灯与中断控制

一、实验设备(1)PC一台(2)单片机多功能试验板一块(3)KEIL uVision 4.22 集成开发环境、STC-ISP烧录软件、串口调试助手(电子工程基础实验QQ群文件共享)二、实验目的(1)了解单片机的4组I/O端口(2)掌握通过串口通信控制LED灯的方法(3)复习巩固C语言知识三、实验要求与任务使用KEIL uVision 4软件新建一个C51内核工程,步骤如下:(1)在”Soruce Group 1”新建C程序文件,文件名:main.c(2)在工程中新建两个组,名称分别为com和myled.(3)在工程文件对应的目录下,再新建两个目录,com文件夹和myled文件夹。

(4)在工程中新建四个文件,分别名称com.c, com.h, myled.c, myled.h,前两个文件保存在com文件夹中,后两个文件保存在myled文件夹中。

(5)将共享资料的“单片机开发板资料\学习版资料\例程\LED\driver”目录及文件拷贝到工程文件所在的目录中,并在工程中新建driver组,把driver文件夹下的两个文件添加进去。

(提示,我们要使用它提供的延时函数)文件的组织结构如下图:实验任务:通过串口助手输入分别输入字符‘0’,‘1’,‘2’,‘3’,‘4’,‘5’,分别完成以下功能:输入’0’,打开led1到led5共5个灯,它们处于常亮状态。

输入’1’,关闭led1到led5共5个灯。

输入’2’,led1到led5这5个灯间隔0.5秒轮流点亮(流水灯效果)。

输入’3’,led1、led3、led5这3个灯间隔0.5秒轮流点亮(流水灯效果)。

输入’4’,led2、led4这3个灯间隔0.5秒轮流点亮(流水灯效果)。

四、示例代码1. 实例代码.c文件(不需要修改,可参考主程序中如何调用它里面的函数)4. led.c文件5.myled.h 文件五、实验报告要求实验报告文档以word为格式,包含:1.请附上你完成部分的实验代码。

第3章 流水灯定时及外部中断控制

第3章  流水灯定时及外部中断控制

0x40 0000
XINTF接口操作 Zone0和Zone1 Zone0和Zone1共用一个片选信号, Zone0占用的外部总线地址为0x2000~0x3FFF, Zone1占用的外部总线地址为0x4000~0x5FFF
XA[13] XA[14] XZCS0AND1
Zone0的片选 使能线
XA[13] XA[14] XZCS0AND1
CY7C1021V33-12
LED显示器的接口扩展
在本项目“LED定时闪烁系统”中,利用了XINTF接
口扩展了8位LED灯的地址。系统采用作为片选信号, 所以,基地址为0x08 0000。
同时,当XA[15]和XA[0]都为高电平时,锁存器
74HC373使能。因此,在本系统中锁存器74HC373 的地址为0x88 001。
1
DSP技术及应用
多媒体教学系统
制作:李金明
兰州石化职业技术学院
退出
2
第3章 LED流水灯的
定时及外部中断控制
主要内容

学习存储空间及外部扩展接口XINTF
CPU定时器的应用
中断的概念 外部中断的应用
流水灯控制系统电路
LED1~8 R 300Ω x8 XD0 XD1 XD2 XD3 XD4 XD5 XD6 XD7 XA0 XA15
tpr的值timerregsaddrtprall初始化定时器控制寄存器tcrtss位为1时定时器停止为0时启动定时器timerregsaddrtcrbittsstrb位为1时重新加载周期计数器的值到计数器timerregsaddrtcrbittrb定时器自由运行tie位为1时使能定时器中断timerregsaddrtcrbittievoidstartcputimer0pie控制器概述2812的cpu能够支持一个不可屏蔽中断nmi和16个可屏蔽的中断int1int14rtosint和dlogint2812内部具有很多外设每个外设又可以产生一个或者多个中断请求对于2812的cpu而言它没有足够的能力去同时处理所有外设的中断请求

任务三流水灯定时控制1精品PPT课件

任务三流水灯定时控制1精品PPT课件
3.1 中断系统
以定时方式 控制流水灯
3. 2 定时器/计数器
3.1 中断系统
本节主要介绍中断的概念、一个 完整的中断过程所包含的几个过程、 MCS-51单片机是如何来实现中断的? 我们怎么利用MCS-51单片机的中断 资源为我们的应用系统的中断服务
3.1.1中断的概念
计算机设置中断的目的:
在CPU与外设交换信息时,存在着一个快 速的CPU与慢速的外设间的矛盾。为解决这 个问题,发展了中断的概念。
TF1
TF0
IE1 IT1 ITEI0 IRT0I
3)中断标志的产生:
对于定时/计数器0、1的中断标志TF0、TF1是在加1计数器加 到全零时自动将TF0、TF1置位(置1)
加1计数器
TF0
时钟脉冲
T0定时/计数器
对于串行口的中断标志RI和TI的产生:
当串行口作为接收数据时,当接收允许时,根据设置的方式不 同,当连续接收到8位(或9位)数据时,RI置1;
2) 中断优先级结构
MCS一51中断系统具有两级优先级它们遵循下列两条基本规则:

(1)低优先级中断源可被高优先级中断源所中断,而高优先级中断源不能被任 何中断源所中断。
(2)一种中断源(不管是高优先级或低优先级)一旦得到响应,与它同级的中断 源不能再中断它。
(3)当同时收到几个同一优先级的中断时,响应哪一个中断源取决于内部查询 顺序。其优先级由高到低排列如下:
3.1.2 MCS-51单片机中断系统
高级中断请求
自然优先级
IT0=0
INT0 IT0=1
T0
IT1=0
INT1 IT1=1
T1
TXD RXD
当串行口作为发送数据时,当发送完一帧数据(根据设置的方 式不同,当连续发送了8位(或9位)数据时),TI置1。

键控双向流水灯PPT课件

键控双向流水灯PPT课件

2021/3/12
12
2.下降沿触发方式键控流水灯的程序
FX BIT 00H ORG 0000H LJMP MAIN ORG 0003H LJMP INT0 ORG 0013H LJMP INT1 ORG 0030H
;位地址00H命名为FX
;转移到主程序 ;外中断0服务程序入口 ;转移到外中断0服务程序 ;外中断1服务程序入口 ;转移到外中断1服务程序
省 略,
;4条清零标志位的指令可以
SETB EX0 ;开外中断0
SETB EX1 ;开外中断1
SETB EA
;开总中断
MOV A,#0FEH ;显示代码初值送累加器 A
2021/3/12
10
K0:MOV P0,A 灭
;把显示代码传送到P0口输 出,控制LED 亮
JB FX,K;FX=1(00H位为1),移至K1, 执行 右移
LJMP INT1
;转移到外中断1服务程序
2O02R1/3G/12 0030H
9
MAIN: MOV SP,#5FH ;设置堆栈栈底
CLR IT0
;设置外中断0为低电平触发
CLR IT1
;设置外中断1为低电平触发
CLR PX0
;设置外中断0为低优先级
CLR PX1
;设置外中断1为低优先级,由
于复位时被清零,以上
SETB EX0 ;开外中断0
SETB EX1 ;开外中断1
SETB EA ;开总中断
样。
;*******
以下和程序(1)完全一
MOV A,#0FEH;显示代码初值送累加器A
2021/3/12
14
K0:MOV P0,A ;把显示代码传送到P0口输出, 控制LED亮灭

单片机控制流水灯

单片机控制流水灯

单片机控制流水灯前言随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯不断变化闪烁。

LED灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市建筑物已经成为一种时尚。

但目前市场上各式样的LED灯控制器大多数用全硬件电路实现,电路结构复杂、功能单一,这样一旦制作成品只能按照固定的模式闪亮,不能根据不同场合、不同时间段的需要来调节亮灯时间、模式、闪烁频率等动态参数。

这种彩灯控制器结构往往有芯片过多、电路复杂、功率损耗大等缺点。

此外从功能效果上看,亮灯模式少而且样式单调,缺乏用户可操作性,影响亮灯效果。

因此有必要对现有的彩灯控制器进行改进。

流水灯是一串按一定的规律像流水一样连续闪亮。

流水灯控制是可编程控制器的一个应用,其控制思想在工业控制技术领域也同样适用。

流水灯控制可用多种方法实现,但对现代可编程控制器而言,利用移位寄存器实现最为便利。

通常用左移寄存器实现灯的单方向移动;用双向移位寄存器实现灯的双向移动。

本案例利用价格低廉的AT89C52系列单片机控制基色LED灯泡从而实现丰富的变化。

目录前言 (1)1、课程设计的目的和要求 (3)设计目的 (3)设计要求 (4)2、设计方案选择 (4)3、硬件设计 (4)设计思路 (4)流水灯电路原理图 (5)元件清单 (6)硬件电路模块分析 (6)主要元件说明 (10)振荡器特性 (13)芯片擦除 (13)4、软件设计 (14)主程序设计 (14)程序流程图 (14)5、使用keil、proteus软件调试仿真说明 (14)仿真过程 (14)仿真结果 (14)6、结束语 (15)7、参考文献 (16)1、课程设计的目的和要求设计目的近年来随着科技的发展,单片机的应用正在不断走向深入,同时带动传统控制检测日新月异更新,在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象点的软件结合,加以完善。

流水灯的PLC控制PPT课件

流水灯的PLC控制PPT课件

.
3
提出任务
.
4
任务一 认识PLC模块
PLC模块
.
5
任务一 认识PLC模块
电源开关
RUN/STOP
输入公共端 24V负极
24V正极
按钮
.
输出外接端子 指示灯
输出公共端 5组输出端子
找一找
型号 输入端子 输入外接端子
6
任务二PLC接线
活动一 识别输入输出元件
输入元件
电件
2. 将指示灯、电源串 联连接在对应Y端子与 对应输出公共端子之 间
3. 两组输出端子使
用同一电源时,可将
两个公共端连接在一

9
任务二PLC接线
活动四 根据接线图完成输入输出接线
输入接线
断电操作 轻拔轻插
先将所有元件首端与X端子连 接,然后尾端相连回COM
不回COM
.
10
任务二PLC接线
活动四 根据接线图完成输入输出接线 接线方法
观察程序运行,总结PLC输入输出控制原理: 外接开关闭合时,相应输入继电器线圈通电,获得输 入信号,触点动作;
当输出继电器线圈通电时,其触点动作,接通相应负 载工作。
.
14
总结与评价
通过让流水灯亮起来 1.认识了PLC模块 2.会输入输出接线 3.理解了PLC输入输出控制原理
检查任务完成情况,表扬与批评
按钮K1 X1 停止 指示灯L1 Y1
指示灯L2 Y2
指示灯L3 Y3
指示灯L4 Y4
指. 示灯L5 Y5
8
任务二PLC接线
活动三 K0 K1
根据地址分配表画接线图
接线规则
X0 X1 COM

流水灯ppt

流水灯ppt

作品介绍完毕
谢谢观看
电子信息学院、通信工程 e Chip Microcomputer)简称单片机,是指集


成在一块芯片上的计算机,它具有结构简单、控制功能强、可靠性高、 体积小、价格低等优点。单片机技术作为计算机技术的一个重要分支, 广泛的应用于工业控制、智能化仪器仪表、家用电器、电子玩具等各 个领域。 近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同 时带动传统控制检测日新月异更新,在实时检测和自动控制的单片机 应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面的 知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点 的软件结合,加以完善。 本设计通过用汇编语言对8952单片机写程序实现了对8个发光二极管的 自如控制,并具有复位和中断功能,另外加上了一组静态数码管以显 示流水灯的花样计数。根据设计要求基本达到了预期的目的。 正文首先介绍本课题的背景、研究意义及完成的任务功能;简单描述 元器件和方案的论证;系统硬件的工作原理和软件的设计;最后对本 设计进行了总结。 关键词:单片机 89c52 发光二极管 中断 复位 汇编语言
硬件简单,但程序复杂,代码多,且单片机软件开销大, 时间信息也不易长期保存,准确性很低,极易受影响。
2、控制选择方案
直接法:我们为了简便操作直接使用开关键切换流水
灯的不同变化。
整体设计

关键词:模块模拟
实物图
总结与心得
在本次设计的过程中,我们发现很多的问题,遇到了很多麻烦,有的问题其 实很简单,主要是对知识的掌握程度不够,扩展知识欠缺,这就要求我们在 以后的学习中,应该注意到这一点,并且应该多读一些课外的文献,只靠书 本上的知识远远不够。更重要的是我们要学会把从书本中学到的知识和实际 的电路联系起来,用实践巩固理论,用理论优化实践,这不论是对我们以后 的就业还是学习,都会起到很大的促进和帮助。 在焊接过程中,我们意识到细心和严谨的精神是必不可少,在焊接电路和调 试硬件中不自觉地得到了锻炼。 通过本次课程设计,巩固了我们学习过的专业知识,也使我们把理论与实践 从真正意义上相结合了起来;考验了我们借助互联网络搜集、查阅相关文献 资料,和组织材料的综合能力;从中可以自我测验,认识到自己哪方面有欠 缺、不足,以便于在日后的学习中得以改进、提高!也提醒我们,只有通过 团队合作才能制作出优秀的设计,闭门造车不会取得实质性的成功。此次课 程设计,我们也学到了很多课内学不到的东西,比如独立思考解决问题,出 现差错的随机应变,和与人合作共同提高,都受益非浅。 经过这些天的设计制作,在老师的悉心指导和同学们的热情帮助下,我们终 于完成了这次的设计,同时也增加了我们以后学习的信心和热情。再次感谢 在这次设计中帮助我们的指导老师和同学!
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

应和中断服务);
待CPU将事件B处理完毕后,再回到原来事件A被中
断的地方继续处理事件A(中断返回)。 事件A 什么
中断过程
中断请求→中断响应→中断服务→中断返回
事件B
是中
断 事件B的 ? 处理过程
中断源
80C51单片机有5个中断源。见下表
中断源 外部中断 INT 0 定时器T0中断 外部中断 INT 1 定时器T1中断 串行口中断
}
主程序流程图 图
子程序流程
关键程序代码(一)
void main(void)
{
TMOD = 0x01;
TH0 = (65536 - 10000) / 256;
TL0 = (65536 - 10000) % 256;
TR0 = 1;
ET0 = 1;

PT0 = 1;

IT0 = 1;
1 2 3 4 5 6 7 8
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
AT89C51
P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7
39 38 37 36 35 34 33 32
TR0 = 1;
ET0 = 1;
//允许T0中断

PT0 = 1;
//设定T0为高优先级
IT0 = 1;

EX0 = 1;

EA = 1;
//外部中断输入下降沿有效 //允许X0中断 //开放总中断

temp = 0xfe;
P1 = temp;
while(1);
}
void T0_int(void) interrupt 1 //每隔10ms执行一次
//定义位变量
//-------------------------------------------
void main(void)
{
TMOD = 0x01;
//设定T0定时方式1
TH0 = (65536 - 10000) / 256; //定时10ms12MHz
TL0 = (65536 - 10000) % 256;
说明
从P3.2引脚引入的外部中断申请 定时器T0溢出时引发中断申请 从P3.3引脚引入的外部中断申请 定时器T1溢出时引发中断申请 一次串行发送或接收完成后,发出中断申 请
调试手段
KEIL的使用 画仿真硬件图 KEIL与proutes联机调试
实训心得
由于时间仓促,知识使用能力范围有限,对 中断理解不够,此次PPT效果不是很好,但 还是自己课后时间做出来的,实训过程中, 多次出现错误调试不出来也很着急,着急是 没用的,于是请教了同学,看了上学期的中 断内容,自己运用的是外部中断利用按键的, 首先确定INT0是P3.2口,还有就是延时时 间用计数次数乘上定时时间。如延时 0.5S=50次*10000次*1uS,这些设定好了 还有注意的是要去除按键的消抖。
中断控制LED花样流水灯
姓名:杨凡 学号:10030208
题目内容介绍
实验效果:LED先自高位向低位依次亮。 中断效果:按键一次会中断当前效果,执
行反效果 定时和按键,都采用了中断方式。即采用
定时器0中断来控制延时时间,用外部中断 0进行方向控制;
硬件原理图
D1 D2 D3 D4 D5 D6 D7 D8
{
unsigned char k;
j0 = ~j0;
//改变运动方向

for(k = 200; k > 0; k--); //延时一会再退出,以避免抖动
Hale Waihona Puke }单片机中的中断 CPU在处理某一事件A时,发生了另一事件B请求
CPU迅速去处理(中断发生或中断请求);
CPU暂时中断当前的工作,转去处理事件B(中断响
LED-YELLOLWED-YELLOLWED-YELLOLWED-YELLOLWED-YELLOLWED-YELLOLWED-YELLOLWED-YELLOW
RN1
1
16
2
15
3
14
4
13
5
12
6
11
7
10
8
9
300
U1
19 XTAL1 18 XTAL2
9 RST
29 30 31
PSEN ALE EA
{
TH0 = (65536 - 10000) / 256; //定时10ms12MHz
TL0 = (65536 - 10000) % 256;
i++;
if(i >= 100) {

i = 0;

if(j0 == 0) temp = _c rol_(temp, 1);

if(j0 == 1) temp = _c ror_(temp, 1);
10 11 12 13 14 15 16 17
R1
PULLUP
程序
#include <reg52.h> #include <intrins.h> unsigned char i = 0, temp;
unsigned char bdata j;
//在位寻址区定义字节变量
sbit j0 = j ^ 0;

P1 = temp;
}}
//-------------------------------------------
void X0_int(void) interrupt 0 using 1
{
unsigned char k;
j0 = ~j0;
//改变运动方向

for(k = 200; k > 0; k- -); //延时一会再退出,以避免抖动
有效

EX0 = 1;

EA = 1;

temp = 0xfe;
P1 = temp;
while(1);
}
//设定T0定时方式1 //定时10ms12MHz
//允许T0中断 //设定T0为高优先级
//外部中断输入下降沿 //允许X0中断
//开放总中断
关键程序代码(二)
void X0_int(void) interrupt 0 using 1
P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15
21 22 23 24 25 26 27 28
P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1
P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD
相关文档
最新文档