Facebook & Twitter Connect


Guesthackers Community

Guesthackers Community

Minggu, 16 Mei 2010

test

saya sedang uji coba
text bergerak ini dengan
berisikan kontent

Senin, 10 Mei 2010

HOME

Selamat datang teman teman ku



Saya membuat blog ini bertujuan membagikan pengalaman saya di bidang IT
Sebelum nya saya ucapkan banyak terima kasih kepada rekan rekan semua yang telah banyak membatu saya .
Isi blog ini memang tidak sepenuhnya hasil olah pikir saya maka dari itu saya mohon ke ikhlas an nya kepada pemilik kontent semua untuk saya tampilkan di dalam blog saya..

TTD
GUESTHACKERS
Lihat halaman saya yang lain klik disini
Atau tautan dibawah ini
Facebook chat

Minggu, 09 Mei 2010

Jangan masuk kesini

Rabu, 05 Mei 2010

Download Manager

  • Drivers
  • Script
  • Selasa, 04 Mei 2010

    Script

    Script java Dan script PHP

    Link Drivers Downloads

  • Script
  • Drivers
  • Internet
  • .....
  • Koleksi File Driver saya


    AX_modem_drivers






    Venus VT-18 EVDO



    Satu lagi Wireless USB modem CDMA yang bersertifikasi resmi dari Derektorat Jenderal Pos dan Telekomunikasi ( POSTEL ) pada tanggal 23 November 2009Wireless USB Modem Celular Venus VT-18 EVDO resmi bersertifikasi Postel.

    Berikut spesifikasi data teknis USB Modem Venus VT-18 EVDO :
    Support CDMA 1X EV-DO (REV.O) 800 MHZ with 2.4 Mbps downlink and 153.6 Kbps Uplink.
    Support CDMA 1X800 MHZ With 153.6 kbps downlink.
    High performance internal antenna
    Support data/SMS Function
    USB 2.0 Interface
    Supports Windows XP/2000/Vista
    Untuk menjaga kenyamanan penggunaan alat/perangkat telekomunikasi gunakan selalu alat/perangkat yang telah bersertifikasi postel dengan terdapat label sertifikasi.

    Diposkan oleh silorida di 18:25
    Label: sertifikasi perangkat PT. Subur Semesta
    Hubungi saya Untuk mendapatkan dengan harga ber diskon atau software free

    USB Modem Venus VT 18


    Produk baru Venus telah diluncurkan dengan nama USB Modem Venus VT 18 EVDO Multi dengan tujuan untuk menyempurnakan kemampuan pendahulunya yaitu usb modem CDMA Venus VT 12 yang memang difokuskan bekerja pada frekwensi 800MHz saja. Kemudian banyaknya permintaan pasar yang menginginkan agar venus mengeluarkan usb modem cdma yang multi fungsi (bisa di frekwensi 800MHz dan 1900MHz) maka dalam waktu dekat ini venus akan segera launching produk tersebut dan anda sudah bisa menemukan usb modem cdma yang support 800MHz dan 1900Mhz di pasaran Indonesia.

    Nah sekarang yang sering bertanya kepada saya apakah ada modem venus yang support dengan kartu smart ? jawabannya ada ** yaitu USM modem Venus VT 18 EVDO Multi, Jadi produk baru venus ini bisa dijadikan solusi untuk yang sebelumnya kesulitan kepingin menggunakan modem venus dengan kartu smart untuk koneksi internet, karena usb modem ini support dengan segala jenis kartu cdma.

    Sudahlah basa-basi tentang produk USM modem Venus VT 18 EVDO Multi saya sudahi berikut dibawah ini adalah spesifikasinya:

    USB type CDMA Wireless Modem CMDA2000 1XEV-DO Technology for Desktop or Laptop PC slim & compact design frequency : 800MHz and 1900MHz; Chipset : Qualcomm MSM6805; Data Communication & SMS Support; Compatible with IS-95A, IS-95B and 1XRTT; USB modem; R-UIM card support.

    Specification:
    Modem Chipset : MSM6805 (CDMA2000 1XEV-DO)

    H/W
    Interface Type: USB Type
    Transmitting (Max. Data Rate) : Forward Link : Up to 3.1 Mbps (download)
    Reverse Link : Up to 1.8Mbps (upload)
    Supply voltage : 5V

    S/W
    CDMA Specification : 1X RTT / EVDO Applied
    Data service IS-707A, IS-707A-1
    SMS : MO & MT Support
    PRL (preferred Roaming Lists) : Support
    Authentification : Support
    Number of NAM support : 5
    DM (Diagnostic Monitor) : Qualcomm CAIT

    Transmitter
    Frequency Range : 824.64 ~ 848.37 MHz / 1851.25 ~ 1908.75 MHz
    Band width : 1.25 MHz
    Type of Oscillation : PLL Synthesizer

    Receiver
    Frequency Range : 869.64 ~ 893.37 MHz / 1931.25 ~ 1988.75 MHz
    Modulation Method : QPSK
    Receiver Sensitivity : -106dBm (FER = 0.5%)
    Common RF Impedance 50 ohm

    Mechanical
    Dimensions (WXDXH) : 78mm X 28mm X 12mm
    Weight : about 60g
    Envirinmental : Storage : -30 ~ +75 / Operating : -20 ~ +50

    Power Consumtion :
    Max < 600mA / Idle < 250mA / Sleep <10mA
    Operating Voltage : 5.0VDC (USB Port)
    Data Options : Packet data, Async data, Two-way SMS, Quick net connect
    Hardware interface : USB Connection
    Software Interface : IS-707 AT Command set and STWTech extended AT command set IS-683 compliant over-air download/upload capabilities
    O/S Support : ME / Windows 2000 / XP / MAC OS
    Option : R-UIM Support

    Untuk saat ini harga usb Modem Venus VT 18 EVDO Multi dibandrol dengan harga RP.720.000an untuk yang tertarik dan ingin membeli dalam jumlah banyak silahkan menghubungi saya untuk mendapatkan harga khusus.

    Review Vt -12 modem cdma


    Saya akan berbagi sedikit pengalaman saya menggunakan
    modem seri vt-12 buatan PT.SUBURSEMESTA saya telah mencoba berbagai macam modem bahkan pergunakan HP sebagai modem demi inggin bertemu dengan eyang google.sepesifikasi Perangkat saya adalah laptop jadul TOSHIBA Dynabook 1987 OS Windows(Original) MODEM + kartu flexy, saya tinggal di daerah pinggiran kota yogyakarta yang belum terjangkau jaringan edge jadi jaringan yang saya pergunakan adalah jaringan 2000X1 atau jaringan yang disebut line limit speed.langkah yang penting adalah settings Username dan password bagi pelanggan jaringan yang berbasis unlimited saya dahulu pernah hanya settings sekali username dan password koneksi yang pertama lancar kira kira 24 jam saya online maklum pergunakan internet murah...
    Akan tetapi setelah komputer bangun dari istirahat nya, maunya hendak nyambung lagi ke internet aku langsung koneksikan ke jaringan dan nyambung tapi beberapa saat kemudian terputus dan aku coba sambung lagi Ehhhh kata komputerku access denied username/password or domain error setelah saya cek pulsa ternyata sudah tinngal 50 perak dari yang sebelumnya masih sekitar 9000 ternayata aku masuk yang tadi pergunakan
    system basic yang dihitung berdasarkan beban jaringan per kb jadi pulsaku hangus maka dari itu saya lalu edit file di program file\(folder file modem)opsional\DataCardInfo.ini dan saya edit sebagai berikut
    -------------------------------------------------------------------------------------
    [MainSet]
    StartRunMin=0
    CallHaveWnd=1
    CallVoicePath=.\callvoice.wav
    SMSHaveWnd=1
    SMSHaveVoice=1
    SMSVoicePath=.\SMSvoice.wav
    AutoRun=0
    AutoChkSMS=1
    [UISet]
    CRTransparent=255,255,255
    FlashBmpPath=.\SplashWnd.bmp
    [PowerManage]
    Allow=0
    [Profiles]
    Default=TelkomFlexi
    [TelkomFlexi]
    Apn=
    IP Dynamic=0
    Number=#777
    User=h5g2j7v9@free/(Username anda) yang defaultnya telkom@flexy
    Password=telkom
    Authentication protocol=0
    Dns Dynamic=0
    Wins Dynamic=0

    dan setelah itu restart program koneksi anda sekarang sudah siap untuk berseluncur.....tanpa mengkhawatirkan username dan password kembali ke default lagi yang bikin pulsa kita habis...................dan modem telah saya uji coba online selama 96 jam nonstop dengan speed 24kbps download dan 12 kbps Upload tidak terasa over head (tidak ada panas yang berlebihan) pokoknya ok lah modem itu untuk berpetualang asalkan settingan semuanya ok sekiranya ini saja yang dapat saya bagikan sudah ngantuk.....hihihi kita sambung lagi nanti dengan topik yang lain.... link software di bawah ini

    Download VT-12

    Minggu, 18 April 2010

    sensor ultrasonic

    08-Nov-2008
    sensor ultrasonic

    Sensor ultrasonik adalah sensor yang bekerja berdasarkan prinsip pantulan gelombang suara dan digunakan untuk mendeteksi keberadaan suatu objek tertentu di depannya, frekuensi kerjanya pada daerah diatas gelombang suara dari 40 KHz hingga 400 KHz.

    Prinsip kerja Sensor Ultrasonik

    Sensor ultrasonik terdiri dari dari dua unit, yaitu unit pemancar dan unit penerima. Struktur unit pemancar dan penerima sangatlah sederhana, sebuah kristal piezoelectric dihubungkan dengan mekanik jangkar dan hanya dihubungkan dengan diafragma penggetar. Tegangan bolak-balik yang memiliki frekuensi kerja 40 KHz – 400 KHz diberikan pada plat logam. Struktur atom dari kristal piezoelectric akan berkontraksi (mengikat), mengembang atau menyusut terhadap polaritas tegangan yang diberikan, dan ini disebut dengan efek piezoelectric. Kontraksi yang terjadi diteruskan ke diafragma penggetar sehingga terjadi gelombang ultrasonik yang dipancarkan ke udara (tempat sekitarnya), dan pantulan gelombang ultrasonik akan terjadi bila ada objek tertentu, dan pantulan gelombang ultrasonik akan diterima kembali oleh oleh unit sensor penerima. Selanjutnya unit sensor penerima akan menyebabkan diafragma penggetar akan bergetar dan efek piezoelectric menghasilkan sebuah tegangan bolak-balik dengan frekuensi yang sama.

    Besar amplitudo sinyal elekrik yang dihasilkan unit sensor penerima tergantung dari jauh dekatnya objek yang dideteksi serta kualitas dari sensor pemancar dan sensor penerima. Proses sensing yuang dilakukan pada sensor ini menggunakan metode pantulan untuk menghitung jarak antara sensor dengan obyek sasaran. Jarak antara sensor tersebut dihitung dengan cara mengalikan setengah waktu yang digunakan oleh sinyal ultrasonik dalam perjalanannya dari rangkaian Tx sampai diterima oleh rangkaian Rx, dengan kecepatan rambat dari sinyal ultrasonik tersebut pada media rambat yang digunakannya, yaitu udara.

    Waktu di hitung ketika pemencar aktif dan sampai ada input dari rangkaian penerima dan bila pada melebihi batas waktu tertentu rangkaian penerima tidak ada sinyal input maka dianggap tidak ada halangan didepannya

    Timer/Counter dan Interupsi

    Timer/Counter

    Timer berfungsi untuk mengatur waktu kerja yang dibutuhkan AT89S51/52, tersedia dua buah timer yaitu Timer 0 dan Timer 1, masing-masing timer terdiri dari 16 bit counter yang dapat diprogram.

    Timer/Counter yang dioperasikan sebagai timer dapat digunakan untuk menghitung waktu dari sebuah kejadian. Nilai timer bertambah tiap machine cyle (12 pulsa clock) sehingga kecepatan bertambahnya ialah 1/12 dari frekwensi osilator. Dengan menggunakan Timer/Counter sebagai counter, maka Kit mikrokontroler akan selalu menghitung munculnya kejadian yang ditandai dengan adanya trigger. User tinggal memeriksa nilai counter pada saat yang ditentukan. Register-register Timer yang tersedia ialah :



    TMOD (Timer Mode Register)

    Register yang digunakan untuk mengatur timer/counter terdapat pada Timer Mode (TMOD) dan Timer Control (TCON). TMOD tidak dapat diakses secara bit (not bit addressable), beralamat di 89H. Gambar dibawah ini memperlihatkan alamat dan pembagian register TMOD





    Gambar 4.1 Register TMOD

    Penjelasan dari gambar di atas ialah :



    Ø Gate: Timer akan berjalan bila bit ini set dan INT0 (untuk Timer 0) atau INT1 (untuk Timer 1) berkondisi high

    Ø C/T: 1 = Counter 0 = Timer

    Ø M1 & M0: Untuk memilih mode timer, seperti pada Tabel 4.1:



    Tabel 4.1 Mode Operasi Timer /Counter

    M1


    M0


    Mode Operasi

    0


    0


    0


    Timer/Counter 13 bit

    0


    1


    1


    Timer /Counter 16 bit

    1


    0


    2


    Timer/Counter 8 bit auto reload

    1


    1


    3


    Split timer mode untuk timer/counter 0

    1


    1


    3


    Timer/Counter 1 berhenti



    4.1.2 THx dan TLx

    THx dan TLx (x adalah nomor Timer).Merupakan Register yang menunjukkan nilai dari timer di mana masing-masing Timer mempunyai dua buah register yaitu:

    - THx untuk high byte

    - TLx untuk low byte

    · TH0 : Timer 0 High Byte terletak pada alamat 8AH

    · TL0 : Timer 0 Low Byte terletak pada alamat 8BH

    · TH1 : Timer 1 High Byte terletak pada alamat 8CH

    · TL1 : Timer 1 Low Byte terletak pada alamat 8DH



    Misal register Timer/Counter 0 diisi dengan nilai 814AH dan register Timer/Counter 1 diisi dengan nilai 0CF32H, maka instruksinya sebagai berikut :

    MOV TH0,#81H

    MOV TL0,#4AH

    MOV TH1,#0CFH

    MOV TL1,#32H



    4.1.3 TCON (Timer Control Register)

    Pada register ini, hanya 4 bit saja yaitu TCON.4, TCON.5, TCON.6 dan TCON.7 saja yang mempunyai fungsi berhubungan dengan timer.







    Gambar 4.2 Register TCON



    Tabel 4.2 menampilkan penjelasan dari Timer control .





    Tabel 4.2 Timer Control



    Bit


    Alamat bit


    Simbol


    Penjelasan

    TCON.7


    8FH


    TF1


    Timer/Counter 1 overflow flag

    TCON.6


    8EH


    TR1


    Timer 1 Run Control Bit

    TCON.5


    8DH


    TF0


    Timer /Counter 0 overflow flat

    TCON.4


    9CH


    TR0


    Timer 0 Run Control Bit

    TCON.3


    8BH


    IE1


    External Interrupt 1 Edge flag

    TCON.2


    8AH


    IT1


    External interrupt 1 type control bit

    TCON.1


    89H


    IE0


    External Interrupt 0 Edge flag

    TCON.0


    88H


    IT0


    External interrupt 0 Type control bit



    Penjelasan dari gambar dan tabel diatas ialah :



    Ø TCON.7 atau TF1: Timer 1 Overflow Flag yang akan set bila timer overflow. Bit ini dapat di-clear oleh software atau oleh devais pada saat program menuju ke alamat yang ditunjuk oleh interrupt vektor.

    Ø TCON.6 atau TR1: 1 = Timer 1 aktif, 0 = Timer 1 non aktif

    Ø TCON.5 atau TF0: Sama dengan TF1

    Ø TCON.4 atau TR0: Sama dengan TR1



    Jika Timer/Counter yang diprogram akan digunakan sebagai sumber interrupt, maka IE dan /atau IP juga harus diatur. Misal kedua Timer/Counter digunakan sebagai sumber interrupt dengan prioritas Timer/Counter 1, maka instruksinya :



    MOV IP,#80H

    MOV IE,#8AH

    atau

    SETB PT1

    SETB ET1

    SETB ET0

    SETB EA



    Mode Timer

    Mode Timer terdiri dari:



    Mode 0 Timer 13 bit

    Pada Mode 0, disediakan terutama untuk menjaga kompatibilitas dengan prosesor 8048. pada Mode 0, register TLx (TL0 atau TL1) hanya digunakan 5 bit terendah saja sedangkan register THx (TH0 atau TH1) tetap selebar 8 bit. TLx akan terus bertambah hingga bernilai 1FH. Overflow akan terjadi jika ada perubahan dari FF1FH ke 0000H. Nilai THx dan TLx dapat diubah oleh user setiap saat dalam program.



    Mode 1 Timer 16 bit



    Mode 1 pada 89C51 semua bit TLx digunakan, sehingga mode 1 merupakan timer/counter 16 bit. TLx akan bertambah hingga bernilai FFH. Pada saat ada perubahan nilai TLx dari FFh ke 00H, THx akan bertambah 1. Nilai maksimal THx dan TLx ialah FFFFH (THx=FFH dan TLx =FFH). Overflow akan terjadi jika ada perubahan dari FFFFH ke 0000H.

    Gambar 4.3 Timer/Counter Mode 1









    Misalnya Timer/Counter 0 digunakan sebagai timer dalam mode 2 dengan external control dan Timer/Counter 1 digunakan sebagai counter dalam mode 1 dengan internal control, maka instruksinya :



    MOV TMOD,#5AH



    Sedangkan untuk menjalankan kedua timer, instruksinya :



    MOV TCON, #50H

    atau

    SETB TR0

    SETB TR1



    Mode 2 Timer 16 bit di 89S52

    Mode 2 ialah timer/counter 16 bit yang dapat beroperasi sebagai timer atau event counter. Timer 2 mempunyai 3 mode yaitu capture, auto-reload dan baud rate generator. Timer 2 terdiri dari 2 buah register 8 bit yaitu TH2 dan TL2. Berikut table Mode 2 pada 89S52.



    Tabel 4.3 Timer Mode 2 89S52

    RCLK+TCLK


    CP/RL2


    TR2


    MODE

    0


    0


    1


    16 bit auto reload

    0


    1


    1


    18 bit capture

    1


    x


    1


    Baud Rate Generator

    x


    x


    0


    Off



    Pada mode capture, 2 pilihan dipilih oleh bit EXEN2 di T2CON. Jika EXEN2=0, Timer 2 menjadi 16 bit timer atau counter dimana tergantung dari overflow set bit TF2 di T2CON. Bit ini dapat digunakan untuk membuat sebuah interupsi.





    Gambar 4.4 Mode Capture





    Timer 2 dapat diprogram untuk menghitung naik/mundur ketika dikonfigurasikan sebagai mode 16 bit auto-reload. Fitur ini dipanggil oleh bit DCEN (Down Counter Enable) yang berada di SFR T2MOD.

    Gambar 4.5 Timer 2 Mode Auto reload (DCEN=0)



    Timer 2 sebagai baud rate generator dengan menset TCLK dan/atau RCLK di T2CON. Sbeagai catatan, baud rate untuk mengirim dan menerima dapat berbeda jika Timer 2 digunakan untuk mengirim atau memancarkan dan Timer 1 digunakan untuk fungsi lainnya. Menset RCLK dan /atau TCLK membantu Timer 2 berada pada mode baud rate generator



    Gambar 4.6 Mode baud rate generator

    Mode 3

    Pada Mode 3 di 89C51, Timer/Counter 0 akan menjadi 2 timer/counter 8 bit, sedangkan Timer/Counter 1 akan berhenti. TL0 akan menjadi timer/counter 8 bit yang dikendalikan oleh bit control Timer/Counter 0 (meliputi GATE, C/T’, TR0, INT0, dan TF0). TH0 akan menjadi timer 8 bit (bukan counter) yang dikendalikan oleh bit control timer/counter 1 (meliputi TR1 dan TF1).Timer /Counter 1 masih dapat dioperasikan dalam mode selain mode 3.





    Penerapan Timer/Counter

    Timer bekerja memerlukan sumber detak dengan menghubungkan pin T0 (P3.4) sebagai input detak. Jika digunakan sumber detak internal, input detak berasal dari osilator yang telah dibagi 12. Untuk pengaturan Timer dengan software maka bit penentu keaktifan ialah Rtx sedangkan kondisi dari Bit Gate harus berlogika 0. Pengaturan Timer dengan hadware, penentu keaktifan ialah INTx sedangkan kondisi Bit Gate dan TRx harus berlogika 1.

    Timer ini sering digunakan untuk mengatur baud rate dari port serial. Dengan mengubah bit SMOD yang terletak pada register PCON menjadi set (kondisi awal pada saat sistem reset adalah clear) maka baud rate pada Mode 1, 2 dan 3 akan berubah menjadi dua kali lipat.



    Contoh program berikut ialah penggunaan fasilitas Timer pada mikrokontroler . Untuk menggunakan Timer/Counter 0 sebagai timer mode 1, maka GATE, C/T dan M1 untuk Timer 0 pada TMOD berlogika 0 dan M0 berlogika 1 sehingga TMOD bernilai 01H. Sedangkan untuk menjalankan Timer 0, maka TR0 (TCON.4) berlogika 1 sehingga TCON bernilai 10H. Pada contoh dibawah ini Timer 0 diberi nilai awal 2CH untuk TH0 dan 00H untuk TL0 sehingga Timer 0 akan selalu dimulai dari nilai 2C00H. Karena frekwensi timer tinggi, maka digunakan faktor pengali 10H yang berada pada R0.

    Langkah-langkah :

    · Hubungkan Port 1 DT-51 dengan “PORT OUTPUT” DT-51 Trainer Board

    · Hubungkan “CONTROL” DT-51 dengan “CONTROL“ DT-51 Trainer Board

    · Buat program berikut :



    Program timer untuk Led berkedip (timer.asm)

    $MOD51

    CSEG

    ORG 4000H

    LJMP START

    ORG 400BH

    COUNT: INC R0

    CJNE R0,#10H,OUT1

    SETB P1.5

    LOOP: MOV R6,#0FFH

    DJNZ R6,$

    DJNZ R7,LOOP

    CLR P1.5

    MOV R0,#00H

    OUT1: MOV TH0,#2CH

    MOV TL0,#00H

    RET1

    ;inisialisasi

    ORG 4200H

    START: MOV SP,#30H

    MOV R0,#00H

    MOV TMOD,#01H

    MOV TH0,#2CH

    MOV TL0,#00H

    MOV TCON,#10H

    MOV P1,#00H

    MOV IE,#82H

    SJMP $

    END



    Jika program dijalankan, akan menampilkan nyala LED Bit 5 berkedip dimana baru akan dinyalakan atau dipadamkan setelah interupsi oleh Timer 0 sebanyak 16 x. Perhatikan pada saat interupsi, program akan melompat ke alamat vector 000BH tetapi oleh DT51 akan langsung dipindah ke alamat 400BH.



    Contoh berikut menggunakan Timer/Counter 0 Counter Mode 2, langkah-langkahnya :

    * Hubungkan Port 1 DT-51 dengan Port output DT-51 trainer board menggunakan kabel tipe Y.
    * Hubungkan Control DT-51 dengan Control DT-51 Trainer board (sebagai sumber tegangan dan koneksi T0) menggunakan kabel tipe X
    * Hubungkan IS3 MinSys dengan T0 pada DT-51 Trainer board
    * Hubungkan DT-51 dengan PC menggunakan kabel serial
    * Ketik program berikut :



    Program Counter Mode 2 (mode2.asm)

    $MOD51

    CSEG

    ORG 4000H

    LJMP START

    ORG 400BH

    MOV P1, #00H

    SETB P1.5

    PUSH 5

    PUSH 6

    PUSH 7

    MOV R7,#0FH

    LUPA: MOV R6,#0FFH

    LUPB: MOV R5,#0FFH

    DJNZ R5,$

    DJNZ R6,LUPB

    DJNZ R7,LUPA

    POP 7

    POP 6

    POP 5

    RETI

    ORG 4100H

    DELAY:MOV R7,#04H

    LUP1: MOV R6,#0FFH

    LUP2: MOV R5,#0FFH

    DJNZ R5,$

    DJNZ R6,LUP2

    DJNZ R7,LUP1

    RET

    ;inisialisasi

    START: MOV SP,#30H

    MOV TMOD,#06H

    MOV TH0,#0FAH

    MOV TL0,#0F6H

    SETB TR0

    CLR TF0

    MOV IE,#82H

    ;Program Utama

    LOOP1: MOV P1,#00110011B

    ACALL DELAY

    MOV P1,#11001100B

    ACALL DELAY

    SJMP LOOP1

    END



    Program akan menampilkan nyala LED bergantian antara data 00110011b dengan 11001100b. Pada saat terjadi interupsi, maka LED bit 5 akan menyala sejenak. Untuk menggunakan Timer/Counter 0 sebagai counter mode 2, maka GATE dan M0 untuk Timer 0 pada TMOD berlogika 0 dan C/T dan M1 berlogika 1, sehingga TMOD bernilai 00000110b atau 06H. Untuk menjalankan counter 0, maka TR0(TCON.4) berlogika 1, sehingga TCON bernilai 0010000b atau 10H. Perintah CLR TF0 digunakan untuk memberikan interrupt flag sebelum interupsi diaktifkan. Untuk mengaktifkan interrupt counter 0, maka EA (IE.7) dan ET0(IE.1) berlogika 1, sehingga IE bernilai 10000010b atau 82H. Pada contoh program diatas, counter 0 diberi nilai awal F6H untuk TL0, sehingga membutuhkan 10 x penekakan keypad IS3 untuk menghasilkan interupsi pertama. Dan sebagai nilai reload pada TH0 diberi nilai FAH, sehingga hanya membutuhkan 6 x penekanan keypad IS3.



    Penerapan lainnya, misal jika kita ingin membuat bunyi dengan frekwensi 1Hz, periodanya ialah T=1/f, perioda yang dihasilkan ialah 1 detik. Dengan demikian perioda port tinggi ialah 0.5 detik dan perioda port rendah ialah 0.5 detik.



    Gambar 4.7 Rangkaian driver speaker



    Assumsikan bahwa frekwensi detak 12 MHz, maka tundaan maksimum yang dicapai ialah 65535 x 1 uS =0.065 detik. Untuk itu timer digunakan sebagai penghasil tundaan selama 0.01 detik (10.000 x 1 uS). Dengan pembagi 50 akan didapat tundaan 0.01 detik x 50 =0.5 detik. Nilai untuk TH0 dan TL0 ialah :



    65535 -10.000=55535D=D8EFH



    Nilai untuk TH0 ialah D8H dan untuk TL0 ialah EFH. Berikut contoh program penghasil bunyi di speaker:



    Listing Program 6. Penghasil bunyi di speaker (bunyi.asm)

    $MOD51

    ORG 00H ; MENGGUNAKAN ALAMAT AWAL MIKRO





    MULAI: SETB P1.0

    ACALL TUNDA

    CLR P1.0

    ACALL TUNDA

    SJMP MULAI

    TUNDA: MOV R0,#0

    LAGI: MOV TMOD, #01

    MOV TH0, #0D8H

    MOV TL0, #0EFH

    SETB TR0

    ULANG: NOP

    JBC TF0, HITUNG

    SJMP ULANG

    HITUNG: INC R0

    CJNE R0, #100, LAGI

    RET



    END



    Interupsi



    Program yang sedang dijalankan oleh mikrokontroler AT89S51/52 dapat dihentikan untuk sementara yang dikenal dengan instilah interupsi. Jika AT89S51/52 mendapat permintaan interupsi maka program counter (PC) akan diisi alamat dari vector interupsi, kemudian AT89S51/52 melaksanakan rutin pelayanan interupsi mulai dari alamat tersebut setelah selesai maka AT89S51/52 akan kembali ke pelaksanaan program utama yang ditinggalkan. Mikrokontroler AT89S51/52 menyediakan 6 sumber interupsi yaitu 2 buah interupsi eksternal (INT 0 dan INT 1), 3 buah interupsi timer (Timer 0, Timer 1, dan Timer 2), dan sebuah interupsi port serial.

    Interupsi ialah suatu sela yang terjadi pada saat program sedang berjalan. Mirip halnya dengan interupsi yang terjadi pada saat rapat yang sedang berlangsung. Interupsi berguna jika terdapat suatu rutin yang dijalankan hanya pada waktu tertentu yang bersifat asinkron.



    Berikut Interrupt Enable pada MCS-51:



    Tabel 4.4 Interrupt Enable

    Bit


    Alamat bit


    Simbol


    Penjelasan

    IE.7


    0AFH


    EA


    Enable All

    -


    -


    -


    Reserved

    -


    -


    -


    Reserved

    IE.4


    0ACH


    ES


    Serial Interrupt Enable Bit

    IE.3


    0ABH


    ET1


    Timer/Counter 1 Enable bit

    IE.2


    0AAH


    EX1


    External Interrupt 1 enable Bit

    IE.1


    0A9H


    ET0


    Timer /Counter 0 Enable Bit

    IE.0


    0A8H


    EX0


    External Interrupt 0 Enable Bit





    Jika terjadi interupsi, maka interrupt flag akan bernilai 1 pada bit yang menunjukkan sumber interrupt. Jika CPU menemukan adanya interrupt pada saat sampling, proses selanjutnya ialah CPU akan menjalankan instruksi LCALL yang akan menyimpan Program Counter (PC) ke stack dengan urutan 8 bit terendah terlebih dahulu. Jika sumber interupsi berasal dari Timer/Counter atau External interrupt, interrupt flag yang bersangkutan akan dibersihkan.

    Pastikan juga user mengamankan nilai register dengan menggunakan PSW, ACC, B, R0-R7 dan DPTR. Selain itu, register yang di-PUSH pertama harus di-POP terakhir. Selain itu, gunakan RETI agar fungsi kembali ke alamat semula.



    Contoh program berikut merupakan Penggunaan INT0 dengan interrupt enable.

    Langkah-langkahnya :

    * Hubungkan port 1 dt-51 dengan “PORT OUTPUT” DT-51 trainer board menggunakan kabel Tipe Y
    * Hubungkan “Control” DT-51” MinSys dengan “Control “DT-51 trainer board
    * Hubungkan “IS1” dengan “INT0” pad DT-51 trainer board
    * Hubungkan DT-51 MinSys dengan PC menggunakan kabel serial

    Buat proram berikut :



    Program Interrupt Enable (ie.asm)

    $MOD51

    CSEG

    ORG 4000H

    LJMP START

    ORG 4003H

    RL A

    MOV P1,A

    MOV R7,#04H

    LOOPA: MOC R6, #0FFH

    LOOPB: MOV R5,#0FFH

    DJNZ R5,$

    DJNZ R6,LOOPB

    DJNZ R7,LOOPA

    RETI

    ORG 4200H

    ;inisialisasi

    START: MOV SP,#30H

    MOV TCON,#01H

    MOV P1,#01H

    MOV IE,#81H

    SJMP $

    END



    Program diatas akan menampilkan nyala LED dari Bit 0 dan bergeser ke kiri setiap ada penekanan keypad “IS1”. Untuk mengunakan INT0 dengan falling edge trigger maka INT0 (TCON.0) berlogika 1, sehingga TCON bernilai 00000001b(01H). Untuk mengaktifkan interrupt, maka EX0 (IE.0) dan EA(IE.7) berlogika 1 sehingga IE bernilai 10000001b (81H), terlihat juga bahwa pada saat interupsi program melompat ke alamat vector 0003H yang oleh DT-51 langsung dipindah ke alamat 4003H. Fungsi DJNZ digunakan untuk mengurangi satu dan lompat jika hasilnya bukan nol.



    Contoh penggunaan interupsi lainnya, program berikut akan menggunakan INT0 dan INT1 dengan Interrupt Priority.

    Langkah-langkahnya :

    1. Hubungkan Port 1 DT-51 dengan Port Ouput DT-51 Trainer board menggunakan kabel tipe Y
    2. Hubungkan Control DT-51 MinSys dengan Control DT-51 Trainer board menggunakan kabel tipe X
    3. Hubungkan IS1 dengan INT0 dan IS2 dengan INT1 pada DT-51 trainer board
    4. Hubungkan DT-51 MinSys dengan PC menggunakan kabel serial
    5. Ketik program berikut :



    Program INT0 dan INT1 (inprio.asm)

    $MOD51

    CSEG

    ORG 4000H

    LJMP START

    ORG 4003H

    LJMP INTER0

    ORG 4013H

    LJMP INTER1

    ORG 4100H

    INTER0: MOV P1,#0H

    SETB P1.0

    LCALL LDELAY

    CLR P1.0

    RETI

    INTER1: MOV P1,#0H

    SETB P1.7

    LCALL DELAY

    CLR P1.7

    RETI

    ORG 4200H

    LDELAY: PUSH 7

    PUSH 6

    PUSH 5

    MOV R7, #24H

    LUPA: MOV R6, #0FFH

    LUPB: MOV R5, #0FFH

    DJNZ R5, $

    DJNZ R6, LUPB

    DJNZ R7, LUPA

    POP 5

    POP 6

    POP 7

    RET



    SDELAY: PUSH 7

    PUSH 6

    PUSH 5

    MOV R7, #04H

    LUP1: MOV R6, #0FFH

    LUP2: MOV R5, #0FFH

    DJNZ R5, $

    DJNZ R6, LUP2

    DJNZ R7, LUP1

    POP 5

    POP 6

    POP 7

    RET



    ;inisialisasi

    START: MOV SP,#30H

    MOV TCON, #05H

    MOV IP, #04H

    MOV IE, #85H

    ;Program Utama

    LOOP1: MOV P1,#01010101B

    ACALL SDELAY

    MOV P1, #10101010B

    ACALL SDELAY

    SJMP LOOP1

    END



    Progam akan menampilkan nyala LED yang bergantian. Setiap kali ada penekanan keypad IS1, hanya LED bit 0 yang akan menyala. Setiap kali ada penekanan keypad IS2, hanya led bit 7 yang akan menyala. Untuk menggunakan INT0 dan INT1 dengan falling edge trigger (transisi dari high ke low), maka IT1(TCON.2) dan IT0 (TCON.0) berlogika 1, sehingga TCON bernilai 00000101b atau 05H. Untuk memindah INT1 ke tingkat prioritas lebih tinggi, maka PX1 (IP.2) berlogika 1 sehingga IP bernilai 00000100b atau 04H.

    Untuk mengaktifkan INT0 dan INT1, maka EX0(IE.0), EX1(IE.2), dan EA (IE.7) berlogika 1, sehingga IE bernilai 10000101b atau 85H. Rutin interrupt pada alamat vector 4003H dan 4013H dipindah ke alamat lain dengan perintah LJMP. Hal ini dilakukan agar rutin dapat lebih panjang tanpa khawatir menerjang alamat vector berikutnya. Perhatikan bahwa penekanan keypad IS2 dapat menginterupsi rutin penekanan keypad IS1, tetapi tidak sebaliknya. Hal ini dikarenakan INT1 berada pada tingkat prioritas lebih tinggi. Perhatikan juga bahwa SDELAY menggunakan alamat yang sama dengan LDELAY. Untuk menghindari kekacauan nilai, maka diperlukan PUSH dan POP.





    LATIHAN :

    1. Jelaskan cara kerja timer/counter di AT89C51 dan AT89S52

    2. Buat tampilan animasi menggunakan 7 segment trainer board, sebagai contoh berikut akan menampilkan angka ‘7’ dan ‘5’ di 7 segment trainer board



    $MOD51

    PORTC EQU 2002H

    CW EQU 2003H

    CSEG

    ORG 4000H

    LJMP START
    DELAY: MOV R6,#0FH

    LUP: MOV R7,#0FFH

    DJNZ R7,$

    DJNZ R6,LUP

    RET

    START: MOV SP,#30H

    MOV DPTR,#CW

    MOV A,#80H;konfigurasi Port A,B dan C

    MOVX @DPTR,A

    LOOP:

    ;menampilkan angka 5 di 7 segment 1

    MOV DPTR,#PORTC

    MOV A,#80H

    MOV @DPTR,A

    MOV P1,#6DH

    LCALL DELAY

    ;menampilkan angka 7 di segment 2

    MOV A,#40H

    MOV @DPTR,A

    MOV P1,#07H

    LCALL DELAY

    SJMP LOOP

    END



    Jika tidak ada kesalahan, program akan menampilkan angka 7 pada segment 2 dan angka 5 pada segment 1 secara serentak tanpa berkedip. Pada program tersebut, D01 terhubung dengan Port C bit ke 6 (PC.6) dan D02 terhubung dengan Port C bit ke 7 (PC.7). Untuk menampilkan angka 7 pada segment 2, maka D02 berlogika 0 dan D01 berlogika 1, jadi data 7 segment yang dikirim bernilai 00000111b atau 07H.

    Untuk menampilkan angka 5 pada segment 1, maka D02 bernilai 1 dan D01 berlogika 0, maka data yang dikirim ke port 1 bernilai 01101101b atau 6DH.









    3. Jelaskan fungsi interupsi dan efeknya bagi program yang sedang berjalan

    4. Buatlah program untuk menampilkan led di port 1 dengan CO1 yang dihubungkan ke T1 pada DT-51 trainer board dan jumper Pulse Generator pada 1KHz, dengan syarat:

    1. Semua led dimulai dari keadaan padam
    2. Gunakan Timer/Counter 0 sebagai Timer mode 1
    3. Setiap timer 0 berjalan selama 1 detik, register counter 1 ditampilkan ke LED secara bergantian.
    4. Sebelum keluar dari Interrupt Service Routine Timer 0, kembalikan semua register kedua Timer/Counter menjadi 0000H lagi.
    5. Ulangi lagi latihan tersebut dengan jumper “Pulse Generator” pada 10KHz.

    5. Buat program jika P1.1 diberi logika 1, maka Port A akan menampilkan nyala lampu Running LED ke arah kiri, sedangkan jika p1.2 yang diberi logika 1, maka port B akan menampilkan nyala lampu Running LED ke arah kanan.

    6. Buat program untuk menampilkan LED di port B dengan toggle switch di port C untuk kondisi :

    a. Jika toggle switch “bit 2” berlogika “1”, maka semua LED akan padam

    b. Jika toggle switch “Bit 2” berlogika ‘0’, program akan memeriksa kondisi toggle switch “Bit 5”

    c. Jika toggle switch “Bit 2” berlogika ‘0’ dan toggle switch “Bit 5” berlogika ‘0’, led “Bit 2” menyala.

    d. Jika toggle switch “Bit 2” berlogika ‘0’ dan toggle switch “Bit 5” berlogika ‘1’, LED “Bit 5” menyala.

    Tag printah membuat robot sederhana

    $MOD51

    ORG 00H
    ;inisialisasi awal
    BEGIN: MOV P3,#00H ;Port2 0x00 (motor stop)
    MOV P1,#03H ;Port0.0 dan Port0.1 logika 1 (rendah aktif)
    ;bisa juga MOV P1,#00000011B (dalam biner)
    ACALL TUNDA_1S ;tunda dulu
    ROTASI:SJMP MAIN
    TESTDRIVE: ACALL MAJU ;robot maju 3 detik
    ACALL TUNDA_1S
    ACALL TUNDA_1S
    ACALL TUNDA_1S
    ACALL MUNDUR ;robot mundur 3 detik
    ACALL TUNDA_1S
    ACALL TUNDA_1S
    ACALL TUNDA_1S
    ACALL B_KANAN ;robot belok kanan 3 detik
    ACALL TUNDA_1S
    ACALL TUNDA_1S
    ACALL TUNDA_1S
    ACALL B_KIRI ;robot belok kiri 3 detik
    ACALL TUNDA_1S
    ACALL TUNDA_1S
    ACALL TUNDA_1S
    ACALL ROTASI ;robot rotasi 3 detik
    ACALL TUNDA_1S
    ACALL TUNDA_1S
    ACALL TUNDA_1S
    MOV P3,#00H ;test drive selesai
    ACALL TUNDA_1S ;diam 1 detik (siap" neh)

    MAIN: ACALL MAJU ;default robot maju
    ACALL TUNDA ;tunda 100ms
    JNB P1.0,S_KIRI ;cek sensor kiri
    JNB P1.1,S_KANAN ;cek sensor kanan
    SJMP MAIN ;looping terus menerus

    S_KIRI: JNB P1.1,S_DUA ;cek dlu kanan jg tersentuh atau tdk?
    ACALL B_KANAN ;sensor kiri tersentuh belok kanan
    ACALL TUNDA_1S
    SJMP MAIN

    S_KANAN: ACALL B_KIRI ;sensor kanan tersentuh belok kiri
    ACALL TUNDA_1S
    SJMP MAIN

    S_DUA: ACALL MUNDUR ;sensor kiri n kanan tersentuh robot mundur
    ACALL TUNDA_1S
    ACALL ROTASI ;setelah mundur robot rotasi
    ACALL TUNDA_1S
    ACALL TUNDA_1S
    SJMP MAIN ;ke program utama
    S_DEPAN:ACALL K_DEPAN;SENSOR DEPAN TERSENTUH HIDUPKAN KIPAS
    ACALL TUNDA_1S
    ACALL TUNDA_1S
    SJMP MAIN
    MAJU: MOV P3,#0011 ;konfigurainya coba" aja
    RET
    MUNDUR: MOV P3,#1010
    RET
    B_KANAN: MOV P3,#1011
    RET
    B_KIRI: MOV P3,#0100
    K_DEPAN: MOV P2,#1111
    RET

    ;-----------------------------------
    ; TUNDA
    ;-----------------------------------
    TUNDA_1S: ACALL TUNDA_05S ; tunda selama 1 S
    ACALL TUNDA_05S
    RET

    TUNDA_05S: MOV A,#100 ; tunda selama 0,5 S
    TUNDA_LOOP: LCALL TUNDA_MODE
    DJNZ ACC,TUNDA_LOOP
    RET

    TUNDA: MOV A,#20 ; tunda selama 100 mS
    TUNDAX: LCALL TUNDA_MODE
    DJNZ ACC,TUNDAX
    RET

    TUNDA_MODE: PUSH TMOD ; tunda selama 5 mS
    MOV TMOD,#21H
    MOV TH0,#0EDH
    MOV TL0,#0FFH
    SETB TR0
    TUNDA_5MS: JBC TF0,TUNDA_OK
    SJMP TUNDA_5MS
    TUNDA_OK: CLR TR0
    POP TMOD
    RET

    END

    My online



    Slider

    Follow on facebook or twiter

    Blog ini dibuat oleh Guesthackers

    Bagikan ini |

    Puisi Indonesia

    Sindikasi news.okezone.com

    Pemberitahuan Facebook Peoople Hack Saputra

    Yahoo blog