Entri Populer

Jumat, 11 Februari 2011

Program Bascom AVR untuk cek serial

nah sekarang gw postingin program cek serial, klo kita punya Minsys (minimum system) yang pake AVR nih programnya gampang kok tinggal hubungin  mikro  kekomputer dengAN menggunakan db9 jgn lupa buka dikomputer pake hyperterminal jg lupa programnya didownload kemikro klo ada pertanyaan Tulis di Comment or email ke argit_wanto@yahoo.co.id


$regfile = "m8535.dat"                                     ' we use the M48
$crystal = 8000000
$baud = 9600


   Open "comd.3:19200,8,n,1" For Output As #1               'open port for tx and rx external
   Open "comd.2:19200,8,n,1" For Input As #2


   Do
   Print "bismillah"
   Print #1 , "Bismillah"
   Loop



Open "comd.3:19200,8,n,1" For Output As #1 digunakan untuk mengubuka port mikro ke komputer agar mau ngirimim data berupa tulisan bismillah klo suskes
ini program cuma untuk mengetahui apakah komunikasi serial mikro dapat digunakan atau tidak

Terima kasih

Selasa, 08 Februari 2011

Belajar program Smart card (contactless Smart card)

smart card atau kartu pintar, (kartu aja bisa pintar masa manusia ngak bisa pintar) Hehheh
disini saya akan berbagi ilmu tentang cara memprogram smart card, smartcard yg saya gunakan adalah jenis mifare dengan kapasitas 1kb, dan tag acr 120s dan sebuah program yang dapat mengirimkan nilai -heksa
seperti Advance Serial Port, Hercules, Dlll dapat dicari di google
pertama program untuk mendapatkan Station ID
Hex
02 FF 01 67 99 03
Answer
Station ID (1 byte)
 station id penting karena untuk select card, login dibutuhkan id untuk mengaksesnya
Get Serial Number / Select Instruksi ini digunakan untuk mengetahui ID dari tiap – tiap MIFARE, instruksi ini harus dilakukan sebelum melakukan login pada kartu MIFARE. Kartu harus berada dalam jangkauan reader agar mendapatkan balasan dari reader.
Tabel 3.11 Data Select Card
Hex
02 01 01 73 73 03
Answer
02 00 04 nn nn nn nn cc 03

02 00 01 46 47 03(Fail)

02 00 01 4e 4f 03 (No card)
Login  Untuk melakukan proses read, write atau lainnya pada blok harus dilakukan login terlebih dahulu ke sektor di mana blok tersebut berada. Jika telah melakukan login ke sebuah sektor tersebut dapat diproses dengan instruksi berbeda beberapa kali tanpa perlu login lagi selama kartu masih dalam jarak baca reader. Jika kartu telah keluar dari jangkauan reader maka harus dilakukan select dan login kembali ke sektor tersebut. Begitu pula jika ingin melakukan proses di sektor lain maka harus dilakukan kembali instruksi select dan login.
            Berikut adalah contoh untuk login pada sektor 1 dari kartu MIFARE :




Tabel 3.12 Data Login Card
Hex
02 01 04 6C 01 FF 0D 9a 03
Answer
02 01 01 4c 4d 03 (Success)

02 01 01 4e 4f 03 (No Card)

02 01 01 46 47 (fail / Error)
Write Blok Instruksi write dilakukan pada blok tertentu dan harus sesuai pada sektornya. Sebagai contoh untuk write pada blok 04H sektor 1 data 00112233 dapat dilakukan seperti berikut:
Tabel 3.13  Data Write Block
Hex
02 01 06 77 04 00 11 22 33 74 03
Answer
02 00 10 (16 bytes of data) cc 03
Read blok Sama seperi istruksi write, instruksi read juga dilakukan pada blok yang diinginkan sesuai dengan login sektornya.
Tabel 3.14 Data Read Blok
Hex
02 01 02 72 04 75 03
Answer
02 00 10 (16 bytes of data) cc 03



Cukup sekian dulu saya juga masih belajar mudah mudahan bermanfaat

Rabu, 02 Februari 2011

ATMEGA 8535 dan Fungsi-fungsinya

  MIKROKONTROLLER ATMEGA 8535
