Interface barcode ke mikrokontroler AVR atmega.
Barcode Scanner banyak digunakan di toko-toko retail untuk men-scan barang barang yang akan dibayar pembeli di kasir atau digunakan di perpustakaan untuk mempercepat petugas mendaftar buku-buku yang akan dipinjam. Dengan adanya alat ini semuanya menjadi cepat dan mudah, karena setiap jenis barang memiliki kode barcode sendiri yang unik sehingga bisa dikelompokkan dengan mudah. Seperti halnya keyboard dan mouse , terdapat banyak macam tipe barcode scanner berdasarkan jenis komunikasinya, misalnya barcode scanner serial, PS/2, dan USB. Pada proyek kali ini barcode scanner PS/2 yang akan digunakan, sehingga penanganannya sama dengan keyboard PS/2. Komunikasi PS/2 adalah komunikasi serial asinkronous yang menggunakan 2 kabel yaitu data
dan clock.
Namun jangan salah sangka, serial sinkronous disini bukanlah protokol I2C(eis to see atau twi, atau apalah). konektor yang digunakan yaitu mini Din female. barcode scanner disini akan digunakan sebagai validator apakah seseorang berhak menggunakan peralatan tersebut atau tidak, jadi siapa orang yang memiliki kartu dengan nomor barcode yang sesuai berhak menggunakannya. Dan untuk mengetahui apakah ada orang yang menggunakan scan barcode tersebut, data hasil scanning dikirim melalui SMS ke nomor tertentu. Ide awal proyek ini bukan dari saya sendiri, namun dari orang lain , sehingga seberapa efektif alat akan berguna, saya sendiri meragukannya π . mikrokontroler yang digunakan yaitu avr Atmega32(sebenarnya terlalu berlebihan, dapat digunakan tipe lain) dari Atmel. PORTD.2 digunakan untuk clock, dan data di PORTD.7. PORTD.2 difungsikan sebagai pin untuk interupt eksternal, sedangkan PORTD.7 sebagai input biasa. berikut koneksinya :
Resistor pull-up yang digunakan sebesar 10 kOhm. Timing diagram dari data yang akan ditangkap adalah sebagai berikut :
(seperti halnya untuk keyboard PS/2)
Fungsi utama pengambilan data ada di rutin interupt eksternal :
interrupt [EXT_INT0] void ext_int0_isr(void)
{
static unsigned char data;
if (!edge)
{
if(bitcount < 11 && bitcount > 2) // 1=start,8 bit //data,1=parity =1 stop bit //,Bit 3 to 10 is data. Parity bit,
{ // start and stop bits tidak masuk
data = (data >> 1);
if(PIND & 8)
data = data | 0x80; // ‘1’
}
if(bitcount==11)
{
mycount++;
}
MCUCR = 3;
edge = 1;
}
else {
MCUCR = 2;
edge = 0;
if(–bitcount == 0) // All bits received
{
decode(data);
bitcount = 11;
}
}
}
rutin rutin yang lain adalah untuk men-decode byte-byte yang masuk menjadi karakter ASCII, melalui sebuah look-up tabel. Untuk keperluan pengiriman SMS, digunakan handphone Siemes M45, dengan koneksi serial RS232. PDU yang dikirim disini tidak berubah-ubah(static) sehingga tidak perlu membuat generator PDU sendiri, cukup copy paste dari PDU generator yang sudah ada, misalnya http://www.rednaxela.net/pdu.php . Gambar alat :
file proyek ini sebenarnya sudah lama bercokol di HD ku (kira-kira sejak 2007, August), saya posting semoga berguna. (listing dengan bahasa C, IDE Code VisionAVR).
Referensi : Atmel Application Notes
mas mau tanya gimana kalau IC nya di ganti dengan IC AVR atmega 8535 .bisa tak mas .matur suwun
agus whd
November 23, 2008 at 4:59 am
bisa saja, namun ngepress. program diatas membutuhkan 1/4 dari program memori atmega32==>8kb, pdhal atmega8535 memiliki program memori 8kb.
oth3rside
November 24, 2008 at 6:04 am
gmn klo ICnya diganti 7805 saja mas?bisa tak?
kikikikkk….
piss,prop π
mif_rakyat_jelata
December 1, 2008 at 4:21 am
diganti Resistor ae Mip murah……
hahahaha π
oth3rside
December 4, 2008 at 12:00 pm
Mas, mohon bantuannya dong…
Saya lagi ngerjain tugas akhir, dan yang saya kerjain berhubungan dengan barcode scanner sama uC ATmega. Bisa pilihin program mana aja yang digunain intuk interfacing BS dng uC ga, punya Mas kan ada pake SMS nya jga? Saya dah download program Mas, tapi ga ngerti, mana yang dipake buat interfacing BS dng uC aja. Maklum pemula di uC AVR. Tolong dikirimin ke email saya y Mas. Makasih banget Mas.
mailto:fireboltattack@yahoo.com
lynch
April 21, 2009 at 11:44 am
mas klo bs diposting sekalian skematik rangkaiannya..atau boleh dikirim ke email saya: njlaboet@gmail.com.
trus nanyajuga.. scanner barcode di sini tu menscan berapa bit dari kode warna gelap terang yg biasa discan..
Mohon juga dijelaskan prinsip pembacaan kode sampai pengolahan di mikro nya dlm tampilan LCD.
Thanks.
CJ DW
September 16, 2009 at 4:11 pm
@cj dw
rangkaian nya cuma sperti yang diatas(line clock-data,di pull-up)
data yang dikeluarkan barcode project ini 8-bit yang dikirim secara serial sinkron
penulisan LCD nya menggunakan library codevision
pembacaan,dll->bisa di pelajari di source code yang bisa di donlot diats π
oth3rside
September 17, 2009 at 5:14 am
Mas, tolong bantuannya. saya lagi ngerjain tugas akhir yang berhubungan dengan barcode reader. saya mau download source code-nya. tapi link diatas sudah tidak ada. mohon dikirimkan soure code-nya ke toby_christal@yahoo.com.
kemudian, program buat baca keyboard sama barcode apakah sama??
terima kasih sebelumnya
Khudjatul Khaq
February 27, 2010 at 1:51 pm
Asslmlkum Khudjatul Khaq,
setelah saya cek, memang benar link download di posting saya sudah hilang, karena sudah terlalu lama tidak diakes. Dan sangat sayang sekali saya tidak menemukan backup file tersebut. tanya: program buat baca keyboard sama barcode apakah sama?? jawab: sama, jika barcode dan keyboard tersebut memiliki interface komunikasi yang sama.misalnya PS/2 (aplikasi yg pernah saya buat memakai PS/2).
kamu bisa melihat dokumentasi interface pS/2 dengan micro di situs ATMEL.
thank, semoga membantu. edie.
oth3rside
March 5, 2010 at 2:51 am
mas,,mw minta bntuannya,,q lg bwt tgs akr tntg barcode reader..tp bwt pengaman kendaraan..trus jg pake sms gt..pake mikro IC atmega8535 ,,,bisa gk?konektorny PS2,,bisa minta pin code barcode ma PS2 gk????n ju2r gk taw sm skali progrm ny barcode..cara connectnya ke mikro gmn??muakasih buanget…n tlg dikirim k emailq…==> vian.ecy@gmail.com
ecy..
March 23, 2010 at 3:39 am
mas aku mau bikin pengaman kendaraan yang bisa kirim sms dan membunyikan bel dan memakai timer supaya motor bisa mati sendiri,boleh minta skripnya/pin codenya kirim ke emailq (arif_satriafu@yahoo.co.id)
arif
April 8, 2010 at 7:42 am
mas mw minta tolong bantuannya mas,saya sedang membuat tugas akhir nih,saya tertarik untuk membuat barcode dengan keluarannya mikro,klo pke atmega 16 bisa kn mas??saya minta tolong kirimin cara kerjanya mas,saya bener-bener gak tahu tentang barcode…makasihhh y mas
email saya sidik_four@yahoo.com
sidik
April 8, 2010 at 10:35 pm
mas,..saya membuat sebuah alarm mengunakan modul k125-r atmega8, dimana settingan untuk waktu alarm tersebut saya setting melalui PC (program visual basic), tetapi stlah jln beberapa bulan ini ada bebrapa settingan waktunya tidak berfungsi & hrus direset untuk menormalkan settingan wktu sbelumnya,.
bagaimana caranya supaya modul tersebut tidak perlu direset,
apakah perlu ditambah RTC ..?
apakah Driver relay juga ikut mempengaruhi resetnya .? terimakasih sblumnya
Deddy Saputra
December 4, 2012 at 6:03 pm
mas mw minta tolong bantuannya mas,saya sedang membuat proyek akhir,ssaya memakai atmega32 tolong bisa kirimi saya skematik adn source code nya, karena source codenya tidak bisa di download, email saya ilmanarzak@yahoo.com
ilman
May 14, 2013 at 3:04 pm
assalamualaikum.
mas saya boleh minta source code sma skematiknya tentang barcode itu..
mohon bantuannnya ya mas ini email saya.
yudawimsalam@gmail.com
yudawim
April 29, 2014 at 11:39 am
Mas saya lagi buat tugas akhir menggunakan barcode. mas saya boleh minta source code sma skematiknya tentang barcode itu..
mohon bantuannnya ya mas ini email saya.
ponco_xl@yahoo.com
ponco
May 17, 2014 at 1:35 pm
Mas ….bisa buatin interfacing keyboard PS2 ke avr atmeg8…?
sigmaonebatam@gmail.com
-
May 27, 2016 at 1:59 pm