Anda di halaman 1dari 39

PERTEMUANI

DEMUXDAN MULTIPLEXER

1. Tujuan
1. 2. 3. Mengenal dan memahami macam-macam gerbang logika sebagai dasar rangkaian kombinasional. Mengenal dan memahami prinsip dasar rangkaian sekuensial. Dapat memahami dan menerangkan suatu rangkaian kombinasional dan sekuensial dengan menggunakan IC TTL(Transistor-TransistorLogic) danIC CMOS (ComplementaryMetalOxideSemiconductor).

2. DasarTeori
Sistem digital merupakan dasar bagi system computer digital dan beberapa sistem Control automatisasi. Sistem digital ini telah diterapkan diberbagai bidang yang sangat luas. Sistem digital berbeda dengan teknik analog, pada system digital hanya dikenal dua keadaan yang berbeda yaitu HIGH dan LOW (biasanya +5 volts(V) dan 0 volts(V)), yang direpresentasikan dengan 1 dan 0 ,aktif dan non-aktif, dan sebagainya. Sebagai contoh perbedaan system digital dengan system analog dapat dilihat pada Gambar1.

(a)

(b)

(c)

(d)

Gambar 1 Analog - Digital: (a) Bentuk Gelombang Analog; (b) Bentuk Gelombang Digital; (c) Jam Analog; (d) Jam Digital Untuk dapat mewujudkan pengolahan data dengan system digital pada dasarnya kita harus mengenal rangkaian inti pada system digital yaitu: 1. Rangkaiankombinasional adalah rangkaian yang outputnya hanya tergantung pada input pada saat itu. Pada prinsipnya, rangkaian kombinasional merupakan penerapan dan penerjemah langsung dari aljabar Boolean, yang biasanya dinyatakan

Sebagai fungsi logika. Operator logika yang digunakan dalam aljabar Boolean adalah inversi/negasi (NOT), perkalian logika (AND), penambahan logika(OR). Aturan dalam aljabar klasik juga berlaku pada Aljabar Boolean, yaitu: a. Commutative law of addition: A+B=B+A, and multiplication: AB=BA b. Associative law of addition: A+(B+C)=(A+B)+C, and multiplication: A(BC)= (AB)C. c. Distributivelaw: A(B+C)=AB+AC,and(A+B)(C+D)=AC+AD+BC+BD. 2. Rangkaian sekuensial adalah rangkaian yang outputnya tidak saja bergantung pada input pada saat itu saja tetapi juga bergantung pada keadaan output sebelumnya.

3. AlatdanBahan
1. 2. 3. 4. 5. 6. 7. 8. 9. InputBoard OutputBoard ICTTL:74LS00,74LS04,74LS08,74LS32, (74LS02, 74LS86,7473,7474,CD4001 danCD4011 OPTIONAL),masing-masing1buah Resistor1kwatt ProjectBoard Multimeter CatuDaya5Volt Kabel Modul Analog Digital

4. ProsedurPercobaan
Pada percobaan ini akan digunakan project-board atau Prototyping-PCB sebagaisarana untuk merealisasikan rangkaian digital. Praktikan hendaklah melakukn beberapa hal berikut ini sebelum melakukan praktikum: Pastikan semua alat dan bahan sudah disiapkan. Perhatikan datasheet tiap-tiap IC yang digunakan pada modul ini, amati setiap PIN Pada IC tersebut (letak VCC, GND, dan kaki input/output) Periksa catu daya sebelum diberikan terhadap rangkaian, sesuaikan dengan TTL yang dibutuhkan yaitu +5 VDC. Kerusakan komponen akibat tegangan yang tidak sesuai atau akibat kesalahan letak input/output menjadi tanggung jawab praktikan! Periksa pemasangan IC pada rangkaian dengan mengukur kaki tegangan catu daya (+5V dan GND) Periksaapakah TTL dan IC masih berfungsi dengan baik. Periksakabel-kabel dan konektor, gunakan multitester untuk melakukannya. Periksa LED keluaran

1. 2. 3.

4. 5. 6. 7.

Pada saat praktikum berlangsung, praktikan hendaklah memperhatikan hal-hal berikutini: 1. Matikan catudaya pada saat merangkai atau mengubah rangkaian dan mengganti IC 2. Periksa VCC dan GROUND yang akan diberikan ke pin IC. Gambar2 menunjukkan cara memberikan catu daya ke IC jika tidak menggunakan board input dan output.

Gambar2.RangkaianVCCdanGROUND UntukmemberikanmasukanpadapinIC: Lowvoltage:langsungdihubungkankeground, Highvoltage:HARUSdilewatkanResistor~1KdariVCC 1. 1. Percobaan 1a: Mengena lI CTTL(74LS00atau74LS02) Gunakan IC74LS00 (untukNAND), kemudian buatlah rangkaian sesuai dengan Gambar 3 pada project-board. Jangan lupa memberikan VCC=5Volt dan Ground pada IC dan keluaran dihubungkan dengan LED yang ada output board. Gunakan input board sebagai masukan pada rangkaian tersebut. Berdasarkan pengamatan diatas, tuliskan hasil keluaran pada LED dengan berbagai kombinasi input di Tabel 1 pada logbook. Ulangi langkah 12 dengan menggunakan IC74LS02 (untuk NOR) dan hasilnya Ditulis pada table 2 pada logbook. Apa yang dapat disimpulkan dari percobaan ini? ( TuliskandiLogbook).

2. 3. 4.

(a)

