Tampilkan postingan dengan label ADC. Tampilkan semua postingan
Tampilkan postingan dengan label ADC. Tampilkan semua postingan

Sabtu, 11 Februari 2012

Pemrograman Bascom AVR Termometer Digital Dengan LM35 Berbasis Mikrokontroler ATMega32

Sore temen-temen, artikel Pemrograman Bascom AVR Termometer Digital Dengan LM35 Berbasis Mikrokontroler ATMega32 kali ini saya ingin sharing mengenai aplikasi termometer digital dengan LM35. Program yang dibuat dengan menggunakan BASCOM AVR dengan bahasa BASIC.

LM35 merupakan sensor suhu low cost yang sensitif dan presisi dengan satuan celcius, dengan keluaran tegangan analog yang sudah linier sehingga sensor ini sudah terkalibrasi. Jangkauan suhu yang dapat dideteksi oleh LM35 diantara -55 derajat sampai 150 derajat celcius. Keluaran analog nya linier 10.0 mV/ derajat celcius.
Berikut penampakan nya :

lm35
symbol lm35


Package
Untuk informasi lebih mengenai L35 ini, Temen-temen bisa download Datasheet LM35 DISINI

Berikut Rangkaian termometer digital nya :

Rangkaian

Kemudian untuk program dengan BASCOM AVR nya sebagai berikut :

'**********************************************************************************

Pemrograman Bascom AVR Termometer Digital Dengan LM35 Berbasis Mikrokontroler ATMega32
' program termometer digital
' http://goes-open.blogspot.com
' mirza dhanu sulistya
' tutorial

$regfile = "m32def.dat"
$crystal = 11059200

Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.3 , Db6 = Portc.2 , Db7 = Portc.1 , E = Portc.5 , Rs = Portc.7
Config Lcdbus = 4
Config Lcd = 16 * 2              ' lcd 16x2 karakter
Cursor Off                             ' menonaktifkan cursos LCD
Deflcdchar 0 , 14 , 10 , 14 , 32 , 32 , 32 , 32 , 32

Config Adc = Single , Prescaler = Auto , Reference = Internal

Dim A As Word , Volt As Word , Volt_d As Byte
Start Adc          ' memulai ADC

Cls                    'clear screen
Do                    ' memulai program

Locate 1 , 1      ' menempatkan karakter di LCD pada baris 1 kolom 1
Lcd "termometer Dgtal"       ' menampilkan tulisan
A = Getadc(0)
Volt = A * 5
Volt_d = Volt Mod 10
Volt = Volt / 20
Locate 2 , 1
Lcd Volt ; "," ; Volt_d

Locate 2 , 6
Lcd Chr(0) ; "C"
Loop

'**********************************************************************************
Pemrograman Bascom AVR Termometer Digital Dengan LM35 Berbasis Mikrokontroler ATMega32
Penjelasan :

$regfile = "m32def.dat" merupakan konfigurasi pustaka mikrokontroler yang digunakan (ATMega32)
$crystal = 11059200 crystal yang digunakan sebesar 11059200 Hz
Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.3 , Db6 = Portc.2 , Db7 = Portc.1 , E = Portc.5 , Rs = Portc.7  merupakan konfigurasi pin LCD yang digunakan dan dihubungkan ke PORTC
Deflcdchar 0 , 14 , 10 , 14 , 32 , 32 , 32 , 32 , 32 merupakan sebuah karakter 'derajat' pada LCD yang dibuat dengan LCD designer
Config Adc = Single , Prescaler = Auto , Reference = Internal merupakan konfigurasi ADC nya

A = Getadc(0)
Volt = A * 5
Volt_d = Volt Mod 10
Volt = Volt / 20
merupakan perhitungan data dari ADC

Lcd Chr(0) ; "C" merupakan pemanggilan karakter 'derajat' yang dibuat dengan LCD designer
Loop                  looping program

Pemrograman Bascom AVR Termometer Digital Dengan LM35 Berbasis Mikrokontroler ATMega32
Mungkin di postingan berikut nya saya akan memberikan tutorial untuk membuat karakter tertentu dengan fasilitas LCD designer pada BASCOM AVR. hehehee

Sekian artikel Pemrograman Bascom AVR Termometer Digital Dengan LM35 Berbasis Mikrokontroler ATMega32 Terimakasih sudah berkunjung mohon maaf jika ada kesalahan hehe semoga bermanfaat. 

