Minggu, 12 Januari 2014

Tugas 2 Mikrokontroler

Mikrokontroler

Nama : Kimham Witer Teguh K
NIM  :  11.11.2412
Kelas : TI 11 B

1. Pendahuluan

       Mikrokontroler AT89C51/52 atau AT89S51/52 (keluarga 51) mempunyai 40 kaki, 32 diantaranya digunakan sebagai Port Paralel. Satu port paralel terdiri dari 8 kaki, dengan demikian 32 kaki tersebut membentuk 4 buah port paralel, yang masing-masing dikenal sebagai Port 0, Port 1, Port 2, dan Port 3. Nomor dari masing-masing jalur (kaki) dari Port paralel mulai dari 0 sampai 7, jalur (kaki) pertama Port 0 disebut sebagai P0.0 dan jalur terakhir untuk Port 3 adalah P3.7.

Mikrokontroler 89S51/52 merupakan versi terbaru dibandingkan mikrokontroler AT89C51 yang telah banyak digunakan saat ini.  Mikrokontroler AT89S52 ialah mikrokomputer CMOS 8 bit dengan 8KB Flash Programmable dan Erasable Read Only Memory (PEROM). Mikrokontroler berteknologi memori non volatile kerapatan tingi dari Atmel ini kompatibel dengan mikrokontroler standar industri MCS-51 baik pin kaki IC maupun set instruksinya serta harganya yang cukup murah.
2. Spesifikasi Penting AT89S52 :
  • Kompatibel dengan keluarga mikrokontroler MCS51 sebelumnya
 
  • 8 K Bytes  In system Programmable (ISP) flash memori dengan kemampuan 1000 kali baca/tulis
  • tegangan kerja 4-5.0V
  • Bekerja dengan rentang 0 – 33MHz
  • 256x8 bit RAM internal
  • 32 jalur I/0 dapat diprogram
  • 3 buah 16 bit Timer/Counter
  • 8 sumber interrupt
  • saluran full dupleks serial UART
  • watchdog timer
  • dual data pointer
  • Mode pemrograman ISP yang fleksibel (Byte dan Page Mode)
3. Skema Minimum AT89S91/92:
   


4. Contoh Layout PCB Minimum:
   

5. Contoh Pemrograman:
1. Program dengan menggunakan definisi, Menu dan tabel

$MOD52
;KELOMPOK 1 :    DWI,IBNU,IRFAN
                ORG       00H
;DEF
                S1            BIT          P3.0
                S2            BIT          P3.1
                S3            BIT          P3.2
                S4            BIT          P3.3
URUTAN                               EQU        20H
SIMPAN_DATA   EQU        21H
TABEL1:               
dB           10101010B            
                dB           01010101B            
                dB           00110101B            
                dB           01010100B                            
TABEL2:               
dB           10111010B
                dB           10010010B
                dB           01011101B
                dB           11100001B
TABEL3:               
dB           00110011B
                dB           11001100B
START:  MOV      P3,#11111111B
                MOV      P2,#11111111B
MENU:   JNB         S1,MENU1
                JNB         S2,MENU2
                JNB         S3,MENU3
                JNB         S4,MENU4
                JMP        menu
MENU1: JB            S1,MENU11
                JMP        MENU1
MENU11:               MOV      DPTR,#TABEL1
                MOV      SP,#50H
                MOV      A,#0
SCAN1:  MOV      URUTAN,A
                MOVC    A,@A+DPTR
                MOV      SIMPAN_DATA,A
                CALL      TAMPILKAN
                CALL      DELAY
                MOV      A,URUTAN
                INC         A
                CJNE      A,#4,SCAN1
                JNB         S4,STOP
                JMP        MENU11
               
MENU2: JB            S2,MENU22
                JMP        MENU2
MENU22:               MOV      DPTR,#TABEL2
                MOV      SP,#50H
                MOV      A,#0
