avr单片机proteus仿真第四课:控制继电器

avr单片机proteus仿真第四课:控制继电器

 

继电器(Relay),作用是用弱电控制强电。比如,我们用avr单片控制一个220V电压的灯泡,这就必须用到继电器。

本课用avr单片机来控制继电器的吸合与断开。

Proteus仿真实验器件:

1 atmega128一块

2 button,按键一个

3 relay,通用继电器一个,并把继电器的Component Value设置为5V

4 pnp三极管一个

5 LAMP,灯泡一个改为220V

6 resistor 1k

7 DIODE 二极管一个

这个程序实际上很简单,主要要学习继电器的用法,注意的是,继电器必须接一个二极管。

仿真程序如下:

#include<avr/io.h>
#include<util/delay.h>
#define int8u unsigned char
#define int16u unsigned int

#define k1_down() (PINB & _BV(PB7))
#define relay_switch() PORTD^=_BV(PD4)

int main()
{
DDRD=0xff;
PORTD=0xff;
DDRB=0x00;
PORTB=0xff;
while(1)
{
  if(k1_down() )
 {
  while(k1_down() );
  relay_switch( );
  _delay_ms(20);
 }
}

}

 

 

posted @ 2011-11-24 23:57  proteus学习  阅读(2250)  评论(0编辑  收藏  举报