APP下载

单片机在舞台灯光彩灯控制系统中的应用

2018-08-31文可

西部论丛 2018年7期
关键词:电子技术单片机

文可

摘 要:舞台灯光彩灯控制系统要求控制灵活多变,通过单片机改造舞台灯光彩灯控制系统,可以提高控制的灵活性和稳定性,减轻了操作者的劳动强度,经济实惠又能获得很好的控制效果。

关键词:舞台灯光单片机 单片机 电子技术

电子技术的迅猛发展,尤其单片机更广泛地应用于军事、工业、家用电器、智能玩具、便携式智能仪表等领域,使产品功能、精度和质量大幅度提高,电路简单、可靠性高且成本低廉、故障率低。舞台灯光彩灯控制系统要求控制灵活多变,而老旧的设备中多为手动和半自动控制,通过单片机控制舞台灯光彩灯系统,减轻了操作者的劳动强度,提高控制的灵活性和稳定性,ATmega系列单片机写入新软件时无需外部器件,通过任何接口都可以进行编程,比较实惠的是使用串行ISP(通过PC机RS232口或打印口)在线编程,降低了使用成本,可直接在电路板上进行程序修改、烧录等操作,方便产品升级;新工艺AVR器件, 程序存储器擦写可达1万次以上,不再有报废品。

一.数字I/O的设置

必须设置很多寄存器对引脚进行初始化处理,才能使引脚具备有数字输入和输出功能。

DDRB 方向寄存器,该状态为“1”时,端口就作为输出。该状态为“0”时,端口就作为输入。

PORTB 数据寄存器,当DDRB 为“1”时,PORTB的寄存器位和对应PB引脚同步。

PINB 引脚输入寄存器,当DDRB 为“0”时,PINB的寄存器位和对应PB引脚同步,此时PORTB的寄存器位为“1”时,启动对应PB引脚上拉电阻,PORTB的寄存器位为“0”时,关闭对应PB引脚上拉电阻,该引脚为高阻状态。

用ATmega8单片机对舞台灯光彩灯控制系统进行改造工程中,可对I/O 口可进行以下设置:

1.将端口D设置为输入口(PD0至PD7)。端口D为8 位双向I/O 口,具有可编程的内部上拉电阻。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口D处于高阻状态。2. 将端口B设置为输出口(PB0至PB7)。端口B 为8 位双向I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。

二. 舞台灯光彩灯控制系统程序编写

舞台灯光彩灯控制一般要求有顺序控制(流水灯控制)、闪烁控制、点动控制、自锁控制等等,ATmega系列单片机可通过编译软件用C语言编程,这样大大提高了编程速度。例如顺序控制程序的编写:

程序 注释

#include //包含定义ATmega8寄存器头文件

void Delay() //延时函数

{

int k,j; //定义两个整形的变量

for (k=0;k<=500;k++) //执行循环语句,消耗0.5秒时钟周期

for (j=0;j<=1000;j++);

}

void LED_On(int a) //自定义的可带参数移位函数

{

PORTB = (0x01<

Delay(); //延时0.5秒

}

void main() //C语言主函数

{

int i; //定义一个整型变量

PORTB=0x00; //PB0~PB7低电平

DDRB=0xff; //PB0~PB7为输出

PORTD=0xff; //PD0~PD7高電平

DDRD=0x00; //PD0~PD7为输入

while (1) //执行死循环

{

if((PIND&0x01)==0x00) //按下按钮后PD0接通

for (i = 0; i < 8; i++) //左移8次

LED_On(i);

for (i = 8; i > 0; i--) //右移8次

LED_On(i);

for (i = 0; i < 8; i += 2) //左移4次

LED_On(i);

for (i = 7; i > 0; i -= 2) //右移4次

LED_On(i);

}

}

三.按钮输入电路

启动按钮对应PD口引脚上拉电阻,PORTD的寄存器位为“1”时,该引脚为高电平。以下是PD0和PD1的按钮输入电路:

四.继电器输出电路

输出对应的PB口引脚为低电平,PORTD的寄存器位为“0”。ATmega8单片机可直接驱动可控硅SSR或继电器, 节省了外围驱动器件。以下是PB0的继电器输出电路:

参考文献:

[1] 佟云峰.《单片机原理及应用》机械工业出版社。2010.11

猜你喜欢

电子技术单片机
单片机在智能控制中的应用
微课在电子技术课程教学中的应用
EDA计算机仿真技术在“电子技术”教学的应用研究
单片机在电子技术中的应用和开发
电气工程及自动化技术的设计与运用
基于电子化发展下的医疗设备维修方式的发展新要求探讨
C8051F020与80C51单片机的异同点
单片机I/O口模拟串行通讯的C51实现方法
单片机调试方法的探讨
用PIC单片机制作的时间继电器