(b)

(c) Gambar3Percobaan1a.dan1b.

(d)

2. 1. 2. 3.

4.

Percobaan 2: Rangkaian Kombinasional sederhana IC TTL Suatu persamaan logika dapat diperoleh sebagai berikut: Buatlah persamaan logika: Q=A+B, menjadi persamaan yang hanya memuat operasi NAND atau NOR saja. Gambarkan rangkaiannya, kemudian buat rangkaiannya dari ICTTL yang tersedia pada project-board. Hubungkan output dengan LED dan berikan kombinasi berbagaiinput,kemudian amatioutputnyapadaoutputboard.TulislahhasilpengamatanandapadaTabel5 padalogbook. Daripercobaanini,apayangdapatandasimpulkan?(TuliskandiLogbook!)

3. Percobaan3:ANDNORGate PadapercobaaninidapatdigunakanANDGatedanSN7408ataukombinasidariSN 7400(NANDgate)danSN7404(INVERTER)sedangkanNORdapatdipakaiSN7402.

Gambar4Percobaan3 1. 2. 3. 4. SusunlahrangkaiansepertiGambar4. BerikanberbagaikombinasiinputdantuliskanoutputpadaTabel6(K-Map)dilog book. DenganmenggunakanK-Maptersebutcarilahpersamaanoutputnya.(Tuliskandilog book!) Samakahhasilnyadenganperhitungan,jelaskan.(Tuliskandilogbook!)

4. Percobaan4:RSFLIP-FLOPdanCLOCKEDRSFLIP-FLOP 1.BuatlahrangkaiansepertiGambar5Aberikutini:

1 3 2

R Q

1 3 2

1 3 2

Clock
-Q
1 1 3 2 3

-Q
3

S (A)

(B)

2. 3. 4.

Gambar5Percobaan4 BerikanberbagaikombinasiinputSR,tuliskanoutputQdanQpadaTabel7di logbook. Tanpamerubahrangkaian,tambahkan2buahgerbangNANDpadainputRSflipflop(sepertipadaGambar5B)dantuliskanhasilnyapadaTabel8dilogbook. Daripercobaantersebut,apayangdapatdisimpulkandarirangkaianRSFlip-Flop; fungsidarigerbangNANDuntukmasukaninputFlip-Flop;danfungsiclockuntuk rangkaianclockedRSFlip-Flop.(TuliskandiLogbook!) Percobaan5:Dflip-flop(IC7474) Buatlahrangkaiansepertipadagambar6A.Janganlupamemberikanmasukanyang benarpadaPRdanCLR. Amati keluaran rangkaian seperti biasa dengan memasangkan LED pada keluarannya.

5. 1. 2.

Q CLR

CLR

3.

Gambar6Percobaan5 Gambarkanhasilpengamatanpadatimingdiagram.(Tulispadalogbook)

b. c.

KarenaClockdiberikansecaramanualkemungkinanapasajayangterjadi,jelaskan! BagaimanamengatasimasalahyangditimbulkanolehpemberianClocksecara manual?

8. Percobaan8:HALFADDER2-bit RangkaianHALFADDERberfungsimelakukanoperasiyangdapatdiinterpretasikan sebagaipenjumlahanduabitinput,yaitubitAdanbitB,danmenghasilkanduabit output,yaituSUM(S)danCARRY(C).Adapunrangkaianlogikanyadapat diimplementasikansepertigambar8,ataudapatjugadisusundenganmenggunakan gerbangANDdanORsehinggamenghasilkanhubunganXOR.

1. 2. 3. 4. 5.

6.

7. a. b.

Gambar8Percobaan8 Nyatakanpersamaanlogika: S=AXORB menjadipersamaanyanghanya memuatoperasiANDdan/atauOR.TuliskandiLogbook SusunlahrangkaianHalf-Adder2bitdenganrangkaiansepertigambar8. BerimasukanpadaAdanB,laluperiksakeluaranCARRYOUT(C)danSUM(S) untuksetiapkombinasiinput. Catathasilnyapadatabel10dilogbook. SusunlahrangkaianHalf-Adder2bitdenganmenggunakanrangkaianANDdan/atau OR.GambarkanrangkaianandadiLogbook,berikanlabelpadasetiapkeluaran gerbanglogika(PASTIKANperkabelanandatelahbenarsebelummencoba). Lakukanpercobaansepertilangkah3diatasuntukrangkaianyangtelahandabuatdi no.5,danbuatlahhasilpengukuranpadatabel11padalogbook,denganmenyertakan pengukuranditiaptitikkeluarangerbanglogikaanda. Berdasardatayangdiperolehdiatas,maka:(TuliskandiLogbook) Apaperbedaanhasilyangandaperolehdarikeduapercobaandiatas?Mengapa? Kesimpulanapayangandaperolehdaripercobaanini? ==============

TUGASPENDAHULUAN
1. a.CarilahDatasheetdarisemuayangdigunakanpadapraktikum ini(TTLdanCMOS).(Terutamatentangpinassignmentdaritiapchip). b.SebutkanperbedaanyangmendasardariICrangkaianlogika,antarayang berbasisTTLdanCMOS.Gunakandatasheet1.a.sebagaibahanjawabananda. SebutkanmanfaatK-mapdalamrangkaianlogika,danjelaskan! Sebutkanalasan,kenapadalammewujudkanrangkaianlogika,lebihdiutamakan untukmemakaigerbangNANDdanNOR? Untukrangkaianlogika,seringdibuathubunganlangsungoutputsuatugerbang denganinputgerbangyanglain(feeding/driving).Sebutkanbatasan-batasandalam melakukanhalini,danjelaskan! Sebutkankarakteristik,fungsidanperbedaanmasing-masing,antaraRS-FlipFlop, D-FlipFlop,JK-FlipFlopdanT-FlipFlop! Analisislahgambarberikut:

2. 3. 4.

5. 6.

Vout

Vin

a. b. 7. 8.

Hubunganinput-outputpadagrafikdiatasmensimulasikanrangkaianapa? Bagaimanapenjelasananda? BerapanilaitPLH,tPHL,risetimedanfalltime?Tunjukkanpadagambardiatas. Jelaskan mengenai rangkaian sinkron dan asinkron! Apa persamaan perbedaannya? Gambarkanrancanganrangkaiancounter3-bitmenggunakanrangkaianD-FF.

dan

Mux adalah suatu rangkaian dengan banyak jalan masukan dan satu jalan keluaran. Denganmenerapkansinyalpengendalidapatdarahkansetiapsinyalmasukandankeluaran.Mux adalah data selector, sedangkan demux kebalikannya, yaitu suatu rangkaian logika yang mempunyai sinyaldarisatumasukan dan banyaksinyalkeluaran. Sinyal yang masuk baik mux maupun demux selalu ditentukan oleh selektor, apabilah sinyal kendalirendahmakapadamuxkeluarannyajugarendah.Padamuxdandemuxbit data masukanakanditeruskankeoutputdengankondisidaripengendali,misaluntukmuxjikainputA

diberikondisi1makapadakeluarannyaAyangtampilpadamuxdengankondisipengendalinya S0 =0 dan S1=0sedangkan untukinputyanglain tidakberlaku. LANGKAH-LANGKAHPERCOBAAN: 1. 2. 3. 4. Buatlah rangkaian sepertipadagambar. Aturselektorsesuaikondisiuntukmendapatkan outputyangdiinginkan Buatlah datahasilpercobaan. berikananalisadan kesimpulansaudara.

Rangkaian Gabungan Multiplexerdan Demultiplexer Tabeldatapercobaan Selector A 0 0 1 1 B 0 1 0 1 Keluaran

PERTEMUAN II R-S FLIP-FLOP DAN CLOCKED R-SFLIP-FLOP


TUJUAN PERCOBAAN: Membangun dan mengoperasikan R-S flip-flop dan Clocked R-S flip-flop dengan menggunakan gerbang-gerbanglogika. Mengamati fungsi-fungsiR-S Flip-flop dan Clocked FF. MembuatTabelkebenaran. MelengkapidiagramtiminguntukClockR-S FF. ALAT-ALATYANGDIGUNAKAN: ModulPraktikumAnalog-Digital 1 buah IC SN 7400 2 buah Led indicator 1 buah Resistor100 ohm 1 buah Miniprotoboard 1 buah Kabeljumperdan kabel-kabelpenghubung

PENDAHULUAN Para ahli teknik mengklarifikasikan rangkaian logika dalam dua kelompok, pertma adalah kombinasi rangkaian logika yang menggunakan gerbang-gerbang AND, OR dan NOT.Kelompok yangkeduadiklarifikasisebagai rangkaian logikasequensial. Rangkaian sequensialini meliputi pewaktuan dan rangkaian memeri. Dasar blokyang membentuk kombinasi rangkaian logika adalah flip-flop (FF).

R-SFlip-flop

Rangkaian dasarR-S Flip-flop

Asumsikan bahwa input S adalah tinggi dan input R adalah rendah. Sebuah logika0 diberikan padainputgerbangNAND 1 selalu memberikan output1, makaQ adalah 1. Q diumpan balikankeinputgerbangNAND2yanglain.SelamainputSadalah1,makaoutputQadalah0.kondisiinitet apdipertahankan hingga sinyalpadaiputR dirubah. 1. RS FLIP-FLOP Perhatikanrangkaian sepertigambardisampingini. Lakukan percobaan sesuaidengan kondisimasukan Rdan S terhadapQ dan Q sertacatathasilnyapadatabeldibawah ini. Berikan kesimpulan pada percobaanini.

R 0 0 1 1 0 1 0 1

1. RSCLOCKFLIP-FLOP Buatlah rangkaianseperti gambar dibawahini. Lakukan percobaan sesuaidengan kondisimasukan R, S dan Clockterhadap Q dan Q serta catathasilnyapadatabeldibawah ini. Berikan kesimpulan pada percobaanini. Clock 1 1 1 1 0 0 0 0 R 0 0 1 1 0 0 1 1 S 0 1 0 1 0 1 0 1 Q Q

3. D FLIP-FLOPDENGAN CLOCK Buatlah rangkaianseperti gambar dibawahini. Lakukan percobaan sesuaidengan kondisimasukan R, S dan Clockterhadap Q dan Q serta catathasilnyapadatabeldibawah ini. Berikan kesimpulan pada percobaanini.

Rangkaian percobaan Clocked RS FF dengan IC 7400.

PERTEMUANIII MICROCONTROLER PENGANTARDANMODULTARGET TUJUANPERCOBAAN - MengenalMicrocontroler - MengenalBahasaAssemblyMCS51 - Memprogrammicrocontroleruntukmenjalankanrangkaianelekteronik ALATYANGDIGUNAKAN Panel/modulMicrocontroler Sebuahpcdengansoftwarependukung Avometer Kabelpenghubung