SCAN2:  MOV      URUTAN,A
                MOVC    A,@A+DPTR
                MOV      SIMPAN_DATA,A
                CALL      TAMPILKAN
                CALL      DELAY
                MOV      A,URUTAN
                INC         A
                CJNE      A,#4,SCAN2
                JNB         S4,STOP
                JMP        MENU22
MENU3: JB            S3,MENU33
                JMP        MENU3
MENU33:               MOV      DPTR,#TABEL3
                MOV      SP,#50H
                MOV      A,#0
SCAN3:  MOV      URUTAN,A
                MOVC    A,@A+DPTR
                MOV      SIMPAN_DATA,A
                CALL      TAMPILKAN
                CALL      DELAY
                MOV      A,URUTAN
                INC         A
                CJNE      A,#2,SCAN3
                JNB         S4,STOP
                JMP        MENU33
MENU4: MOV      P2,#00001111B
                CALL      DELAY
                MOV      P2,#11110000B
                CALL      DELAY
                JNB         S4,STOP
                JMP        MENU4
STOP:     JB            S4,STOP1
                JMP        STOP
               
STOP1:   NOP
                MOV      P2,#0FFH
                JMP        MENU
TAMPILKAN:
                MOV      A,simpan_data
                MOV      p2,A
               
               
DELAY: MOV      R0,#0
DEL:       MOV      R1,#0
                DJNZ      R1,$
                DJNZ      R0,DEL
                RET
                END
6. cara download program ke ic mikrokontroler
  1. Siapkan Laptop dan USB   K-51 downloader. Install drivernya dulu kalau belum pernah 
  2. Siapkan IC AT89S5 atau yang lain dan PCBnya jangan lupa
  3. Buat listing program seperti di atas menggunakan notepad dan simpan dengan namafile.ASM di dalam folder ASM51. Lalu assembling file.ASM itu pakai asm51.exe maka akan nambah dua file, yaitu file.lst untuk melihat ada yang salah atau tidak. Dan file.hex yang kita gunakan untuk di download ke IC
  4. Siapkan program IP Prog v. 1.3, jalankan program dengan cara :
  • Check port USB di prt berapa dan tipe IC di Tab Menu Options > Setting Dan Device.
  • Klik file > Load flash file, cari file.hex tadi
  • Klik “read signature” untuk konek atau tidaknya IC
  • Klik “chip erase” untuk delete program IC yang lama
  • Klik “write flash” untuk download file, lalu klik “verify flash” untuk memastikan file.

Daftar Pustaka

Minggu, 22 Desember 2013

TUGAS PRAKTEK 1

TUGAS PRAKTEK 1
Nama :Kimham Witer Teguh K
NIM   : 11.11.2412
Kelas : TI 11 B

LATIHAN:
1. Buatlah program untuk menampilkan LED di port 1 dengan kondisi
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Nyala
Nyala
Padam
Padam
Nyala
Padam
Padam
Padam
            Akses port 1 per bit (satu persatu spt prog 1 dan 2) 
2. Buatlah program untuk menampilkan LED di port 1 dengan kondisi 
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Nyala
Nyala
Padam
Nyala
Nyala
Padam
Padam
Nyala
             Akses port 1 per byte  (secara keseluruhan spt prog 3 atau 4)
Jawab :
1.      1). $mod51
CSEG
ORG 4000H
LJMP START
ORG 4100H
       START :
               MOV SP, #30H
CLR P1.0
CLR P1.1
CLR P1.2
SETB P1.3
CLR P1.4
CLR P1.5
SETB P1.6
SETB P1.7
SJMP $
      END
2.      2). $mod51
CSEG
ORG 4000H
LJMP START
ORG 4100H
        START :
MOV SP, #30H
SETB P1.0
CLR P1.1
CLR P1.2
SETB P1.3
SETB P1.4
CLR P1.5
SETB P1.6
SETB P1.7
SJMP $
         END