Tampilkan postingan dengan label Tutorial. Tampilkan semua postingan
Tampilkan postingan dengan label Tutorial. Tampilkan semua postingan

Selasa, 06 Maret 2012

Tutorial Pemrograman CodeVision AVR Part I

cover

Artikel kali ini akan saya bahas mengenai Tutorial Pemrograman CodeVision AVR Part I, Akan saya bagi menjadi beberapa part, karena tutorial nya agak panjang, dan nanti di akhir tutorial CodeViision AVR akan saya share tutorial lengkap nya dalam file .Pdf. Oke, sekarang kita mulai aja nih. 

jendela
Jendela Codevision AVR

Nah pada gambar jendela CodeVision AVR, dapat dilhat itu merupakan contoh printscreen Codevison AVR.

Compiler Codevision AVR merupakan compiler untuk mikrokontroler AVR, dengan bahasa pemrograman C. Dari Codevision AVR ini akan didapatkan file .hex untuk diprogram ke mikrokontroler nya,

Penulisan Program Dalam Bahasa C


#include <mega32.h>
#include <delay>
#define Sensor PINB.0

//variable Global
unsigned int u;

void main()
{
//variable lokal
DDRB=0x00;
PORTA=0XFF;

While(1)
{
.........
.........
};
}

Penjelasan nya :
Preprocessor (#), digunakan untuk memasukkan (include) sebuah text dari file lain, mendefinisikan macro yang dapat mengurangi beban kerja.

#define : untuk mendefinisikan sebuah macro
contoh : #define Sensor PINB.0

menulis sebuah komentar :


//komentar komentar    digunakan untuk menulis komentar untuk satu baris

/* komentar
komentar
*/                                       digunakan untuk menulis komentar untuk lebih dari 1 baris.

Identifiers :


adalah nama yang diberikan pada sebuah label, fungsi, variable, atau yang lain. Identifier mengandung karakter ( 0 sampai 9) ( A - Z, a - z ) . Untuk Codevision AVR, menggunakan case sensitif ( besar kecil tulisan sanngat diperhatikan, tak seperti BASCOM AVR). identifier maksimal 32 karakter saja.

Tipe Data 


tipe
Ukuran Bit
range
bit                        
1
0,1
char                        
8
-128 to 127
unsigned char
8
0 to 255
signed char
8
-128 to 129
int
16
32768 to 32767
short int
16
32769 to 32767
unsigned int
16
0 to 65535
signed int
16
32769 to 32767
long int
32
-2147483648 to 2147483648
unsigned long int
32
0 to 4294967295
signed long int
32
-2147483648 to 2147483648


 Operator

Operator
Operator digunakan untuk pengolahan data pemrograman.
1. Operator aritmatika
     +  untuk  operasi penjumlahan
     -  untuk  operasi pengurangan
     *  untuk  operasi perkalian
     /  untuk  operasi pembagian
     %  untuk  operasi sisa pembagian

2. Operator kondisi
==     untuk operator samadengan 
!>   untuk operator tidak samadengan
>     untuk operator lebih besar dari  
<     untuk operator lebih kecil dari
>=   untuk operator lebih besar atau sama dengan
<=   untuk operator lebih kecil atau sama dengan

3. Operator Logika
&&   untuk operasi AND
||      untuk operasi OR
!   untuk operasi NOT 


4. Operator  bitwise
~  untuk  operasi komplemen bitwise
&  untuk  operasi bitwise AND
|   untuk  operasi bitwise OR
^  untuk  operasi bitwise XOR
>>  untuk  operasi right shift
^  untuk  operasi left shift



5. Operator  Assignment



=    untuk memasukkan nilai
+=  untuk menambah nilai dari keadaan semula
-=   untuk mengurangi nilai dari keadaan semula
*=   untuk mengalikan nilai dari keadaan semula
/=    untuk melakukan pembagian terhadap bilangan semula
%= untuk memasukan nilai sisa bagi dari pembagian bilangan semula
<<=  untuk memasukan shift left
>>=  untuk memasukkan shift right

&=    untuk memasukan bitwise AND
^=    untuk memasukan bitwise XOR
\=    untuk memasukan bitwise OR


Nah, sekian dulu yaa Tutorial Pemrograman CodeVision AVR Part I, nanti saya posting part part berikut nya. 


Terimakasih.


Kunjungi Artware electronics yaaa, dan beli komponen maupun keperluan elektronika disana.








Sabtu, 03 Maret 2012

Cara membaca Nilai Resistor

resistor




Cara membaca Nilai Resistor, Pada artikel Cara membaca Nilai Resistor kali ini saya akan menjelaskan cara membaca nilai dari sebuah resistor.


Cara membaca Nilai Resistor, Yang pertama saya akan menjelaskan cara membaca resistor dengan 4 cincin / gelang.

Resitor dengan 4 cincin/gelang:
resistor 4 cincin umumnya digunakan untuk presisi rendah dengan toleransi 5%, 10% dan 20%. cincin pertama dan kedua mewakili angka resistor. cincin ketiga mengindikasi perkalian (multiplier) berapa ‘nol’ yang ditambahkan. Jika multiplier band adalah emas (gold) atau perak (silver) kemudian desimal digeser ke kiri satu atau dua (dibagi dengan 10 or 100). cincin toleransi (tolerance band) deviasi dari nilai spesifik, biasanya terdapat jarak dari cincin lain.
Sebagai contoh, untuk resistor dengan nilai 330 ohm, 5% maka cincin warnanya adalah orange, orange, coklat dan emas. Penjelasan: orange dan orange mewakili angka (33); sedangkan coklat adalah pengali (multiplier) (10) dan emas adalah toleransi (5%). Sedemikian sehingga nilainya 33*10 = 330?.
Jika gelang ke tiga diubah ke warna merah, maka pengali (multiplier) akan menjadi 100, sehingga nilainya 33×100 = 3300 ohm = 5.6 k ohm. = 5k6 ohm
Jika cincin pengali (multiplier band) adalah emas atau perak, kemudian desimal poin akan digeser ke kiri satu atau dua tempat (dibagi dengan 10 atau 100).
Sebagai contoh, sebuah resistor dengan cincin hijau, biru, perak dan emas mempunyai nilai 56*0.01 = 0.56?.
Catatan: 20% resistors hanya mempunyai 3 cincin – artinya, cincin toleransi (cincin ke empat tanpa warna).

Cara membaca Nilai Resistor 
Resitor dengan 5 cincin:
Resistor dengan tipe seperti ini digunakan untuk rangkaian elektronika dengan presisi tinggi, resistor dengan presisi 2%, 1% atau bertoleransi lebih rendah. Cara membaca cincin mirip dengan sistem sebelumnya (4 cincin); hanya saja ada perbedaan nomor dari angka. cincin pertama, kedua dan ketiga mewakili nilai angka, cincin ke empat adalah pengali (multiplier) dan cincin ke lima adalah toleransi.
Cara membaca Nilai Resistor
Berikut adalah standar tabel kode warna resistor:
Warna
cincin ke-1
cincin ke-2
cincin ke-3 *
Pengali
Toleransi
Koefisien Suhu
Fail Rate
Hitam
0
0
0
×100



Coklat
1
1
1
×101
±1% (F)
100 ppm/K
1%
Merah
2
2
2
×102
±2% (G)
50 ppm/K
0.1%
Orange
3
3
3
×103

15 ppm/K
0.01%
Kuning
4
4
4
×104

25 ppm/K
0.001%
Hijau
5
5
5
×105
±0.5% (D)


Biru
6
6
6
×106
±0.25%(C)


Ungu
7
7
7
×107
±0.1% (B)


Abu-abu
8
8
8
×108
±0.05% (A)


Putih
9
9
9
×109



Emas



×0.1
±5% (J)


Perak



×0.01
±10% (K)


Tanpa Warna




±20% (M)


* cincin ke-3 hanya untuk 5-band resistors

Contoh:

Resistor dengan 4 cincin:
Hijau, Biru, Merah, toleransi Perak: 56*100 = 5.6 kohms, dengan tol 10%
Coklat, Hitam, Jingga, Emas : 10*1000 = 10000 ohms (or 10K ohms), dengan tol 5%

Resistor dengan 5 cincin:
Biru, Coklat, Putih, Coklat, Merah: 619*10 = 6190 ohms (6.19K ohms), dengan tol 2%
Merah, Merah, Coklat, Hitam, Coklat: 221*1 = 221 ohms, dengan tol 1%

CATATAN :
Agar mudah dalam mengingat kode warna, Anda cukup hafalkan “Hi-Co-Me-O-Ku-Hi-Bi-U-A-Pu”

Sekian, semoga bermanfaat artikel Cara membaca Nilai Resistor, terimakasih.
Jika Anda membutuhkan komponen elektronika atau kit elektronika untuk proyek Anda silahkan kunjungi KESINI

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. 

Selasa, 07 Februari 2012

Akses EEPROM internal ATMega32 dengan BASCOM AVR

Oke temen-temen, Akses EEPROM internal ATMega32 dengan BASCOM AVR kali ini saya akan menbagi pengetahuan seputar EEPROM, tentang bagaimana cara penggunaan nya, mulai dari menulis di EEPROM sampai Membaca di EEPROM.

Seperti yang kita tahu, ATMega32 memiliki fasilitas EEPROM internal sebesar 1024 byte, walaupun terbatas kapasitas memory nya akan tetapi sudah cukup untuk menyimpan data-data (dalam byte) tanpa harus mengkhawatirkan hilangnya data meskipun mikrokontroler tidak mendapatkan catu daya, atau mikrokontroler dalam keadaan non-aktif (mati).

Pada artikel Akses EEPROM internal ATMega32 dengan BASCOM AVR ini, akan saya bahas bagaimana cara menulis dan membaca data dalam EEPROM. Akses EEPROM internal ATMega32 dengan BASCOM AVR menggunakan LCD untuk menampilkan data yang akan masuk/dituliskan ke EEPROM dan data yang akan dibaca melalui EEPROM, sehingga kita akan mengetahui data yang ditulis dan dibaca EEPROM.

Data yang ditulis ke EEPROM merupakan data acak, dengan perintah/syntax dalam BASCOM AVR menggunakan ' RND( ) ' untuk menghasilkan data acak. 
misalkan RND(10) maka akan diperoleh data acak dari bilangan <=10.

Gambar 'Rangkaian', merupakan konfigurasi dari LCD yang saya gunakan : 

Rangkaian
Rangkaian
Untuk listing program nya sebagai berikut :


'******************************************************************************
' Program tutorial akses EEPROM READ AND WRITE
' Mirza dhanu
' http://Goes-open.blogspot.com
'******************************************************************************

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

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

Dim A As Byte , I As Byte , B As Byte

Cls
Locate 1 , 1
Lcd "goes-openblogspot"
Locate 2 , 1
Lcd "Visit us..."

Wait 3
Cls
Locate 1 , 1
Lcd "Tutorial EEPROM "
Locate 2 , 1
Lcd "Akses EEPROM"

Wait 3

Cls
Locate 1 , 1
Lcd "Write EEPROM.."
Locate 2 , 1
Lcd "Datanya="

For I = 0 To 9
Locate 2 , 9
B = Rnd(100)
Lcd B
Writeeeprom B , I
Wait 1
Next I

Locate 2 , 1
Lcd "write finish"
Wait 2

Locate 1 , 1
Lcd "Read EEPROM.."
Locate 2 , 1
Lcd "data ke-"

For I = 0 To 9
Locate 2 , 9
Readeeprom A , I
Lcd I ; "=" ; A
Wait 1
Next I

End
'-------------------------------------------------------------------------------------------------------------

Penjelasan listing :

Akses EEPROM internal ATMega32 dengan BASCOM AVR, disini saya akan mejelaskan hal-hal yang pokok saja karena sebagian penjelasan sudah saya jelskan pada postingan2 sebelumnya, terutama yang LCD karena disini LCD digunakan sebagai interface nya.

Pada bagian berikut ini

For I = 0 To 9
Locate 2 , 9
B = Rnd(100)
Lcd B
Writeeeprom B , I
Wait 1
Next I


I adalah variabel yang digunakan untuk menuliskan data dari 0 sampai 9, dari dara acak dalam perintah Rnd(100) yang kemudian ditampilan pada LCD dalam variabel B. 
Writeeeprom B , I : merupakan perintah untuk menulis ke EEPROM, B adalah variabel data, dari data acak sedangkan I adalah alamat masing-masing data tadi. 


For I = 0 To 9
Locate 2 , 9
Readeeprom A , I
Lcd I ; "=" ; A
Wait 1
Next I
program ini untuk pembacaan data-data yang sudah dituliskan pada EEPROM ( 10 bilangan acak dari 0 sampai 9). Readeeprom A , I membaca variabel data yang telah dituliskan pada alamat2 I.



Gampang bukan??? hehheehe

Download Artikel Disini
Download rangkaian dengan Simulasi Proteus Disini
Download Program dengan Bascom AVR disini


Sekian artikel Akses EEPROM internal ATMega32 dengan BASCOM AVR, mohon maaf apabila ada kesalahan, semoga bermanfaat. 
Bagaimana menurut Anda? silahkan beri komentar.

Site Search