Microcontroler Mikrokontroler merupakan suatu komponen elektronika yang didalamnya terdapat rangkaian mikroprosesor, memori (RAM/ROM) dan I/O, rangkaian tersebut terdapat dalam level chip atau biasa disebut single chip microcomputer. Pada Mikrokontroler sudah terdapat komponen-komponen mikroprosesor dengan bus-bus internal yang saling berhubungan. Komponen-komponen tersebut adalah RAM, ROM, Timer, I/O Paralel dan Serial, serta Interrupt Control. Adapun keunggulan dari Mikrokontroler adalah adanya sistem interupsi Microcontroler digunakan untuk keperluan control, atau kendali. Biasa disebut dengan MCS dan yang digunakan dalam praktek ini.

Karakteristik(AT89S52) Sebuah CPU 8 Bit. 256 byte RAM internal. Empat buah port I/O, yang masing masing terdiri dari 8 bit Osilator internal dan rangkaian pewaktu. Dua buah timer/counter 16 bit Lima buah jalur interupsi ( 2 buah interupsi eksternal dan 3 interupsi internal). Sebuah port serial dengan full duplex UART (Universal Asynchronous Receiver Transmitter). Mampu melaksanakan proses perkalian, pembagian, dan Boolean. EPROM yang besarnya 8 KByte untuk memori program. Kecepatan maksimum pelaksanaan instruksi per siklus adalah 0,5 s pada frekuensi clock 24 MHz. Apabila frekuensi clock mikrokontroler yang digunakan adalah 12 MHz, maka kecepatan pelaksanaan instruksi adalah 1 s
AssemblyMCS51 Sebuah mikrokontroller tidak akan bekerja bila tidak diberikan program kepadanya. Program tersebut member tahukan mikrokontroller apa yang harus dialakukan. Bahasa Assembly adalah bahasa ogicle yang kedudukannya di antara bahasa mesin dan bahasa level tinggi misalnya bahasa C atau Pascal. Bahasa C atau Pascal dikatakan sebagai bahasa level tinggi karena memakai kata-kata dan pernyataan yang mudah dimengerti manusia, meskipun masih jauh berbeda dengan bahasa manusia sesungguhnya. Bahasa mesin adalah kumpulan kode biner yang merupakan instruksi yang bisa dijalankan oleh ogicle. Sedangkan bahasa Assembly memakai kode. Mnemonic untuk menggantikan kode biner, agar lebih mudah diingat sehingga lebih Memudahkan penulisan program.

Langkahkerja 1.SiapkanModulMicrocontrolerdancomputer 2.HubungkanModuldengancomputerdengankabelygtelahdisediakan 3.NyalakanmodulMicrocontroler 4.BukaSoftwareMicrocontrolerISPsoftware.

5.kemudianklikOptionSelectport,pilihLPT1.

6.KlilOptionSelectDevicePilihAT8952PilihByteModeOk

7.JikakoneksiModuldenganPCbagusmakaakantampil jendelasebagaiberikut:

8.JikatidakmemunculkanJendeladiatas,atauadaperingatan,makacobaperiksa koneksikabelantaraPCdanModulMicro. 9.Buka aplikasiNotepad,kemudianketikkancontoh-contohprogramyangada

10.kemudiansimpanpadafolderyangtelahditentukan,simpandenganformat.ASM contohCOBA1.asm 11.Kemudianrubah(compile)file asmtadi menjadi format .HEX.denganmenggunakanaplikasiASM51.

12.JikaProgramyangdimasukkanbenar,makaakantertulis0errorsfound.Maka padafolderyangtelahterssediatadi,akanmunculfiledenganextentionHEX dengannamayangsamadenganfileASM. 13.KemudiankembalikeprogramAtmelAplication.Klikfileloadbuffer.

14.BukafileHEXyangdariprogramyangkitabuat.

15.Jika berhasilmakapadaArmelISPakantampilsepertiberikut

16.Kemudianklikinstructionautoprogram.Makachipakanmengalamiproses, pengahpusandanpenulisan.Kemudianpilih(Lock0noprogram lockfeatures) 17.untukmenjalankanprogramklikIntructionRuntarget 18.Jikainginmengakhiriklikoptionsinitializetarget. ModulTarget

Percobaan1
Ketikkandanjalankanprogram di bawahini : $MOD51 ORG 000H Start: MOVP2,#0FEH JMPStart END ;programutama ;variabel percobaan

Amatilahledyangmenyala,kemudiancobaubahvariabelpercobaandan berikantandaXpadaportyangmenyala:

P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 #0FEH #0FDH #0FBH #0F7H #0EFH #0DFH #0BFH #07FH

ApafungsidariperintahMOVP2,#0FEH? Percobaan2 Ketikkandanjalankanprogramdibawahini: $MOD51 ORG000H Start: CLRP2.0 JMPStart END

;programutama ;ogiclepercobaan

Amatilahledyang menyala, kemudiancobaubahogiclepercobaandanberikan tandaXpadaport yang menyala: P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 Apakahfungsidari perintahCLRP2.0?

Percobaan3 Ketikkandanjalankanprogram di bawahini : $MOD51 ORG 000H

Start: MOVP2,#0FEH CALLDelay MOVP2,#0FDH CALLDelay MOVP2,#0FBH CALLDelay MOVP2,#0F7H CALLDelay JMPStart Delay:

;programutama

