Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

15
Aplikasi Pemantauan Suhu menggunakan Mikrokontroler ATMega8535 Tahap I : Membuat Program di CVAVR Langkah-langkah : 1. Buka program CVAVR 2. File > New Kemudian Pilih Project > OK > Yes 3. Pilih jenis Mikrokontroler kemudian OK http://riyanto04.wordpress.com

description

Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

Transcript of Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

Page 1: Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

Aplikasi Pemantauan Suhu menggunakan Mikrokontroler ATMega8535

Tahap I : Membuat Program di CVAVRLangkah-langkah :

1. Buka program CVAVR

2. File > New Kemudian Pilih Project > OK > Yes

3. Pilih jenis Mikrokontroler kemudian OK

4. Setting Mikrokontroller sebagai berikut

http://riyanto04.wordpress.com

Page 2: Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

5. Klik File > Save Generate and Exit

http://riyanto04.wordpress.com

Page 3: Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

/*****************************************************This program was produced by theCodeWizardAVR V2.04.6 EvaluationAutomatic Program Generator© Copyright 1998-2010 Pavel Haiduc, HP InfoTech s.r.l.http://www.hpinfotech.com

Project : Version : Date : 8/30/2010Author : Freeware, for evaluation and non-commercial use onlyCompany : Comments:

Chip type : ATmega8535Program type : ApplicationAVR Core Clock frequency: 16.000000 MHzMemory model : SmallExternal RAM size : 0Data Stack size : 128*****************************************************/

#include <mega8535.h>

#include <delay.h>

#ifndef RXB8#define RXB8 1#endif

#ifndef TXB8#define TXB8 0#endif

#ifndef UPE#define UPE 2#endif

#ifndef DOR#define DOR 3#endif

#ifndef FE#define FE 4#endif

http://riyanto04.wordpress.com

Page 4: Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

#ifndef UDRE#define UDRE 5#endif

#ifndef RXC#define RXC 7#endif

#define FRAMING_ERROR (1<<FE)#define PARITY_ERROR (1<<UPE)#define DATA_OVERRUN (1<<DOR)#define DATA_REGISTER_EMPTY (1<<UDRE)#define RX_COMPLETE (1<<RXC)

// Get a character from the USART Receiver#ifndef _DEBUG_TERMINAL_IO_#define _ALTERNATE_GETCHAR_#pragma used+char getchar(void){char status,data;while (1) { while (((status=UCSRA) & RX_COMPLETE)==0); data=UDR; if ((status & (FRAMING_ERROR | PARITY_ERROR | DATA_OVERRUN))==0) return data; }}#pragma used-#endif

// Write a character to the USART Transmitter#ifndef _DEBUG_TERMINAL_IO_#define _ALTERNATE_PUTCHAR_#pragma used+void putchar(char c){while ((UCSRA & DATA_REGISTER_EMPTY)==0);UDR=c;}#pragma used-#endif

// Standard Input/Output functions

http://riyanto04.wordpress.com

Page 5: Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

#include <stdio.h>

#define ADC_VREF_TYPE 0x20

// Read the 8 most significant bits// of the AD conversion resultunsigned char read_adc(unsigned char adc_input){ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);// Delay needed for the stabilization of the ADC input voltagedelay_us(10);// Start the AD conversionADCSRA|=0x40;// Wait for the AD conversion to completewhile ((ADCSRA & 0x10)==0);ADCSRA|=0x10;return ADCH;}

// Declare your global variables here

