avr單片機(jī)proteus仿真第四課:控制繼電器
繼電器(Relay),作用是用弱電控制強(qiáng)電。比如,我們用avr單片控制一個(gè)220V電壓的燈泡,這就必須用到繼電器。
本課用avr單片機(jī)來(lái)控制繼電器的吸合與斷開(kāi)。
Proteus仿真實(shí)驗(yàn)器件:
1 atmega128一塊
2 button,按鍵一個(gè)
3 relay,通用繼電器一個(gè),并把繼電器的Component Value設(shè)置為5V
4 pnp三極管一個(gè)
5 LAMP,燈泡一個(gè)改為220V
6 resistor 1k
7 DIODE 二極管一個(gè)
這個(gè)程序?qū)嶋H上很簡(jiǎn)單,主要要學(xué)習(xí)繼電器的用法,注意的是,繼電器必須接一個(gè)二極管。
仿真程序如下:
#include
#include
#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);
}
}
}