;-----------------+ ;|ogiclepercobaan ;|05DH= 1,00905detik Wait_Delay: ;|05DH= 93desimal CALLDelay_10Ms ;|93*0,01085=1,00905detik DJNZR0,Wait_Delay ;| RET ;| ;| Delay_10Ms: ;|fungsi delay10 mili detik PUSHTMOD ;|10Ms= 0,01085detik MOVTMOD,#001H ;| MOVTH0,#0D8H ;| MOVTL0,#0EFH ;| SETBTR0 ;| ;| Wait_Delay_10Ms: ;| JBCTF0,Finish_Delay ;| JMPWait_Delay_10Ms ;| ;| Finish_Delay: ;| CLRTR0 ;| POPTMOD ;| RET ;-----------------+ END MOVR0,#05DH

Amatilahledyangmenyala,kemudiancobaubahogiclepercobaan, sebelumnyaubahlahnilaiDesimalmenjadinilaiHeksadantentukanWaktu delaynya: Desimal Heksa 185 138 93 46 23 9 Waktu

Apakahfungsidelaydariprogramdiatas?

Percobaan4
Ketikkandanjalankanprogram di bawahini : $MOD51 ORG 000H Start: CLRP2.0 CALLDelay CLRP2.1 CALLDelay CLRP2.2 CALLDelay CLRP2.3 CALLDelay SETBP2.3 CALLDelay SETBP2.0 CALLDelay SETBP2.1 CALLDelay SETBP2.2 CALLDelay SETBP2.3 CALLDelay JMPStart Delay: MOVR0,#05DH Wait_Delay: CALLDelay_10Ms DJNZR0,Wait_Delay RET Delay_10Ms: PUSHTMOD MOVTMOD,#001H MOVTH0,#0D8H MOVTL0,#0EFH SETBTR0 Wait_Delay_10Ms: JBCTF0,Finish_Delay JMPWait_Delay_10Ms ;-----------------+ ;|05DH= 1,00905detik ;|05DH= 93desimal ;|93*0,01085=1,00905detik ;| ;| ;| ;| ;|fungsi delay10 mili detik ;|10Ms= 0,01085detik ;| ;| ;| ;| ;| ;| ;| ;| ;programutama

Finish_Delay: CLRTR0 POPTMOD RET END

;| ;| ;| ;| ;-----------------+

Amatilahledyang menyala. ApakahfungsiSETBpadaprogram di atas?

Percobaan5
Ketikkandanjalankanprogram di bawahini : $MOD51 ORG 000H MOVA,#0FEH Start0: MOVP2,AC ALLDelay RLA CJNEA,#07FH,Start0 Start1: MOVP2,AC ALLDelay RRA CJNEA,#0FEH,Start1 JMPStart0 Delay: MOVR0,#017H Wait_Delay: CALLDelay_10Ms DJNZR0,Wait_Delay RET Delay_10Ms: PUSHTMOD MOVTMOD,#001H MOVTH0,#0D8H MOVTL0,#0EFH SETBTR0 Wait_Delay_10Ms: JBCTF0,Finish_Delay ;-----------------+ ;|017H=0,24955detik ;|017H=23desimal ;|23*0,01085=0,24955detik ;| ;| ;| ;| ;|fungsi delay10 mili detik ;|10Ms= 0,01085detik ;| ;| ;| ;| ;| ;| ;|

JMPWait_Delay_10Ms Finish_Delay: CLRTR0 POPTMOD RET END

;| ;| ;| ;| ;|

;-----------------+

Amatilahledyang menyala. ApakahfungsiRR,RL, CJNEpadaprogram di atas?

Percobaan6
Ketikkandanjalankanprogram di bawahini : $MOD51 ORG 000H Start: MOVP2,P3 JMPStart END ;programutama

Amatilahledyangmenyaladenganmenekansembarangtombol. Apakahkesimpulannya? Percobaan7


Ketikkandanjalankanprogram di bawahini : $MOD51 ORG 000H JMP Initialize ORG 003H JMP IntExt0 ORG 013H JMP IntExt1 IntExt0: MOVP2,#0F0H RETI IntExt1: MOVP2,#00FH RETI Initialize:

;alamatinterupsi Ext0 ;alamatinterupsi Ext1

;-----------------+fungsi interupsi Ext0 ;| ;-----------------+ ;-----------------+fungsi interupsi Ext1 ;| ;-----------------+

MOV IE,#085H MOV IP,#005H MOVA,#0FEH

;interupsi yangaktif(variabel percobaan81H,84H,85H) ;prioritas interupsi(variabel percobaan1H,4H,5H)

Start: MOVP2,A RLA CALLDelay JMPStart

;programutama

;-----------------+ MOVR0,#05DH ;|05DH= 1,00905detik ;|05DH= 93desimal Wait_Delay: ;|93*0,01085=1,00905detik CALLDelay_10Ms ;| DJNZR0,Wait_Delay ;| RET ;| ;| Delay_10Ms: ;|fungsi delay10 mili detik PUSHTMOD ;|10Ms= 0,01085detik MOVTMOD,#001H ;| MOVTH0,#0D8H ;| MOVTL0,#0EFH ;| SETBTR0 ;| ;| Wait_Delay_10Ms: ;| JBCTF0,Finish_Delay ;| JMPWait_Delay_10Ms ;| ;| Finish_Delay: ;| CLRTR0 ;| POPTMOD ;| RET ;-----------------+ END Coba tekantombol P3.2, amatilahledyang menyala, kemudiancobatekan tombol P3.3, amatilahledyangmenyala. Ubahlahogiclepercobaandengandatadibawahini, kemudiancoba tekantombol P3.2dansecarabersamaancobatekantombol P3.3, juga lakukanlahsebaliknya. IE #085H #084H #081H IP #005H #005H #005H Led