Rabu, 08 Februari 2012

Komunikasi Serial ATMega32 dengan USB to serial TTL Converter

Artikel Komunikasi Serial ATMega32 dengan USB to serial TTL Converter kali ini, saya akan mengulas tentang komunikasi serial dengan mikrokontroler ATMega32. Protokol komunikasi yang sering digunakan untuk mengkomunikasikan sebuah piranti dengan komputer adalah komunikasi serial.

Artikel Komunikasi Serial ATMega32 dengan USB to serial TTL Converter, digunakan USB to Serial TTL converter untuk mengkomunikasikan antara mikrokontroler dengan komputer/laptop. input dari laptop/PC dengan USB sedangkan untuk menghubungkan ke mikrokontroler menggunakan PIN TX,RX dan GND.
Berikut penampakan nya :

Usb To Serial TTL Converter
Usb to serial TTL converter

Kenapa memakai Usb to serial TTL converter?? hehe
Tegangan komunikasi serial untuk mikrokontroler diantara 0V-3,3V akan tetapi untuk tegangan komunikasi serial komputer sekitar -15 sampai 15V. Untuk kedua piranti itu dapat berkomunikasi sehingga diperlukan sebuah converter agar level tegangan nya setara dan sama-sama dapat berkomunikasi.
Salah satu converter yang dapat digunakan adalah dengan menggunakan IC MAX232 dan dihubungkan dengan komputer lewat DB9. atau dapat juga dengan menggunakan kabel USB to serial converter.
usb+to+serial+kabel

microcontroller_uart_max232_circuit

Akan tetapi kedua piranti itu memiliki beberapa kelemahan, seperti kabel usb to serial yang relatif mahal, piranti yang lebih besar, ribet harus membuat rangkaian apabila akan menggunakan converter dengan DB9 dan IC max232.

Komunikasi Serial ATMega32 dengan USB to serial TTL Converter
Berikut hasil percobaan nya dengan hyperterminal:
serial 9600

serial 57600

Komunikasi Serial ATMega32 dengan USB to serial TTL Converter
Sudah teruji untuk Baudrate 300 - 57600
Berikut source code dengan Bascom AVR nya :
$regfile = "m32def.dat"
$crystal = 11059200
$baud = 300

Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.3 , Db6 = Portc.2 , Db7 = Portc.1 , E = Portc.5 , Rs = Portc.7
Config Lcdbus = 4
Config Lcd = 16 * 2
Cursor Off
Cls
Config Adc = Single , Prescaler = Auto , Reference = Avcc
Start Adc
Dim A As Word
Do
A = Getadc(1)
Locate 1 , 1
Lcd "akses ADC -EVA-"
Locate 2 , 1
Lcd "datanya=" ; A
Print "datanya=" ; A
Loop

Perintah yang paling utama untuk komunikasi serial dengan Bascom AVR :
$baud = 'kecepatan baudrate'   , digunakan untuk mengatur kecepatan baudrate
dan perintah Print" " untuk menampilkan data di PC/Laptop.

Kelebihan dari USB to Serial TTL Converter ini adalah :
- mudah penggunaan nya.
- praktis
- ekonomis
- kabel UpTo 1 meter.
- Baudrate teruji 300-57600

Bagi yang berminat untuk membeli USB TO SERIAL TTL CONVERTER ini dapat menghubungi saya di :
email : mirzadanu@ymail.com
atau Facebook : Mirza Dhanu/mirzadanu@gmail.com
atau juga COD disekitar area UGM Yogyakarta

DIJUAL MURAH MERIAH HANYA Rp. 40.000,- saja. Belum termasuk Ongkir.
Untuk pembelian 5 pcs atau lebih HANYA Rp. 35.000, - /Pcs.
Anda akan mendapatkan :
1 unit USB to Serial TTL Converter
1 unit CD berisi Driver, Tutorial Penggunaan, source code komunikasi serial.
1 Kemudahan untuk melakukan komunikasi serial untuk Tugas, Proyek, DLL.
hehehehee

Bagi yang memakai windows 7, dapat mendownload hyperterminal DISINI
Sekian Artikel Komunikasi Serial ATMega32 dengan USB to serial TTL Converter, mohon maaf apabila ada kesalahan semoga bermanfaat.
Bagaimana menurut Anda? Silahkan berkomentar.

Senin, 16 Januari 2012

