SENSOR ALARM
PROTEUS 8 PROFESSIONAL
Sebelum memulai langkah kerjanya,kita harus memiliki software
proteus 8 terlebih dahulu.Jika belum ada lakukan penginstall-an terlebih
dahulu.
Jika software telah siap,sebaiknya kita mengetahui komponen –
komponen apa saja yang diperlukan untuk membuat rangkaian pembaca suhu.Adapun
komponen – komponen tersebut sebagai berikut :
1. ATMEGA16
2. Buttery
3. Button
4. Cap
5. Cap-pol
6. Crystal
7. Lamp
8. LED-Blue
9. LM016L
10. Motor
11. Relay
12. Res
13. Switch
| ||
LANGKAH KERJA
1.
Pastikan
komputer ada telah menginstall perangkat lunak proteus 8 professional
terlebih dahulu.
2.
Jika
telah melakukan penginstallan,selanjutnya buka proteus 8 professinal.
3.
Lalu
pilih File -> New Project -> Next,klik create a schematic...-> Next
-> Next -> Finish.
4.
Ketikkan
keywodr komponen yang ingin dicari misal atmega 16,pilih atmega yang dicari
-> klik -> enter.Lakukan hal yang sama untuk mencari komponen lain.
5.
Kemudian
klik ATMEGA16 letakkan pada kotak dan
Klik juga LM016L lalu tempatkan kedalam kotak.
6.
Kemudian
sambungkan dengan garis,lalu beri output dan ground.
7.
Selanjutnya
tambahkan relay dan sambungkan pada ATMega16 lalu beri ground.
8.
Setelah
itu tambahkan battery dan buzzer.
9.
Kemudian
letakkan juga LED-blue sebanyak 4 buah,tambahkan input dan juga Dclock.
10.
Tambahkan
juga switch,sambungkan dengan output lalu beri ground :
11.
Terakhir
sambungkan resistor,crystal,cap,cap-pol,dan button sabagai komponen
terakhir.Lalu tambahkan input,output,dan ground :
Untuk menjalankan rangkaian nya maka,kita
perlu memasukkan program kedalam IC-nya dengan menggunakan CODE VISION
AVR.Adapun skrip yang di masukkan atau di tambahkan dalam CODE VISION AVR yakni
sebagai berikut :
/*******************************************************
This program
was created by the CodeWizardAVR V3.23a
Automatic
Program Generator
© Copyright
1998-2015 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com
Project :
Version :
Date : 03/11/2015
Author :
Company :
Comments:
Chip
type : ATmega16
Program
type : Application
AVR Core
Clock frequency: 12,000000 MHz
Memory
model : Small
External RAM
size : 0
Data Stack
size : 256
*******************************************************/
#include
<io.h>
//
Alphanumeric LCD functions
#include
<alcd.h>
#include
<delay.h>
// Declare
your global variables here
void
main(void)
{
// Declare
your local variables here
//
Input/Output Ports initialization
// Port A
initialization
// Function:
Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In
DDRA=(0<<DDA7)
| (0<<DDA6) | (0<<DDA5) | (0<<DDA4) | (0<<DDA3) |
(0<<DDA2) | (0<<DDA1) | (0<<DDA0);
// State:
Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T
PORTA=(0<<PORTA7)
| (0<<PORTA6) | (0<<PORTA5) | (0<<PORTA4) | (0<<PORTA3)
| (0<<PORTA2) | (0<<PORTA1) | (0<<PORTA0);
// Port B
initialization
// Function:
Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In
DDRB=(0<<DDB7)
| (0<<DDB6) | (0<<DDB5) | (0<<DDB4) | (0<<DDB3) |
(0<<DDB2) | (0<<DDB1) | (0<<DDB0);
// State:
Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T
PORTB=(0<<PORTB7)
| (0<<PORTB6) | (0<<PORTB5) | (0<<PORTB4) | (0<<PORTB3)
| (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0);
// Port C
initialization
// Function:
Bit7=Out Bit6=Out Bit5=Out Bit4=Out Bit3=Out Bit2=Out Bit1=Out Bit0=Out
DDRC=(1<<DDC7)
| (1<<DDC6) | (1<<DDC5) | (1<<DDC4) | (1<<DDC3) |
(1<<DDC2) | (1<<DDC1) | (1<<DDC0);
// State:
Bit7=0 Bit6=0 Bit5=0 Bit4=0 Bit3=0 Bit2=0 Bit1=0 Bit0=0
PORTC=(0<<PORTC7)
| (0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) | (0<<PORTC3)
| (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0);
// Port D
initialization
// Function:
Bit7=Out Bit6=Out Bit5=Out Bit4=Out Bit3=Out Bit2=Out Bit1=Out Bit0=Out
DDRD=(1<<DDD7)
| (1<<DDD6) | (1<<DDD5) | (1<<DDD4) | (1<<DDD3) |
(1<<DDD2) | (1<<DDD1) | (1<<DDD0);
// State:
Bit7=0 Bit6=0 Bit5=0 Bit4=0 Bit3=0 Bit2=0 Bit1=0 Bit0=0
PORTD=(0<<PORTD7)
| (0<<PORTD6) | (0<<PORTD5) | (0<<PORTD4) | (0<<PORTD3)
| (0<<PORTD2) | (0<<PORTD1) | (0<<PORTD0);
//
Timer/Counter 0 initialization
// Clock
source: System Clock
// Clock
value: Timer 0 Stopped
// Mode:
Normal top=0xFF
// OC0
output: Disconnected
TCCR0=(0<<WGM00)
| (0<<COM01) | (0<<COM00) | (0<<WGM01) | (0<<CS02) |
(0<<CS01) | (0<<CS00);
TCNT0=0x00;
OCR0=0x00;
//
Timer/Counter 1 initialization
// Clock
source: System Clock
// Clock
value: Timer1 Stopped
// Mode:
Normal top=0xFFFF
// OC1A
output: Disconnected
// OC1B
output: Disconnected
// Noise
Canceler: Off
// Input
Capture on Falling Edge
// Timer1
Overflow Interrupt: Off
// Input
Capture Interrupt: Off
// Compare A
Match Interrupt: Off
// Compare B
Match Interrupt: Off
TCCR1A=(0<<COM1A1)
| (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) | (0<<WGM11)
| (0<<WGM10);
TCCR1B=(0<<ICNC1)
| (0<<ICES1) | (0<<WGM13) | (0<<WGM12) | (0<<CS12) |
(0<<CS11) | (0<<CS10);
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
//
Timer/Counter 2 initialization
// Clock
source: System Clock
// Clock
value: Timer2 Stopped
// Mode:
Normal top=0xFF
// OC2
output: Disconnected
ASSR=0<<AS2;
TCCR2=(0<<PWM2)
| (0<<COM21) | (0<<COM20) | (0<<CTC2) | (0<<CS22) |
(0<<CS21) | (0<<CS20);
TCNT2=0x00;
OCR2=0x00;
//
Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=(0<<OCIE2)
| (0<<TOIE2) | (0<<TICIE1) | (0<<OCIE1A) | (0<<OCIE1B)
| (0<<TOIE1) | (0<<OCIE0) | (0<<TOIE0);
// External
Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=(0<<ISC11)
| (0<<ISC10) | (0<<ISC01) | (0<<ISC00);
MCUCSR=(0<<ISC2);
// USART
initialization
// USART
disabled
UCSRB=(0<<RXCIE)
| (0<<TXCIE) | (0<<UDRIE) | (0<<RXEN) | (0<<TXEN) |
(0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
// Analog
Comparator initialization
// Analog
Comparator: Off
// The Analog
Comparator's positive input is
// connected
to the AIN0 pin
// The Analog
Comparator's negative input is
// connected
to the AIN1 pin
ACSR=(1<<ACD)
| (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) |
(0<<ACIC) | (0<<ACIS1) | (0<<ACIS0);
SFIOR=(0<<ACME);
// ADC
initialization
// ADC
disabled
ADCSRA=(0<<ADEN)
| (0<<ADSC) | (0<<ADATE) | (0<<ADIF) | (0<<ADIE) |
(0<<ADPS2) | (0<<ADPS1) | (0<<ADPS0);
// SPI
initialization
// SPI
disabled
SPCR=(0<<SPIE)
| (0<<SPE) | (0<<DORD) | (0<<MSTR) | (0<<CPOL) |
(0<<CPHA) | (0<<SPR1) | (0<<SPR0);
// TWI
initialization
// TWI
disabled
TWCR=(0<<TWEA)
| (0<<TWSTA) | (0<<TWSTO) | (0<<TWEN) | (0<<TWIE);
// Alphanumeric
LCD initialization
//
Connections are specified in the
//
Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
// RS - PORTC
Bit 0
// RD - PORTC
Bit 1
// EN - PORTC
Bit 2
// D4 - PORTC
Bit 4
// D5 - PORTC
Bit 5
// D6 - PORTC
Bit 6
// D7 - PORTC
Bit 7
//
Characters/line: 16
lcd_init(16);
lcd_init(16);
lcd_clear();
lcd_gotoxy(0,0);
lcd_putsf("Vinna
Vikauly");
lcd_gotoxy(0,1);
lcd_putsf("-----");
delay_ms(500);
while(1)
// Place your code here
if (PINA.0==1)
{
lcd_clear();
lcd_gotoxy(0,1);
lcd_putsf("Alarm");
lcd_gotoxy(0,0);
lcd_putsf("Aktif");
PORTD=0xFF;
delay_ms(250);
}
else if (PINA.0==0)
{
lcd_clear();
lcd_gotoxy(0,1);
lcd_putsf("Alarm");
lcd_gotoxy(0,0);
lcd_putsf("Mati");
PORTD=0x00;
delay_ms(250);
}
else
{
lcd_clear();
lcd_gotoxy(0,0);
lcd_putsf("anda salah");
}
}
|
UNTUK MELIHAT GAMBAR PROJECT DIATAS (SENSOR ALARM),KLIK LINK BERIKUT INI
SEKIAN TERIMA KASIH,SELAMAT MENCOBA ^_^
Tidak ada komentar:
Posting Komentar