Mikrokontroler adalah  IC  yang  dapat  diprogram  berulang  kali,  baik  ditulis  atau dihapus  (Agus Bejo, 2007). Biasanya digunakan untuk pengontrolan otomatis dan manual pada perangkat elektronika.
Beberapa tahun terakhir, mikrokontroler sangat banyak digunakan terutama dalam pengontrolan robot. Seiring perkembangan elektronika, mikrokontroler dibuat semakin kompak dengan bahasa pemrograman yang juga ikut berubah. Salah satunya adalah mikrokontroler AVR (Alf  and Vegard’s Risc processor) ATmega8535 yang menggunakan teknologi RISC (Reduce Instruction  Set Computing) dimana program berjalan lebih cepat karena hanya membutuhkan satu siklus clock untuk mengeksekusi satu instruksi program. Secara umum, AVR dapat dikelompokkan menjadi 4  kelas, yaitu kelas ATtiny, keluarga AT90Sxx, keluarga ATmega, dan AT86RFxx. Pada dasarnya  yang membedakan masing-masing kelas adalah memori, peripheral, dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan, mereka bisa dikatakan hampir sama.
Mikrokontroler  AVR  ATmega8535  memiliki  fitur  yang  cukup  lengkap. Mikrokontroler AVR ATmega8535 telah dilengkapi dengan ADC internal, EEPROM internal,  Timer/Counter,  PWM,  analog  comparator,  dll  (M.Ary  Heryanto,  2008). Sehingga    dengan          fasilitas          yang   lengkap          ini            memungkinkan kita            belajar mikrokontroler   keluarga   AVR   dengan   lebih   mudah   dan   efisien,   serta   dapat mengembangkan kreativitas penggunaan mikrokontroler ATmega8535.
Fitur-fitur yang  dimiliki  oleh  mikrokontroler  ATmega8535  adalah  sebagai berikut:
1.    Saluran I/O sebanyak 32 buah, yaitu port A, port B, port C, dan port D.

2.    ADC internal sebanyak 8 saluran.

3.    Tiga buah Timer/Counter dengan kemampuan pembandingan.

4.    CPU yang terdiri atas 32 buah register.

5.    SRAM sebesar 512 byte.

6.    Memori Flash sebesar 8 kb dengan kemampuan Read While Write.

7.    Port antarmuka SPI

8.    EEPROM sebesar 512 byte yang dapat diprogram saat operasi.

9.    Antarmuka komparator analog.

10. Port USART untuk komunikasi serial.

11. Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16 MHz.

12. Dan lain-lainnya.

2.6.1 Konstruksi ATmega8535
Mikrokontroler  ATmega8535  memiliki  3  jenis  memori,  yaitu  memori  program, memori data dan memori EEPROM. Ketiganya memiliki ruang sendiri dan terpisah.
a.  Memori program
ATmega8535  memiliki  kapasitas  memori  progam  sebesar  8  Kbyte  yang terpetakan   dari  alamat  0000h   0FFFh  dimana  masing-masing  alamat memiliki lebar data 16 bit. Memori program ini terbagi menjadi 2 bagian yaitu bagian program boot dan bagian program aplikasi.
b.  Memori data
ATmega8535 memiliki kapasitas memori data sebesar 608 byte yang terbagi menjadi  3   bagian  yaitu  register  serba  guna,  register  I/O  dan  SRAM. ATmega8535 memiliki 32 byte register serba guna, 64 byte register I/O yang dapat diakses sebagai bagian dari memori  RAM (menggunakan instuksi LD atau ST) atau dapat juga diakses sebagai I/O (menggunakan instruksi IN atau OUT), dan 512 byte digunakan untuk memori data SRAM.
c.  Memori EEPROM
ATmega8535 memiliki memori EEPROM sebesar 512 byte yang terpisah dari memori  program maupun memori data. Memori EEPROM ini hanya dapat diakses dengan  menggunakan register-register I/O yaitu register EEPROM Address,  register  EEPROM  Data,  dan  register  EEPROM  Control.  Untuk mengakses  memori  EEPROM  ini   diperlakukan  seperti  mengakses  data eksternal, sehingga waktu eksekusinya relatif lebih  lama bila dibandingkan dengan mengakses data dari SRAM.
ATmega8535 merupakan tipe AVR yang telah dilengkapi dengan 8 saluran ADC internal  dengan fidelitas 10 bit. Dalam mode operasinya, ADC ATmega8535 dapat dikonfigurasi, baik secara single ended input maupun differential input. Selain itu, ADC ATmega8535 memiliki konfigurasi  pewaktuan, tegangan referensi, mode operasi, dan kemampuan filter derau yang amat fleksibel,  sehingga dengan mudah disesuaikan dengan kebutuhan ADC itu sendiri.
ATmega8535 memiliki 3 modul timer yang terdiri dari 2 buah timer/counter 8 bit dan 1 buah timer/counter 16 bit. Ketiga modul timer/counter ini dapat diatur dalam mode yang berbeda secara  individu dan tidak saling mempengaruhi satu sama lain. Selain  itu,  semua  timer/counter  juga  dapat  difungsikan  sebagai  sumber  interupsi. Masing-masing timer/counter ini memiliki register tertentu  yang digunakan untuk mengatur mode dan cara kerjanya.
Serial Peripheral  Interface  (SPI)  merupakan  salah  satu  mode  komunikasi serial  syncrhronous  kecepatan  tinggi  yang  dimiliki  oleh  ATmega8535.  Universal Syncrhronous and  Asyncrhronous Serial Receiver and Transmitter (USART) juga merupakan  salah  satu  mode  komunikasi  serial  yang  dimiliki  oleh  ATmega8535. USART  merupakan  komunikasi  yang   memiliki  fleksibilitas  tinggi,  yang  dapat digunakan untuk melakukan transfer data baik antar mikrokontroler maupun dengan modul-modul eksternal termasuk PC yang memiliki fitur UART.
USART memungkinkan  transmisi  data  baik  secara  syncrhronous  maupun asyncrhronous, sehingga dengan memiliki USART pasti kompatibel dengan UART. Pada           ATmega8535,  secara  umum  pengaturan mode syncrhronous   maupun asyncrhronous adalah sama. Perbedaannya hanyalah terletak pada sumber clock saja. Jika pada  mode  asyncrhronous  masing-masing  peripheral  memiliki  sumber  clock sendiri, maka pada mode syncrhronous hanya ada satu sumber clock yang digunakan secara bersama-sama. Dengan demikian, secara hardware untuk mode asyncrhronous hanya   membutuhkan   2   pin   yaitu   TXD   dan   RXD,   sedangkan   untuk   mode syncrhronous harus 3 pin yaitu TXD, RXD dan XCK.