Delay:

#085H #084H #081H #085H #084H #081H

#004H #004H #004H #001H #001H #001H

Apakahyangdimaksuddenganinterupsi? Percobaan8 Ketikkandanjalankanprogram di bawahini : $MOD51 ORG 000H JMP Initialize ORG 003H JMP IntExt0 ORG 013H JMP IntExt1 IntExt0: RRA MOVP2,AC ALLDelay RETI IntExt1: RLA MOVP2,AC ALLDelay RETI Initialize: MOV IE,#085H MOV IP,#005H MOVA,#0FEH Start: JMPStart Delay: MOVR0,#017H Wait_Delay: CALLDelay_10Ms DJNZR0,Wait_Delay RET ;-----------------+ ;|017H=0,24955detik ;|017H=23desimal ;|23*0,01085=0,24955detik ;| ;| ;| ;| ;programutama

Delay_10Ms: PUSHTMOD MOVTMOD,#001H MOVTH0,#0D8H MOVTL0,#0EFH SETBTR0

;|fungsi delay10 mili detik ;|10Ms= 0,01085detik ;| ;| ;| ;| ;| Wait_Delay_10Ms: ;| JBCTF0,Finish_Delay ;| JMPWait_Delay_10Ms ;| ;| Finish_Delay: ;| CLRTR0 ;| POPTMOD ;| RET ;-----------------+ END

CobatekantombolP3.2beberapakali,amatilahledyangmenyala,kemudian cobatekantombolP3.3beberapakali,amatilahledyangmenyala. Apakahkesimpulannya?

INTERUPSIMCS51

InterruptadalahsuatupanggilanygmemaksaMCSuntukmenundaprogramyang sedanddijalankandankemudianmenjalankanprosesyangterdapatdidalam SubRoutineInterrupthinggaprosestersebutselesai,sesudahituMCSakan melaksanakankembaliyangditundasebelumnya.

Pengecekaninterruptadalahsecarapolling.ArtinyabahwaMCSakanmelakukan pollinginterruptdimulaidariprioritasyangpalingtinggi Apabiladalamprosespollinginterrupt terjadi interruptyangpriority-nyalebih tinggi,makainterrupt tersebutakandilayanisetelahpollinginterruptnyaselesai dilakukan PemanggilanInterruptpadaMCSdapatdilakukandengan2cara: FallingEdge Interruptakanaktifapabilaogicpadapininterruptbergerakturundari HIGHkeLOW

Level Interruptakanaktifapabilaogicpadapininterruptberadapadalevel LOW.

PERTEMUANIV MICROCONTROLERII SEVENSEGMENTDANMOTORSTEPPER

Hubungkanmodulsevensegmendenganport1modul target!!!
VCC VCC 40

10k 39 38 37 36 35 34 33 32 P00 P01 P02 P03 P04 P05 P06 P07 P20 P21 P22 P23 P24 P25 P26 P27

U? P10 P11 P12 P13 P14 P15 P16 P17 P30/RXD P31/TXD P32/INT0 P33/INT1 P34/T0 P35/T1 P36/WR P37/RD 1 2 3 4 5 6 7 8 a b c d e f g Dp Com 7SEG V CC

22 23 24 25 26 27 28

11 12 13 14 15 16 17 VCC

VCC

31 30 29

X1 EA/VP ALE/P PSEN GND X2 RESET 89C51

19 U? 18 9 CRYSTAL

20

VCC 10K 1uF

Percobaan9
Ketikkandanjalankanprogram di bawahini : ;Segment padaPort 1 ;D7|D6|D5|D4|D3|D2|D1|D0 ; .|g|f|e|d|c|b|a ; ;Common SegmentpadaPort0 ;D7|D6|D5|D4|D3|D2|D1|D0

$MOD51 ORG 000H CLRP0.0 Start: MOVP1,#0FEH JMPStart END ;variabel percobaan ;programutama ;variabel percobaan

Amatilahsegmenyangmenyala, kemudiancobaubahvariabel percobaandanberikan tandaXpadasegmenyangmenyala:

CLR P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7

P1 #0FEH #0FDH #0FBH #0F7H #0EFH #0DFH #0BFH #07FH

Seg0 Led Seg1 Led Seg2 Led Seg3 Led Seg4 Led Seg5 Led Seg6 Led Seg7 Led

Buatlahsuatukarakterhurufberdasarkandatadiatas. Percobaan10
Ketikkandanjalankanprogram di bawahini : $MOD51 ORG 000H Start: CLRP0.0 MOVP1,#083H CALLDelay SETBP0.0 CLRP0.1 MOVP1,#092H CALLDelay SETBP0.1 CLRP0.2 MOVP1,#0CFH CALLDelay SETBP0.2 JMPStart ;programutama ;huruf b

;huruf S

;huruf I

Delay: MOVR0,#001H

;-----------------+ ;|001H=0,01085detik ;|001H=1desimal ;|1*0,01085=0,01085detik ;| ;| ;| ;| ;|fungsi delay10 mili detik ;|10mS=0,01085detik ;| ;| ;| ;| ;| ;| ;| ;| ;| ;| ;| ;| ;-----------------+