Akses LCD 16x2 dan ADC dengan Bascom AVR

Wah jumpa lagi nh, akhir nya bisa update postingan lagi nih.
OK,pada artikel Akses LCD 16x2 dan ADC dengan Bascom AVR aku mau bercerita tentang LCD dan fasilitas ADC pada mikrokontroler. apa itu LCD?
LCD atau Liquid Crystal Display, merupakan suatu display ( penampil ) berbahan cairan kristal yang dioperasikan menggunakan sistem dotmatriks. LCD banyak ditemui dibeberapa alat elektronik, seperti meltitester digital, kalkulator, jam digital, dan lain-lain. Nah, pada artikel Akses LCD 16x2 dan ADC dengan Bascom AVR, yang aku bahas menggunakan LCD 16x2 karakter. dengan maksud 16 kolom dan 2 baris pada LCD.

nah ini dia si LCD nya (gambar 1) :

LCD
Gambar 1. LCD display 16x2

Pin DB0 - DB7 merupakan Data bit dari LCD, DB0 merupakan data bit ke-0 (LSB) dan DB7 data bit ke-7 MSB. E merupakan enable, R/W : Read/Write untuk memilih mode baca atau tulis. RS : Register Select jika 0: Register instruksi 1:data instruksi, VEE : untuk mengatur kontras LCD, VDD suplay tegangan untuk LCD 5volt. VSS : GND.

Kemudian untuk ADC, ADC merupakan fasilitas dari mikrokontroler untuk mengkonversi dari data analog menjadi data digital. Untuk pembacaan data analog apa mikrokontroler Atmega32 menggunakan PORT A, yang mempunyai 8 channel ADC internal.
Langsung saja ke contoh aplikasi pembacaan ADC menggunakan display LCD :

tes data ADC
Gambar 2. tes data ADC
ADC, dibaca pada PORTA.0 atau ADC channel 0, dari keluaran potensiometer 1K dan data yang telah diolah ditampilkan pada display LCD 16x2. untuk listing program nya dibawah ini :


$regfile = "m32def.dat"
$crystal = 12000000

Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5
Config Lcdbus = 4
Config Lcd = 16 * 2
Cursor Off

Config Adc = Single , Prescaler = Auto , Reference = Avcc
Start Adc

Dim Dataadc As Word

Cls
Do

Dataadc = Getadc(0)
Locate 1 , 1
Lcd "Tes Nilai Adc"
Waitms 100
Locate 2 , 1
Lcd "Data ADC=" ; Dataadc

Loop

Akses LCD 16x2 dan ADC dengan Bascom AVR, penjelasan nya :


Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5
pada baris ini digunakan untuk menghubungkan LCD ke port mikrokontroler


Config Lcdbus = 4        : baris ini digunakan untuk mendeklarasikan pin LCD yang tak terpakai
Config Lcd = 16 * 2     : baris ini digunakan untuk mendeklarasikan LCD yang dipakai yaitu 16X2
Cursor Off                    : menonaktifkan cursor pada LCD



Config Adc = Single , Prescaler = Auto , Reference = Avcc
Start Adc
Adc= single merupakan mode yang digunakan yaitu single. Prescaler = Auto, Sebuah konstanta numerik untuk pembagi jam, Gunakan AUTO untuk membiarkan kompilator menghasilkan nilai terbaik tergantung pada XTAL, hehee begitu penjelasan dalam index bascom AVR
start adc yang berarti memulai adc.


Dataadc = Getadc(0), baris ini merupakan pemanggilan nilai adc dari channel tertentu, dalam baris ini menggunakan chanel 0. dengan variabel dataadc yang dedeklarasikan sebagai WORD. untuk penjelasan mengenai tipe data dari Bascom AVR dapat dilihat disini


Locate 1 , 1                             : menampilkan karakter di lcd pada, baris 1 dan kolom 1
Lcd "Tes Nilai Adc"                 : menampilkan tulisan "Tes Nilai Adc"
Waitms 100                             : delay 100 ms
Locate 2 , 1                             : menampilkan karakter di lcd pada baris 2 kolom 1
Lcd "Data ADC=" ; Dataadc   : menampilkan data adc

Nahh, sekian dulu nih artikel Akses LCD 16x2 dan ADC dengan Bascom AVR . semoga bermanfaat dan mohon maaf apabila ada yang salah, dan mohon koreksi nya, heheehee


Site Search