void main(void){// Declare your local variables here

// Input/Output Ports initialization// Port A initialization// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00;DDRA=0x00;

// Port B initialization// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTB=0x00;DDRB=0x00;

// Port C initialization// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00;DDRC=0x00;

// Port D initialization// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

http://riyanto04.wordpress.com

Page 6: Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTD=0x00;DDRD=0x00;

// Timer/Counter 0 initialization// Clock source: System Clock// Clock value: Timer 0 Stopped// Mode: Normal top=FFh// OC0 output: DisconnectedTCCR0=0x00;TCNT0=0x00;OCR0=0x00;

// Timer/Counter 1 initialization// Clock source: System Clock// Clock value: Timer1 Stopped// Mode: Normal top=FFFFh// OC1A output: Discon.// OC1B output: Discon.// 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: OffTCCR1A=0x00;TCCR1B=0x00;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=FFh// OC2 output: DisconnectedASSR=0x00;TCCR2=0x00;TCNT2=0x00;OCR2=0x00;

http://riyanto04.wordpress.com

Page 7: Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

// External Interrupt(s) initialization// INT0: Off// INT1: Off// INT2: OffMCUCR=0x00;MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initializationTIMSK=0x00;

// USART initialization// Communication Parameters: 8 Data, 2 Stop, No Parity// USART Receiver: On// USART Transmitter: On// USART Mode: Asynchronous// USART Baud Rate: 19200UCSRA=0x00;UCSRB=0x18;UCSRC=0x8E;UBRRH=0x00;UBRRL=0x33;

// Analog Comparator initialization// Analog Comparator: Off// Analog Comparator Input Capture by Timer/Counter 1: OffACSR=0x80;SFIOR=0x00;

// ADC initialization// ADC Clock frequency: 1000.000 kHz// ADC Voltage Reference: AREF pin// ADC High Speed Mode: Off// ADC Auto Trigger Source: Free Running// Only the 8 most significant bits of// the AD conversion result are usedADMUX=ADC_VREF_TYPE & 0xff;ADCSRA=0xA4;SFIOR&=0x0F;

while (1) { // Place your code here putchar(read_adc(0)); delay_ms(1000); }}

http://riyanto04.wordpress.com

Page 8: Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

Tahap II : Membuat Database di M.Acces 2003Langkah-langkah :

1. Buka program M.Acces 20032. Klik File > New > Blank Database3. Simpan file misal db1.mdb4. Double Klik Create Table in Design View

5. Isikan Nama Field dan Tipe Data

6. Simpan Tabel misal Tabel1

http://riyanto04.wordpress.com

Page 9: Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

Tahap III : Membuat Program di Visual Basic 6Langkah-langkah :

1. Buka program VB 62. Ambil komponent yang diperlukan yaitu :

No Komponent Property Nilai Ket1. Command1 Caption connect2. Command2 Caption Hapus3. Command3 Caption Exit4. Text1 Text kosongkan5. Text2 Text kosongkan6. Check1 Caption Simpan ke database7. Frame1 Caption Data Masuk8. Timer1 Enable True

Interval 1000 1 detik9. Adodc1 CommandType 2-adCmdTable

ConnectionString

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\data.mdb;Persist Security Info=False

RecordSource Table110 DataGrid1 DataSource Adodc1

http://riyanto04.wordpress.com

Page 10: Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

Source Code :

Private Sub MSComm1_OnComm() Text1.Text = Round(Asc(MSComm1.Input) * 500 / 255)End SubPrivate Sub Command1_Click() If Command1.Caption = "connect" Then MSComm1.PortOpen = True Command1.Caption = "disconnect" Else MSComm1.PortOpen = False Command1.Caption = "connect" End IfEnd SubPrivate Sub Timer1_Timer() Text2.Text = Time If Check1 Then Adodc1.Recordset.AddNew Adodc1.Recordset.Fields(0).Value = Text2.Text Adodc1.Recordset.Fields(1).Value = Text1.Text Adodc1.Recordset.Update End IfEnd SubPrivate Sub Command3_Click() Adodc1.Recordset.DeleteEnd SubPrivate Sub Command2_Click() Unload MeEnd Sub

http://riyanto04.wordpress.com

Page 11: Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

Menghubungkan Adodc ke database M.Acces:

1. Pada komponen Adodc1 klik property ConnectionString …2. Pilih build > pilih provider kemudian isikan nama databasenya

3. Tes Connection > OK

http://riyanto04.wordpress.com

Page 12: Aplikasi Pemantauan Suhu Menggunakan Mikrokontroler Atmega8535

Hardware :

1. Modul Mikrokontroler ATMega85352. Downloader AVR3. Sensor Suhu LM354. Kabel Serial RS232

http://riyanto04.wordpress.com