Wait_Delay: CALLDelay_10mS DJNZR0,Wait_Delay RET Delay_10mS: PUSHTMOD MOVTMOD,#001H MOVTH0,#0D8H MOVTL0,#0EFH SETBTR0 Wait_Delay_10mS: JBCTF0,Finish_Delay JMPWait_Delay_10mS Finish_Delay: CLRTR0 POPTMOD RET END Amatilahsegmenyangmenyala. Apakahyangdimaksuddenganscanningmode?

Percobaan11
Ketikkandanjalankanprogram di bawahini : $MOD51 ORG 000H JMP Initialize ORG 003H JMP IntExt0 ORG 013H JMP IntExt1 IntExt0: CLRP0.0 MOVP1,#083H CALLDelay SETBP0.0 CLRP0.1

MOVP1,#092H CALLDelay SETBP0.1 CLRP0.2 MOVP1,#0CFH CALLDelay SETBP0.2 RETI IntExt1: CLRP0.0 MOVP1,#0C7H CALLDelay SETBP0.0 CLRP0.1 MOVP1,#088H CALLDelay SETBP0.1 CLRP0.2 MOVP1,#083H CALLDelay SETBP0.2 RETI Initialize: MOV IE,#085H MOV IP,#005H Start: JMPStart Delay: MOVR0,#001H Wait_Delay: CALLDelay_10mS DJNZR0,Wait_Delay RET Delay_10mS: PUSHTMOD MOVTMOD,#001H MOVTH0,#0D8H MOVTL0,#0EFH SETBTR0 Wait_Delay_10mS: JBCTF0,Finish_Delay JMPWait_Delay_10mS ;-----------------+ ;|001H=0,01085detik ;|001H=1desimal ;|1*0,01085=0,01085detik ;| ;| ;| ;| ;|fungsi delay10 mili detik ;|10mS=0,01085detik ;| ;| ;| ;| ;| ;| ;| ;| ;| ;programutama

Finish_Delay: CLRTR0 POPTMOD RET END

;| ;| ;| ;-----------------+

Amatilahsegmenyangmenyaladenganmenekan tombol P3.2dankemudiancoba tekantombolP3.3. Apakahkesimpulannya?

PERTEMUAN V ModulMotorStepper

Hubungkanmodulmotorstepperdenganport2modultarget !!!
+12v

A B C D

1 2 3 4 5 6 7 8 9

D0 Q1 D1 Q2 Q3 D2 D3 Q4 D4 Q5 D5 Q6 Q7 D6 Q8 D7 GND VCC ULN2803

18 17 16 15 14 13 12 11 10

+12v

Motor stepper banyak digunakan untuk aplikasi-aplikasi yang biasanya cukup Menggunakan torsi yang kecil, seperti untuk penggerak piringan disket atau piringan CD. Dalam hal kecepatan, kecepatan motor stepper cukup cepat jika dibandingkan dengan motor DC. Motor stepper merupakan motor DC yang tidak memiliki komutator. Pada umumnya motor stepper hanya mempunyai kumparan pada

statornya sedangkan pada bagian rotornya merupakan permanen magnet. Dengan model motor seperti ini maka motor stepper dapat diatur posisinya pada posisi tertentu dan/atau berputar ke arah yang diinginkan, searah jarum jam atau sebaliknya. Kecepatan motor stepper pada dasarnya ditentukan oleh kecepatan pemberian data pada komutatornya. Semakin cepat data yang diberikan maka motor stepper akan semakin cepat pula berputarnya.

Percobaan12
Ketikkandanjalankanprogram di bawahini : $MOD51 ORG 000H MOVR1,#032H Start: CALL GoRight DJNZ R1,Start Stop: JMPStop GoRight: MOV P2,#080H CALL Delay MOV P2,#040H CALL Delay MOV P2,#020H CALLDelay MOV P2,#010H CALL Delay RET GoLeft: MOVP2,#010H CALLDelay MOVP2,#020H CALLDelay MOVP2,#040H CALLDelay MOVP2,#080H CALLDelay RET Delay: MOVR0,#001H Wait_Delay:

;variabel percobaan ;programutama ;variabel percobaan

;modefull step

;modefull step

;-----------------+ ;|001H=0,01085detik ;|001H=1desimal ;|1*0,01085=0,01085detik

CALLDelay_10mS DJNZR0,Wait_Delay RET Delay_10mS: PUSHTMOD MOVTMOD,#001H MOVTH0,#0D8H MOVTL0,#0EFH SETBTR0 Wait_Delay_10mS: JBCTF0,Finish_Delay JMPWait_Delay_10mS Finish_Delay: CLRTR0 POPTMOD RET END

;| ;| ;| ;| ;|fungsi delay10 mili detik ;|10mS=0,01085detik ;| ;| ;| ;| ;| ;| ;| ;| ;| ;| ;| ;|

;-----------------+

Amatilahgerakmotorstepper,kemudiancobaubahvariabel percobaan: R1 #032H #019H #00CH #032H #019H #00CH CALL GoRight GoRight GoRight GoLeft GoLeft GoLeft Derajat Putar Arah Putar

Berapaderajatkahper satusiklusfungsiGoRightdanGoLeft?

Percobaan13
Ketikkandanjalankanprogram di bawahini : $MOD51 ORG 000H Start: MOVR1,#032H StartRight: CALL GoRight DJNZR1,StartRight MOVR2,#032H ;programutama

