单片机中移位指令D1灯到D8灯依次点亮怎样编程?

单片机中移位指令D1灯到D8灯依次点亮怎样编程?,第1张

#include<reg52.h>

#include <intrins.h>

void main()

{

unsigned int a

P0=0xfe

while(1)

{

for(a=30000a>0a--)

P0=_crol_(P0,1)

}

}

其中使用这个#include <intrins.h>头文件,就是后面P0=_crol_(P0,1) 要用的移位指令 。

 摘 要:介绍了单片机实现多路灯光自动控制系统的软、硬件设计。

关键词:单片机 自动控制 可控硅 抗干扰

利用单片机丰富的软硬件资源实现对各种广告牌多路灯光自动控制,与传统的电子线路控制器相比,具有可编程、体积小、控制灵活、 *** 作方便、控制时间可变可调等优点。

我们为呼市邮政局设计并安装了上述单片机多路灯光自动控制系统。下面就该系统的软、硬件设计作介绍。

1 系统结构及工作原理

系统整体结构如图1。

图1 系统结构

8031单片机是该系统的核心部件,其主要功能:(1)灯光控制的软件编程;(2)干扰信号的处理及复位;(3)光强及时间定时的检测及控制。

单片机的控制程序通过对光强或时间的检测,自动开启(夜间)或关闭(白天)灯光系统,每1路灯光设备与8031内存控制位相对应,单片机通过P3.0(RXD)和P3.1(TXD)多功能口,利用串行通信方式0实现不同控制代码的输出,从而完成了多路灯光设备各种变化的自动循环显示。

2 8031单片机控制系统功能分析

2.1 光强或时间定时的检测及控制

如图2所示,当8031单片机P1.4的控制开关拨到+5V时,系统的开启或关闭由光强控制。这时,当光线较强时(白天),光耦二极管电阻变小,三极管Q1导通,P1.7为低电平;当光线暗时(夜间)光耦二极管变大,三极管Q1截止,P1.7为高电平。8031单片机控制程序每隔一定时间(约5ms)采样P1.7端的状态,然后根据其高低电平选择开启或关闭相应的灯光控制代码发送。图2中与光耦二极管并联的可调电位器可以调整三极管Q1的截止导通状态,从而实现对光控的微调。

图2 光耦电路

当P1.4拨至接地状态时,8031单片机程序进入时间控制子程序,8031单片机把内部定时器0设置成日历时钟计数(其初值可以用按钮设置),当程序查询到表格内的开启或关闭初值(表格的初值可通过按钮及数码管显示来输入或修改)与单片机时钟当前值相同时,则自动发送相应的开启或关闭输出控制代码。

2.2 双向可控硅控制电路

由于负载一般为大功率器件(电压从几百伏至上千伏,电流从几安培至几十安培),因此,8031单片机工作部分与可控硅触发部分采用MOC3021双向可控硅输出型光电耦合器,图3为1路可控硅触发控制电路。

图3 可控硅触发电路

可控硅TR的门极触发电流为50mA,触发电压为2V,则最小触发电压为:

VT=R1,IGT+VGT+VTM=300×0.05+2+3=20V

对应的最小控制角α为:

其中:IGT为可控硅TR的最小触发电流,VGT为可控硅TR的最小触发电压,VTM为MOC3021输出压降(3V),Vp为交流工作电压的峰值。

在使用中发现,当感性负载时,有时会引起可控硅误触发。经分析发现,当感性负载时,由于电压上升率dv/dt较大,在阻断状态下,可控硅的PN结相当于1个电容,当突然受到正向电压、充电电流过门极PN结时,起到了触发电流的作用,造成MOC3021的输出回路可控硅误导通。为此,我们对上述电路进行了修正,如图4所示。在输出回路中加入R2和C1组成RC回路,降低dv/dt。按照MOC3021的技术指标,允许最大的电压上升率dv/dt=10V/s,结温上升时dυ/dt下降,在极端的工作条件下,dv/dt=0.8V/s。

图4 修改后的触发电路

R2、R1之和与最小触发电压与可控硅门极电流的关系为:

C1取0.2μF。

同理,在TR输出端加上RC滤波网络,从而使TR输出电压上升率下降。

2.3 单片机工作回路的干扰及解决措施

由图1可知,光耦电路利用MOC4021将输入弱信号与输出强信号进行隔离,但在实际运行时,单片机系统仍有较强的干扰信号存在,常常出现死机或程序飞跑现象。分析认为,由于输出的大电流及电压均工作在开关状态,输出高次谐波通过电源回路对8031单片机产生了较大的影响,因此,我们设计了电源滤波电路及硬件复位电路,对电路的干扰进行了有效的控制。其中,硬件复位电路如图5所示。图5中74LS123为双路可再触发单稳态多谐振荡器,通过外接阻容参数,可产生不同宽度的正负脉冲,其真值表如表1。

图5 复位电路

表1 74LS123真值表

输 入 输 出

delete A B Q Q

 L X X L H

 X H X L H

 X X L L H

 H L ^  

 H I H  

 L H  

由表1及图5电路可知:由于1脚A接地,2脚B接8031单片机P1.0,正常运行时,循环程序不断从P1.0发送代码信号,使2脚不断有上升沿出现,因此,13脚保持高电平,则5脚输出低电平,保持8031RESET脚低电平的需要。当程序飞跑或死机时,2脚电位不再变化,使5脚产生一高电平脉冲,促使8031复位,重新启动。

3 系统结构特点及应用范围

该系统软硬件均采用模块化结构,1块控制板能控制16路输出,输出信号通过8031串行口RXD及TXD端经74LS164串入并出移位寄存器输出,因此,软件输出代码高达上千路信号,硬件控制板根据需要可以任意扩充,只要电源变压功率相应增大即可。该系统可广泛应用于霓红灯,多路塑料管灯及多路色灯的控制。

另外,系统具有与微机串行口RS-232的通信接口,必要时可以与微机连接,这样,多路灯光控制参数及时间控制参数在微机上可随时修改,使控制变得更加灵活。

作者单位:呼和浩特内蒙古大学电子工程系(010021)

参考文献

 1 余永权.单片机应用系统的功率接口技术.北京:北京航空航天大学出版社,1992;104~108

 2 李树华.IBM-PC微机与发光管显示屏的连网通讯.内蒙古大学学报(自然科学版),1993;(4):441~443

 3 Xicor Inc.New Product and Applications Information for Design engineers.EDN,199439(25):159~160


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11267590.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存