Dot Matrik
19.49
*klik teks untuk menuju
A. ATMEGA 128
Mikrokontroller AVR (Alf and Vegard’s Risc processor) memiliki arsitektur 8 bit, dimana semua instruksi dikemas dalam kode 16-bit dan sebagian besar instruksi dieksekusi dalam 1 siklus clock atau dikenal dengan teknologi RISC (Reduced Instruction Set Computing). Secara umum, AVR dapat dikelompokan ke dalam 4 kelas, yaitu keluarga AT90Sxx, keluarga ATMega dan AT86RFxx. Pada dasarnya yang membedakan masing-masing adalah kapasitas memori, peripheral dan fungsinya.Dari segi arsitektur dan instruksi yang digunakan, mereka bisa dikatakan hamper sama. Pada praktikum kali ini yang membedakan antara ATMEGA 128 dengan ATMEGA 8535 selain pada kapasistas memori, jug dari Bahasa program yang digunakan.
Berikut gambar dari ATMEGA8535 :
2. ADC 10 bit sebanyak 8 saluran.
3. 2 buah Timer/Counter 8 bit dan 2 buah Timer/Counter 16 bit.
4. Dua buah PWM 8 bit.
5. Watchdog Timer dengan osilator internal.
6. Internal SRAM sebesar 4 kbyte.
7. Memori flash sebesar 128 kBytes.
8. Interupsi Eksternal.
9. Port antarmuka SPI.
10. EEPROM sebesar 4 kbyte.
11. Real time counter.
12. 2 buah Port USART untuk komunikasi serial.
13. Enam kanal PWM.
14. Tegangan operasi sekitar 4,5 V sampai dengan 5,5V
Mikrokontroller AVR (Alf and Vegard’s Risc processor) memiliki arsitektur 8 bit, dimana semua instruksi dikemas dalam kode 16-bit dan sebagian besar instruksi dieksekusi dalam 1 siklus clock atau dikenal dengan teknologi RISC (Reduced Instruction Set Computing). Secara umum, AVR dapat dikelompokan ke dalam 4 kelas, yaitu keluarga AT90Sxx, keluarga ATMega dan AT86RFxx. Pada dasarnya yang membedakan masing-masing adalah kapasitas memori, peripheral dan fungsinya.Dari segi arsitektur dan instruksi yang digunakan, mereka bisa dikatakan hamper sama. Pada praktikum kali ini yang membedakan antara ATMEGA 128 dengan ATMEGA 8535 selain pada kapasistas memori, jug dari Bahasa program yang digunakan.
Berikut gambar dari ATMEGA8535 :
Berikut merupakan gambar konfigurasi pin pada ATMEGA8535 :
Mikrokontroller ATMEGA 128 merupakan
mikrokontroller keluarga AVR yang mempunyai kapasitas flash memori
128KB. AVR (Alf and Vegard’s Risc Processor) merupakan seri
mikrokontroler CMOS 8-bit buatan ATEMEL inc, berdasarkan arsitektur RISC
(Reduced Instruction Set Computer). Secara umum, AVR dapat terbagi
menjadi 4 kelas, yaitu keluarga ATtiny, keluarga AT90Sxx, keluarga
AT-Mega, dan AT86RFxx. Pada dasarnya yang membedakan masing-masing kelas
adalah memori, peripheral, dan fungsinya. Dari segi arsitektur dan
instruksi yang digunakan, bisa dikatakan hampir sama. Semua jenis AVR
dilengkapi dengan flash memori sebagai memori program. Kapasitas dari
flash memori ini berbeda antara chip yang satu dengan chip yang lain.
Tergantung dari jenis IC yang digunakan. Untuk flash memori yang paling
kecil adalah 1 kbytes (ATtiny11, ATtiny12, dan ATtiny15) dan paling
besar adalah 128 kbytes (AT-Mega128). Berikut ini adalah spesifikasi
Mikrokontroler AVR ATMega-128 dan konfigurasi pin ATMEGA 128.
1. Saluran I/O sebanyak 56 buah, yaitu Port A, Port B, Port C, Port D, Port E, Port F dan Port G.2. ADC 10 bit sebanyak 8 saluran.
3. 2 buah Timer/Counter 8 bit dan 2 buah Timer/Counter 16 bit.
4. Dua buah PWM 8 bit.
5. Watchdog Timer dengan osilator internal.
6. Internal SRAM sebesar 4 kbyte.
7. Memori flash sebesar 128 kBytes.
8. Interupsi Eksternal.
9. Port antarmuka SPI.
10. EEPROM sebesar 4 kbyte.
11. Real time counter.
12. 2 buah Port USART untuk komunikasi serial.
13. Enam kanal PWM.
14. Tegangan operasi sekitar 4,5 V sampai dengan 5,5V
![]() |
| Konfigurasi pin ATMEGA-128 |
B. DOT MATRIK
1.1
Pengertian Dot Matrix
LED Dot
Matrix ini
memiliki 35 LED yang disusun dalam matriks 5 kolom 7 baris (5x7 LED), dengan terminal katoda pada kolom dan terminal anoda
pada baris / cathode
shared column, anode shared row. Ukuran (sisi terpanjang) dari komponen elektronika
ini adalah 0,7" dengan dimensi
keseluruhan sebesar 17,8 x 12 x 6 mm.
Untuk mengendalikan tampilan pada komponen ini, terapkan algoritma
pemindaian iteratif (iterative
scanning algorithm) di mana masing-masing titik LED ditentukan nyala / tidaknya
dengan mengatur kondisi pada 2 pin terkait (pin baris dan pin kolom, lihat
diagram pada konfigurasi pin yang terlampir di bawah), dilanjutkan dengan titik
LED berikutnya, demikian berulang-ulang. Apabila proses ini dilakukan cukup
cepat, mata manusia akan menangkap cahaya dari LED-LED ini sebagai cahaya yang
berkesinambungan. Setiap LED memiliki tegangan maju / forward voltage sebesar 2,1 Volt
dengan konsumsi arus ±20 mA per LED pada intensitas optimum.
1.2
Prnisip Kerja Dot Matrix
Bagian pin yang digunakan
sebagai input atau output tergantung pada kondisi posisi Anoda/katoda LED yang
terpasang didalamnya. Jika Anoda dari LED terpasang pada bagian kolom maka
semua pin pada bagian kolom merupakn tempat masuknya arus (input) dan bagian
baris merupakan tempat keluarnya arus(output). Led dot matrix yang digunakan
pada prakltikum ini adalah led dot matrix 5x7. 5 pin kolom dihubungkan ke anoda
melalui port A mikrokontroler sekaligus sebagai input, dan 7 pin baris
dihubungkan ke port C mikrokontroler sebagai output. Apabila bagian kolom
diberi arus atau diberi data 1 (high) maka kolom tersebut aktif atau LED pada
kolom tersebut siap menyala. LED yang menyala akan tergantung pada bagian baris
yang diberi data 0 (low).
|
LCD Arduino
19.12
1. Rangkaian Simulasi [kembali]
2. Flowchart [kembali]
3. Listing Program [kembali]
#include
<Keypad.h> //Mengaktifkan
library keypad
#include
<LiquidCrystal.h> //Mengaktifkan
library LCD
int
switchh = 3; /Deklarasi
switch pada pin 3
const
int PIN_RS = 12;
const
int PIN_E = 11;
const
int PIN_DB4 = 7;
const
int PIN_DB5 = 6; //Pendeklarasian
pin untuk LCD
const
int PIN_DB6 = 5;
const
int PIN_DB7 = 4;
LiquidCrystal
lcd(PIN_RS,PIN_E, PIN_DB4, //Mengaktifkan
pin LCD
PIN_DB5,
PIN_DB6, PIN_DB7);
const
byte BARIS = 4; // 4 Baris //Pendeklarasian
baris keypad dengan varibel BARIS
const
byte KOLOM = 3; // 3 Kolom //Pendeklarasian
kolom keypad dengan varibel KOLOM
char
tombol[BARIS][KOLOM] = {
{'1','2','3'},
{'4','5','6'}, // Menyatakan
baris dan kolom keypad dalam bentuk
{'7','8','9'}, array.
{'#','0','*'}
};
byte
bariskeypad[BARIS] = { 14, 15, 16, 17 }; //Menyambungkan
baris keypad ke pin arduino
byte
kolomkeypad[KOLOM] = { 18, 19, 20 }; //Menyambungkan
kolom keypad ke pin arduino
Keypad
kpd = Keypad( makeKeymap(tombol),
bariskeypad,
kolomkeypad,BARIS, KOLOM ); //Mengaktifkan
fungsi keypad
#define
ledpin 13 //Menyatakan
keypad pada pin 13
void
setup() //Fungsi
utama arduino
{ //Pembuka
program
lcd.begin(16, 2); //Memulai LCD tipe 16x2
pinMode(ledpin,OUTPUT); //Deklarasi ledpin
sebagai output
pinMode (switchh, INPUT); //Deklarasi ledpin
sebagai input
digitalWrite(ledpin, LOW); //Kondisi awal led
mati
Serial.begin(9600); //Komunikasi serial arduino
ke komputer
} //Penutup
program
void
loop() //Fungsi
perulangan pada arduino
{ //Pembuka
program
if (digitalRead(switchh)==1) //Kondisi If saat
switchh==1
{ //Pembuka
program
char tombol = kpd.getKey(); //Deklarasi
tombol sepagai pemanggilan fungsi keypad
if(tombol) //Jika
if itu tombol
{ //Pembuka
program
switch (tombol) //Jika switch itu tombol
{ //Pembuka
program
case '1': //Jika
tombol keypad 1 ditekan
digitalWrite(ledpin, HIGH); //Kondisi led hidup
lcd.clear(); //Membersihkan
LCD
lcd.setCursor(0,1); //Memposisikan
tulisan di baris ke-0 dan kolom ke-1
lcd.print("PRAKTIKUM"); //Mencetak
tulisan di PRAKTIKUM di lcd
break; //fungsi
selesai untuk kondisi case ‘1’
case '2': //Jika
tombol keypad 2 ditekan
digitalWrite(ledpin, HIGH); //Kondisi led hidup
lcd.clear(); //Membersihkan
LCD
lcd.setCursor(0,1); //Memposisikan
tulisan di baris ke-0 dan kolom ke-1
lcd.print("MIKROPROSESOR"); //Mencetak tulisan di MIKROPROSESOR
di lcd
break; //fungsi
selesai untuk kondisi case ‘2’
case '3': //Jika
tombol keypad 3 ditekan
digitalWrite(ledpin, HIGH); //Kondisi led hidup
lcd.clear(); //Membersihkan
LCD
lcd.setCursor(0,1); //Memposisikan tulisan
di baris ke-0 dan kolom ke-1
lcd.print("LABOR ELDI"); //Mencetak
tulisan di LABOR ELDI di lcd
break; //fungsi
selesai untuk kondisi case ‘2’
default: //Jika
gagal masuk ke fungsi Serial.println(tombol)
Serial.println(tombol);
}
}
}
else //Fungsi
kecuali jika if tidak terpenuhi
{ //Pembuka
program else
lcd.clear(); //Membersihkan
tulisan di LCD
digitalWrite(13,LOW); //Kondisi led mati
} //Penutup
program else
} //Penutupu
program utama
4. Video [kembali]LCD PIC
19.10
1. Rangkaian Simulasi [kembali]
2. Flowchart [kembali]
3. Listing Program [kembali]
sbit LCD_RS at RB5_bit;
sbit LCD_RW at RB4_bit;
sbit LCD_EN at RB3_bit;
sbit LCD_D4 at RD4_bit;
sbit LCD_D5 at RD5_bit;
sbit LCD_D6 at RD6_bit;
sbit LCD_D7 at RD7_bit; //Pendeklarasian pin untuk LCD
sbit LCD_RS_Direction at TRISB5_bit;
sbit LCD_RW_Direction at TRISB4_bit;
sbit LCD_EN_Direction at TRISB3_bit;
sbit LCD_D4_Direction at TRISD4_bit;
sbit LCD_D5_Direction at TRISD5_bit;
sbit LCD_D6_Direction at TRISD6_bit;
sbit LCD_D7_Direction at TRISD7_bit;
void main() //Fungsi utama PIC
{
TRISC=0X03; // Port D0 dan D1 berfungsi sebagai input
PORTC=0X00; // Kondisi awal pada port D berkondisi low
Lcd_Init(); // Deklarasi LCD
Lcd_Cmd(_LCD_CLEAR); //LCD diclear (dibersihkan)
Lcd_Cmd(_LCD_CURSOR_OFF); //Pada LCD tidak menampilkan kursor
while(1) //Kondisi perulangan
{
if(PORTC.RC0==0) //Apabila port D0 diberi kondisi HIGH
{
Lcd_Out(1,1,"Selamat"); //LCD akan menampilkan tulisan "Selamat"
}
if(PORTC.RC1==0) //Apabila port D1 diberi kondisi HIGH
{
Lcd_Out(2,1,"Praktikum ^_^"); //LCD akan menampilkan tulisan " Praktikum ^_^"
}
}
}
sbit LCD_RW at RB4_bit;
sbit LCD_EN at RB3_bit;
sbit LCD_D4 at RD4_bit;
sbit LCD_D5 at RD5_bit;
sbit LCD_D6 at RD6_bit;
sbit LCD_D7 at RD7_bit; //Pendeklarasian pin untuk LCD
sbit LCD_RS_Direction at TRISB5_bit;
sbit LCD_RW_Direction at TRISB4_bit;
sbit LCD_EN_Direction at TRISB3_bit;
sbit LCD_D4_Direction at TRISD4_bit;
sbit LCD_D5_Direction at TRISD5_bit;
sbit LCD_D6_Direction at TRISD6_bit;
sbit LCD_D7_Direction at TRISD7_bit;
void main() //Fungsi utama PIC
{
TRISC=0X03; // Port D0 dan D1 berfungsi sebagai input
PORTC=0X00; // Kondisi awal pada port D berkondisi low
Lcd_Init(); // Deklarasi LCD
Lcd_Cmd(_LCD_CLEAR); //LCD diclear (dibersihkan)
Lcd_Cmd(_LCD_CURSOR_OFF); //Pada LCD tidak menampilkan kursor
while(1) //Kondisi perulangan
{
if(PORTC.RC0==0) //Apabila port D0 diberi kondisi HIGH
{
Lcd_Out(1,1,"Selamat"); //LCD akan menampilkan tulisan "Selamat"
}
if(PORTC.RC1==0) //Apabila port D1 diberi kondisi HIGH
{
Lcd_Out(2,1,"Praktikum ^_^"); //LCD akan menampilkan tulisan " Praktikum ^_^"
}
}
}
4. Video [kembali]
LCD
19.05
A. Arduino
Arduino adalah pengendali mikro single-board yang bersifat open-source, diturunkan dari Wiring platform, dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Hardwarenya memiliki prosesor Atmel AVR dan softwarenya memiliki bahasa pemrograman sendiri. Saat ini Arduino sangat populer di seluruh dunia. Banyak pemula yang belajar mengenal robotika dan elektronika lewat Arduino karena mudah dipelajari. Tapi tidak hanya pemula, para hobbyist atau profesional pun ikut senang mengembangkan aplikasi elektronik menggunakan Arduino. Bahasa yang dipakai dalam Arduino bukan assembler yang relatif sulit, tetapi bahasa C yang disederhanakan dengan bantuan pustaka-pustaka (libraries) Arduino. Arduino juga menyederhanakan proses bekerja dengan mikrokontroler, sekaligus menawarkan berbagai macam kelebihan antara lain:
* Murah – Papan (perangkat keras) Arduino biasanya dijual relatif murah (antara 125ribu hingga 400ribuan rupiah saja) dibandingkan dengan platform mikrokontroler pro lainnya. Jika ingin lebih murah lagi, tentu bisa dibuat sendiri dan itu sangat mungkin sekali karena semua sumber daya untuk membuat sendiri Arduino tersedia lengkap di website Arduino bahkan di website-website komunitas Arduino lainnya. Tidak hanya cocok untuk Windows, namun juga cocok bekerja di Linux.
* Sederhana dan mudah pemrogramannya – Perlu diketahui bahwa lingkungan pemrograman di Arduino mudah digunakan untuk pemula, dan cukup fleksibel bagi mereka yang sudah tingkat lanjut. Untuk guru/dosen, Arduino berbasis pada lingkungan pemrograman Processing, sehingga jika mahasiswa atau murid-murid terbiasa menggunakan Processing tentu saja akan mudah menggunakan Arduino.
* Perangkat lunaknya Open Source – Perangkat lunak Arduino IDE dipublikasikan sebagai Open Source, tersedia bagi para pemrogram berpengalaman untuk pengembangan lebih lanjut. Bahasanya bisa dikembangkan lebih lanjut melalui pustaka-pustaka C++ yang berbasis pada Bahasa C untuk AVR.
* Perangkat kerasnya Open Source – Perangkat keras Arduino berbasis mikrokontroler ATMEGA8, ATMEGA168, ATMEGA328 dan ATMEGA1280 (yang terbaru ATMEGA2560). Dengan demikian siapa saja bisa membuatnya (dan kemudian bisa menjualnya) perangkat keras Arduino ini, apalagi bootloader tersedia langsung dari perangkat lunak Arduino IDE-nya. Bisa juga menggunakan breadoard untuk membuat perangkat Arduino beserta periferal-periferal lain yang dibutuhkan.
Arduino adalah pengendali mikro single-board yang bersifat open-source, diturunkan dari Wiring platform, dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Hardwarenya memiliki prosesor Atmel AVR dan softwarenya memiliki bahasa pemrograman sendiri. Saat ini Arduino sangat populer di seluruh dunia. Banyak pemula yang belajar mengenal robotika dan elektronika lewat Arduino karena mudah dipelajari. Tapi tidak hanya pemula, para hobbyist atau profesional pun ikut senang mengembangkan aplikasi elektronik menggunakan Arduino. Bahasa yang dipakai dalam Arduino bukan assembler yang relatif sulit, tetapi bahasa C yang disederhanakan dengan bantuan pustaka-pustaka (libraries) Arduino. Arduino juga menyederhanakan proses bekerja dengan mikrokontroler, sekaligus menawarkan berbagai macam kelebihan antara lain:
* Murah – Papan (perangkat keras) Arduino biasanya dijual relatif murah (antara 125ribu hingga 400ribuan rupiah saja) dibandingkan dengan platform mikrokontroler pro lainnya. Jika ingin lebih murah lagi, tentu bisa dibuat sendiri dan itu sangat mungkin sekali karena semua sumber daya untuk membuat sendiri Arduino tersedia lengkap di website Arduino bahkan di website-website komunitas Arduino lainnya. Tidak hanya cocok untuk Windows, namun juga cocok bekerja di Linux.
* Sederhana dan mudah pemrogramannya – Perlu diketahui bahwa lingkungan pemrograman di Arduino mudah digunakan untuk pemula, dan cukup fleksibel bagi mereka yang sudah tingkat lanjut. Untuk guru/dosen, Arduino berbasis pada lingkungan pemrograman Processing, sehingga jika mahasiswa atau murid-murid terbiasa menggunakan Processing tentu saja akan mudah menggunakan Arduino.
* Perangkat lunaknya Open Source – Perangkat lunak Arduino IDE dipublikasikan sebagai Open Source, tersedia bagi para pemrogram berpengalaman untuk pengembangan lebih lanjut. Bahasanya bisa dikembangkan lebih lanjut melalui pustaka-pustaka C++ yang berbasis pada Bahasa C untuk AVR.
* Perangkat kerasnya Open Source – Perangkat keras Arduino berbasis mikrokontroler ATMEGA8, ATMEGA168, ATMEGA328 dan ATMEGA1280 (yang terbaru ATMEGA2560). Dengan demikian siapa saja bisa membuatnya (dan kemudian bisa menjualnya) perangkat keras Arduino ini, apalagi bootloader tersedia langsung dari perangkat lunak Arduino IDE-nya. Bisa juga menggunakan breadoard untuk membuat perangkat Arduino beserta periferal-periferal lain yang dibutuhkan.
C. LCD
Material LCD (Liquid Cristal Display)
LCD adalah lapisan dari campuran organik
antara lapisan kaca bening dengan elektroda transparan indium oksida
dalam bentuk tampilan seven-segment dan lapisan elektroda pada kaca
belakang. Ketika elektroda diaktifkan dengan medan listrik (tegangan),
molekul organik yang panjang dan silindris menyesuaikan diri dengan
elektroda dari segmen. Lapisan sandwich memiliki polarizer cahaya
vertikal depan dan polarizer cahaya horisontal belakang yang diikuti
dengan lapisan reflektor. Cahaya yang dipantulkan tidak dapat melewati
molekul-molekul yang telah menyesuaikan diri dan segmen yang diaktifkan
terlihat menjadi gelap dan membentuk karakter data yang ingin
ditampilkan.
Pengendali / Kontroler LCD (Liquid Cristal Display)
Dalam modul LCD (Liquid Cristal Display) terdapat microcontroller yang berfungsi sebagai pengendali tampilan karakter LCD (Liquid Cristal Display). Microntroller pada suatu LCD (Liquid Cristal Display) dilengkapi dengan memori dan register. Memori yang digunakan microcontroler internal LCD adalah :
- DDRAM (Display Data Random Access Memory) merupakan memori tempat karakter yang akan ditampilkan berada.
- CGRAM (Character Generator Random Access Memory) merupakan memori untuk menggambarkan pola sebuah karakter dimana bentuk dari karakter dapat diubah-ubah sesuai dengan keinginan.
- CGROM (Character Generator Read Only Memory) merupakan memori untuk menggambarkan pola sebuah karakter dimana pola tersebut merupakan karakter dasar yang sudah ditentukan secara permanen oleh pabrikan pembuat LCD (Liquid Cristal Display) tersebut sehingga pengguna tinggal mangambilnya sesuai alamat memorinya dan tidak dapat merubah karakter dasar yang ada dalam CGROM.
Register control yang terdapat dalam suatu LCD diantaranya adalah.
- Register perintah yaitu register yang berisi perintah-perintah dari mikrokontroler ke panel LCD (Liquid Cristal Display) pada saat proses penulisan data atau tempat status dari panel LCD (Liquid Cristal Display) dapat dibaca pada saat pembacaan data.
- Register data yaitu register untuk menuliskan atau membaca data dari atau keDDRAM. Penulisan data pada register akan menempatkan data tersebut keDDRAM sesuai dengan alamat yang telah diatur sebelumnya.
Pin, kaki atau jalur input dan kontrol dalam suatu LCD (Liquid Cristal Display) diantaranya adalah :
- Pin data adalah jalur untuk memberikan data karakter yang ingin ditampilkan menggunakan LCD (Liquid Cristal Display) dapat dihubungkan dengan bus data dari rangkaian lain seperti mikrokontroler dengan lebar data 8 bit.
- Pin RS (Register Select) berfungsi sebagai indikator atau yang menentukan jenis data yang masuk, apakah data atau perintah. Logika low menunjukan yang masuk adalah perintah, sedangkan logika high menunjukan data.
- Pin R/W (Read Write) berfungsi sebagai instruksi pada modul jika low tulis data, sedangkan high baca data.
- Pin E (Enable) digunakan untuk memegang data baik masuk atau keluar.
- Pin VLCD berfungsi mengatur kecerahan tampilan (kontras) dimana pin ini dihubungkan dengan trimpot 5 Kohm, jika tidak digunakan dihubungkan ke ground, sedangkan tegangan catu daya ke LCD sebesar 5 Volt.
Seven Segmen Bascom AVR
18.021. Rangkaian Simulasi [kembali]
2. Flowchart [kembali]
3. Listing Program [kembali]
$regfile = "m8535.dat" 'library Atmega 8535
$regfile = 16000000 'clocl ATmega 8535
Ddra = &B11111111 'port A sebagai output
Porta = &B00000000 'keadaan awal port a mati
Ddrb = &B00000000 'port B sebagai input
Portb = &B00000000 'keadaan awal port B mati
Do 'fungsi utama
If Pinb.0 = 1 Then 'pemilihan keadaan pada port B
Porta = &B0000110 'output pada port A
Waitms 100 'delay selama 100 ms
Elseif Pinb.1 = 1 Then
Porta = &B1011011
Waitms 100
Elseif Pinb.2 = 1 Then
Porta = &B1001111
Waitms 100
Elseif Pinb.3 = 1 Then
Porta = &B1100110
Waitms 100
Elseif Pinb.4 = 1 Then
Porta = &B1101101
Waitms 100
Elseif Pinb.5 = 1 Then
Porta = &B1111101
Waitms 100
Elseif Pinb.6 = 1 Then
Porta = &B0000111
Waitms 100
Elseif Pinb.7 = 1 Then
Porta = &B1111111
Waitms 100
Else 'pemilihan keadaan terakhir
Porta = &B0000000
Waitms 100
End If 'pemilihan keadaan selesai
Loop 'program berulang
End 'program selesai
4. Video [kembali]
Link download HTML Download here
Link download video simulasi Download here
Link download rangkaian simulasi Download here
Link download listing program Download here
Link download video simulasi Download here
Link download rangkaian simulasi Download here
Link download listing program Download here
Seven Segmen 8086
17.001. Rangkaian Simulasi [kembali]
2. Flowchart [kembali]
3. Listing Program [kembali]
#make_bin#
; BIN is plain binary format similar to .com format, but not limited to 1 segment;
; All values between # are directives, these values are saved into a separate .binf file.
; Before loading .bin file emulator reads .binf file with the same file name.
; All directives are optional, if you don't need them, delete them.
; set loading address, .bin file will be loaded to this address:
#LOAD_SEGMENT=0500h#
#LOAD_OFFSET=0000h#
; set entry point:
#CS=0500h# ; same as loading segment
#IP=0000h# ; same as loading offset
; set segment registers
#DS=0500h# ; same as loading segment
#ES=0500h# ; same as loading segment
; set stack
#SS=0500h# ; same as loading segment
#SP=FFFEh# ; set to top of loading segment
; set general registers (optional)
#AX=0000h#
#BX=0000h#
#CX=0000h#
#DX=0000h#
#SI=0000h#
#DI=0000h#
#BP=0000h#
;initialisasi PA=PB=Out;
mov dx,206h
mov al,89h
out dx,al
lagi:
mov dx,200h
mov al,0FBh
out dx,al
mov dx,202h
mov al,4Fh
out dx,al
jmp lagi
HLT ; halt!
4. Video [kembali]
File HTML -download
File Proteus - downloadFile Program - Download
Video Rangkaian - Download