StartLeft: CALL GoLeft DJNZR2,StartLeft Stop: JMPStart GoRight: MOVP2,#010H CALLDelay MOVP2,#030H CALLDelay MOVP2,#020H CALLDelay MOVP2,#060H CALLDelay MOVP2,#040H CALLDelay MOVP2,#0C0H CALLDelay MOVP2,#080H CALLDelay MOVP2,#090H CALLDelay RET GoLeft: MOVP2,#090H CALLDelay MOVP2,#080H CALLDelay MOVP2,#0C0H CALLDelay MOVP2,#040H CALLDelay MOVP2,#060H CALLDelay MOVP2,#020H CALLDelay MOVP2,#030H CALLDelay MOVP2,#010H CALLDelay RET Delay: MOVR0,#001H Wait_Delay: CALLDelay_10mS DJNZR0,Wait_Delay ;modehalfstep

;modehalfstep

;-----------------+ ;|001H=0,01085detik ;|001H=1desimal ;|1*0,01085=0,01085detik ;| ;|

RET Delay_10mS: PUSHTMOD MOVTMOD,#001H MOVTH0,#0D8H MOVTL0,#0EFH SETBTR0 Wait_Delay_10mS: JBCTF0,Finish_Delay JMPWait_Delay_10mS Finish_Delay: CLRTR0 POPTMOD RET END Amatilahgerakmotorstepper. Apayangdimaksuddenganfull stepdanhalfstep?ApakahfungsiDJNZdariprogram di atas?

;| ;| ;|fungsi delay10 mili detik ;|10mS=0,01085detik ;| ;| ;| ;| ;| ;| ;| ;| ;| ;| ;| ;| ;-----------------+

Percobaan14
Ketikkandanjalankanprogramdibawahini : $MOD51 ORG000H JMPInitialize ORG003H JMPIntExt0 IntExt0: CALL GoRight RETI Initialize: MOVIE,#081H MOVIP,#001H Start: JMPStart GoRight: ;programutama

MOVP2,#010H CALLDelay MOVP2,#030H CALLDelay MOVP2,#020H CALLDelay MOVP2,#060H CALLDelay MOVP2,#040H CALLDelay MOVP2,#0C0H CALLDelay MOVP2,#080H CALLDelay MOVP2,#090H CALLDelay RET Delay: MOVR0,#001H ;|001H=1desimal Wait_Delay: CALLDelay_10mS DJNZR0,Wait_Delay RET Delay_10mS: PUSHTMOD MOVTMOD,#001H MOVTH0,#0D8H MOVTL0,#0EFH SETBTR0 Wait_Delay_10mS: JBCTF0,Finish_Delay JMPWait_Delay_10mS Finish_Delay: CLRTR0 POPTMOD RET END ;-----------------+ ;|001H=0,01085detik

;|1*0,01085=0,01085detik ;| ;| ;| ;| ;|fungsidelay10milidetik ;|10mS=0,01085detik ;| ;| ;| ;| ;| ;| ;| ;| ;| ;| ;| ;| ;-----------------+

AmatilahgerakmotorstepperdenganmenekantombolP3.2 Apakahkesimpulannya?

PERTEMUAN VI PEMBUATAN ALAT (LAYOUT)

Komponen utama Nama Komponen IC Regulator 7805 Elco 1000F Resistor 1K (R1) Led IC L293d + Socket IC AT89S51 + Socket X-Tal 11 Mhz Kondensator Keramik 33pF/22pF Elco 10F Resistor 4K7 (R2) Relay Saklar

Daftar Komponen Komponen Sensor Unit Nama Komponen 1 Otocopler/sensor 1 Resistor 100 (R3) 1 Resistor 47K (R4) 1 Transistor (C 5343) 1 1 1 2 1 1 2 1

Unit 2 2 2 2

LAYOUT SENSOR

LAYOUT UTAMA

LISTING LINE FOLLOWER $mod51 org 000h ssr_right bit p1.0 ssr_left bit p1.1 mtr_left bit p1.3 mtr_bw_left bit p1.4 mtr_right bit p1.5 mtr_bw_right bit p1.6 dat_sts data 20h delay_run equ 20 ;Robot Line Follower IT CAMP BSI ;Tanggal 30-04-2010 prog: mov sp,#050h acall init_sys running: jb ssr_left,run01 jb ssr_right,run02 ajmp run03 run01: jb ssr_right,run03 acall right ajmp sys_run run02: jb ssr_left,run03 acall left ajmp sys_run run03: acall foward acall dly_run ; acall stop ajmp exit_run sys_run: acall dly_run stop: clr mtr_left clr mtr_right clr mtr_bw_left clr mtr_bw_right ret

init_sys: mov dat_sts,#0 acall stop ret dly_mtr: setb rs0 mov r0,#3 loop00: mov r1,#200 loop01: mov r2,#200 loop02: djnz r2,loop02 djnz r1,loop01 djnz r0,loop00 clr rs0 ret dly_run: setb rs0 mov r0,#delay_run loop10: mov r1,#1 loop11: mov r2,#10 loop12: djnz r2,loop12 djnz r1,loop11 djnz r0,loop10 clr rs0 ret nop

;Delay

;Delay

acall dly_run acall dly_run ; acall stop exit_run: ajmp running left: setb mtr_left clr mtr_right clr mtr_bw_left clr mtr_bw_right ret right: clr mtr_left setb mtr_right clr mtr_bw_left clr mtr_bw_right ret foward: setb mtr_left setb mtr_right clr mtr_bw_left clr mtr_bw_right ret

nop end

Anda mungkin juga menyukai