Gambar 2.5 Konfigurasi Pin Atmega 8535

Konfigurasi pin  ATmega8535  dengan  kemasan  40  pin  DIP  (Dual  Inline Package) dapat dilihat pada gambar 2.1. Dari gambar di atas dapat dijelaskan fungsi dari masing-masing pin Atmega8535 sebagai berikut:
1.    VCC merupakan pin yang berfungsi sebagai masukan catu daya.
2.    GND merukan pin Ground.
3.     Port A (PortA0…PortA7) merupakan pin input/output dua arah dan pin masukan ADC.
4.  Port  B  (PortB0…PortB7)  merupakan  pin  input/output  dua  arah  dan    dan  pin fungsi khusus, seperti dapat dilihat pada tabel di bawah ini.
Tabel 2.6  Fungsi Khusus Port B

Pin

Fungsi Khusus

PB7

SCK (SPI Bus Serial Clock)

PB6

MISO (SPI Bus Master Input/ Slave Output)

PB5

MOSI (SPI Bus  Master Output/ Slave Input)

PB4

SS (SPI Slave Select Input)


PB3
AIN1 (Analog Comparator Negative Input)
OC0 (Timer/Counter0 Output Compare Match Output)


PB2
AIN0 (Analog Comparator Positive Input) INT2 (External Interrupt 2 Input)

PB1

T1 (Timer/ Counter1 External Counter Input)


PB0
T0 T1 (Timer/Counter External Counter Input) XCK (USART External Clock Input/Output)

2.              Port C (PortC0…PortC7) merupakan pin input/output dua arah dan pin fungsi khusus, seperti dapat dilihat pada tabel dibawah ini.
Tabel 2.7 Fungsi Khusus Port C


Pin

Fungsi khusus
PC7
TOSC2 ( Timer Oscillator Pin2)

PC6

TOSC1 ( Timer Oscillator Pin1)

PC5

Input/Output

PC4

Input/Output

PC3

Input/Output

PC2

Input/Output

PC1

SDA ( Two-wire Serial Buas Data Input/Output Line)

PC0

SCL ( Two-wire Serial Buas Clock Line)

6. Port D (PortD0…PortD7) merupakan pin input/output dua arah dan pin fungsi khusus, seperti yang terlihat pada tabel dibawah ini.
Tabel 2.8 Fungsi Khusus Port D


Pin

Fungsi khusus

PD7

OC2 (Timer/Counter Output Compare Match Output)

PD6

ICP (Timer/Counter1 Input Capture Pin)

PD5

OC1A (Timer/Counter1 Output Compare A Match Output)

PD4

OC1B (Timer/Counter1 Output Compare B Match Output)

PD3

INT1 (External Interrupt 1 Input)

PD2

INT0 (External Interrupt 0 Input)

PD1

TXD (USART Output Pin)

PD0

RXD (USART Input Pin)