Laporan 3 Seven Segmen New
description
Transcript of Laporan 3 Seven Segmen New
A.JUDUL PERCOBAAN
SEVEN SEGMEN
B.Tujuan Percobaan
1. Mahasiswa dapat memahami rangkaian mikrokontroller dengan
menggunakan seven segmen
2. Mampu membuat program untuk mikrokontroller yang menggunakan saklar
untuk menampilkan huruf dan angka pada seven segmen
3. Memahami instruksi yang digunakan dalam mikrokontroller yang
menggunakan saklar untuk menampilkan huruf dan angka pada seven
segmen.
C.Teori Dasar
Gambar Rangkaian Mikrikontroller Seven Segmen dengan PushButton dan
Saklar geser.
Mikrokontroler adalah sebuah sistem komputer lengkap dalam satu chip.
Mikrokontroler lebih dari sekedar sebuah mikroprosesor karena sudah terdapat
atau berisikan ROM (Read-Only Memory), RAM (Read-Write Memory), beberapa
port masukan maupun keluaran, dan beberapa peripheral seperti
pencacah/pewaktu, ADC (Analog to Digital converter), DAC (Digital to Analog
NASRULLAH YUSUF_1129040100 | 1
converter) dan serial komunikasi. Salah satu mikrokontroler yang banyak
digunakan saat ini yaitu mikrokontroler AVR. AVR adalah mikrokontroler RISC
(Reduce Instuction Set Compute) 8 bit berdasarkan arsitektur Harvard. Secara
umum mikrokontroler AVR dapat dapat dikelompokkan menjadi 3 kelompok, yaitu
keluarga AT90Sxx, ATMega dan ATtiny. Pada dasarnya yang membedakan
masing-masing kelas adalah memori, peripheral, dan fiturnya Seperti
mikroprosesor pada umumnya, secara internal mikrokontroler ATMega16 terdiri
atas unit-unit fungsionalnya Arithmetic and Logical Unit (ALU), himpunan register
kerja, register dan dekoder instruksi, dan pewaktu serta komponen kendali
lainnya. Berbeda dengan mikroprosesor, mikrokontroler menyediakan memori
dalam chip yang sama dengen prosesornya (in chip).
Saklar dan PushButton
Saklar dan PushButton adalah sebuah perangkat yang digunakan untuk
memutuskan jaringan listrik, atau untuk menghubungkannya. Jadi saklar dan
PushButton pada dasarnya adalah alat penyambung atau pemutus aliran listrik.
Selain untuk jaringan listrik arus kuat, saklar berbentuk kecil juga dipakai untuk
alat komponen elektronika arus lemah.
Seven Segment
Seven segment (7-segments) adalah sebuah komponen untuk
menampilkan bilangan 0 sampai 9 yang banyak digunakan pada aplikasi yang
memerlukan tampilan angka. 7-segments pada dasarnya adalah LED (Light
Emitting Diode), yaitu diode yang dapat mengeluarkan cahaya bila diberi
tegangan pada pin-nya. Gambar di bawah ini memperlihatkan gambaran tentang
7-segment yang masing-masing segment diberi notasi mulai dari a, b, c, d, e, f,
dan g.
NASRULLAH YUSUF_1129040100 | 2
D.Langkah Kerja dan Hasil
Percobaan 1
Flowchartnya :
1. Buka aplikasi BASCOM-AVR
2. Buat file baru, klik File lalu pilih New (Ctrl+N)
3. Ketikkan Programnya
NASRULLAH YUSUF_1129040100 | 3
4. Simpan program yang telah anda buat, klik File lalu pilih Save (Ctrl S)
5. Compile program dengan mengklik icon seperti gambar berikut atau tekan F7.
6. Langkah pembuatan program sampai dengan compile program telah selesai.
Langkah selanjutnya kita mendownload program yang telah kita buat ke
Mikrokontroller ATMega 16 menggunakan aplikasi AvrProg. Lakukan uji coba
untuk melihat kebenaran hasil program.
7. Hasil Program
Tampil Karakter A pada Segmen 1.
NASRULLAH YUSUF_1129040100 | 4
Percobaan 2
Flowchartnya :
NASRULLAH YUSUF_1129040100 | 5
1. Buat file baru, Klik lalu pilih New (Ctrl N)
2. Ketikkan Programnya
NASRULLAH YUSUF_1129040100 | 6
3. Simpan Program, klik File lalu pilih Save.
4. Compile program dengan mengklik icon seperti gambar berikut atau tekan F7.
5. Langkah pembuatan program sampai dengan compile program telah selesai.
Langkah selanjutnya kita mendownload program yang telah kita buat ke
Mikrokontroller ATMega 16 menggunakan aplikasi AvrProg. Lakukan uji coba
untuk melihat kebenaran hasil program.
6. Hasil Program
Bisa tampil karakter 0 pada semua Segmen
NASRULLAH YUSUF_1129040100 | 7
Bisa tampil karakter 1 pada semua Segmen
Bisa tampil karakter 2 pada semua Segmen
Bisa tampil karakter 3 pada semua Segmen
Bisa tampil karakter 4 pada semua Segmen
NASRULLAH YUSUF_1129040100 | 8
Percobaan 3
Flowchartnya :
NASRULLAH YUSUF_1129040100 | 9
1. Buat file baru, Klik lalu pilih New (Ctrl N)
2. Ketikkan Programnya
3. Simpan Program, klik File lalu pilih Save.
4. Compile program dengan mengklik icon seperti gambar berikut atau tekan F7.
5. Langkah pembuatan program sampai dengan compile program telah selesai.
Langkah selanjutnya kita mendownload program yang telah kita buat ke
Mikrokontroller ATMega 16 menggunakan aplikasi AvrProg. Lakukan uji coba
untuk melihat kebenaran hasil program.
6. Hasil Program
Tampil Angka 1 pada Segmen 1, Angka 2 pada Segmen 2, Angka 3 pada
Segmen 3, dan Angka 9 pada Segmen 4.
NASRULLAH YUSUF_1129040100 | 10
Percobaan 4
Flowchartnya :
1. Buat file baru, Klik lalu pilih New (Ctrl N)
2. Ketikkan Programnya
NASRULLAH YUSUF_1129040100 | 11
3. Simpan Program, klik File lalu pilih Save.
4. Compile program dengan mengklik icon seperti gambar berikut atau tekan F7.
5. Langkah pembuatan program sampai dengan compile program telah selesai.
Langkah selanjutnya kita mendownload program yang telah kita buat ke
Mikrokontroller ATMega 16 menggunakan aplikasi AvrProg. Lakukan uji coba
untuk melihat kebenaran hasil program.
6. Hasil Program
Tampil Angka 1 pada Segmen 1, Angka 2 pada Segmen 2, Angka 3 pada
Segmen 3, dan Angka 4 pada Segmen 4.
NASRULLAH YUSUF_1129040100 | 12
Tantangan 1
Flowchartnya :
1. Buat file baru, Klik lalu pilih New (Ctrl N)
2. Ketikkan Programnya
3. Simpan Program, klik File lalu pilih Save.
4. Compile program dengan mengklik icon seperti gambar berikut atau tekan F7.
5. Langkah pembuatan program sampai dengan compile program telah selesai.
Langkah selanjutnya kita mendownload program yang telah kita buat ke
Mikrokontroller ATMega 16 menggunakan aplikasi AvrProg. Lakukan uji coba
untuk melihat kebenaran hasil program.
NASRULLAH YUSUF_1129040100 | 13
6. Hasil Program
Tantangan 2
Flowchartnya :
1. Buat file baru, Klik lalu pilih New (Ctrl N)
2. Ketikkan Programnya
NASRULLAH YUSUF_1129040100 | 14
3. Simpan Program, klik File lalu pilih Save.
4. Compile program dengan mengklik icon seperti gambar berikut atau tekan F7.
5. Langkah pembuatan program sampai dengan compile program telah selesai.
Langkah selanjutnya kita mendownload program yang telah kita buat ke
Mikrokontroller ATMega 16 menggunakan aplikasi AvrProg. Lakukan uji coba
untuk melihat kebenaran hasil program.
6. Hasil Program
Tantangan 3
Flowchartnya :
NASRULLAH YUSUF_1129040100 | 15
1. Buat file baru, Klik lalu pilih New (Ctrl N)
2. Ketikkan Programnya
NASRULLAH YUSUF_1129040100 | 16
3. Simpan Program, klik File lalu pilih Save.
4. Compile program dengan mengklik icon seperti gambar berikut atau tekan F7.
5. Langkah pembuatan program sampai dengan compile program telah selesai.
Langkah selanjutnya kita mendownload program yang telah kita buat ke
Mikrokontroller ATMega 16 menggunakan aplikasi AvrProg. Lakukan uji coba
untuk melihat kebenaran hasil program.
6. Hasil Program
NASRULLAH YUSUF_1129040100 | 17
E. ANALISA DATA
Percobaan 1
Pada percobaan ini kita akan menampilkan Huruf A pada Segmen 1,
adapun program untuk percobaan 3a ini adalah sebagai berikut :
Untuk mendeklarasikan mikrocontroller apa yang kita gunakan maka kita
memeberikan library $regfile = "m16def.dat" yang menyatakan bahwa
mikrokontroller yang kita pakai adalah atmega16, selanjutnya untuk
mendeklarasikan berapa besar crystal yang kita gunakan dan untuk
menyesuaikan waktu delay dengan waktu yang sebenarnya maka kita
memberikan pendeklarasian cristal dengan cara ketik $crystal = 1000000 yang
artinya kita menggunakan crystal 1MHz, selanjutnya kita menkonfigurasi bahwa
Port D menjadi Output Config Portd = Output dimana Port D ini yang akan
dihubungkan dengan Segmen pada Seven Segmen. selanjutnya kita
menkonfigurasi bahwa Port B menjadi Output Config Portb = Output dimana Port
B ini yang akan dihubungkan dengan Tampilan pada Seven Segmen.
Selanjutnya kita melangkah pada instruksi untuk menampilkan karakter pada
seven segmen, langkah pertama yaitu kita akan mendeklarasikan bahwa kita
akan menampilkan karakter tersebut, di segmen 1 dengan cara mengetik Portd =
&B00000001, selanjutnya kita mendeklarasikan bahwa karakter A yang akan di
tampilkan pada segmen tersebut dengan cara ketik Portb = &B01110111 dan
Instruksi selesai.
Percobaan 2
Pada percobaan ini kita dapat menampilkan angka Satu, Dua, Tiga, dan
Empat pada semua Segmen. Berikut analisa programnya
Untuk mendeklarasikan mikrocontroller apa yang kita gunakan maka kita
memeberikan library $regfile = "m16def.dat" yang menyatakan bahwa
mikrokontroller yang kita pakai adalah atmega16, selanjutnya untuk
mendeklarasikan berapa besar crystal yang kita gunakan dan untuk
menyesuaikan waktu delay dengan waktu yang sebenarnya maka kita
memberikan pendeklarasian cristal dengan cara ketik $crystal = 1000000 yang
artinya kita menggunakan crystal 1MHz, selanjutnya kita menkonfigurasi bahwa
Port D menjadi Output Config Portd = Output dimana Port D ini yang akan
NASRULLAH YUSUF_1129040100 | 18
dihubungkan dengan Segmen pada Seven Segmen. selanjutnya kita
menkonfigurasi bahwa Port B menjadi Output Config Portb = Output dimana Port
B ini yang akan dihubungkan dengan Tampilan pada Seven Segmen.
Selanjutnya kita reset Port D dengan perintah Portd = &H00, Selanjutnya kita
memasukkan perintah Do Perintah Perulangan, program utama dimulai. Jadi
ketika terjadi perulangan, perulangannya akan dimulai dari sini. Selanjutnya kita
masukkan instruksi If Pina.0 = 1 Then artinya terjadi pengecekan kondisi disini
jika Pina.0 = 1 maka statement dibawahnya akan dilaksanakan, jika tidak maka
lanjut ke instruksi selanjutnya tanpa mengeksekusi statement If Pina.0=1.
Statementnya adalah Portd = &H01 artinya kita mengaktifkan Segmen 1.
Kemudian instruksi End If Mengakhiri statement untuk instruksi If Pina.0=1 then.
Jika kondisi instruksi tadi bernilai salah lagi maka dicek lagi untuk instruksi if
selanjutnya yaitu If Pina.1 = 1 Then artinya Jika Pina.1 = 1 maka statement
dibawahnya akan dilaksanakan, jika tidak maka lanjut ke instruksi selanjutnya
tanpa mengeksekusi statement If Pina.1=1. Statement dari If Pina.1=1 adalah
Portd = &H02 artinya mengeset PortD.2 yang terhubung dengan segmen 2, jadi
instruksi ini akan mengaktifkan Segmen 2. Kemudian instruksi End If Mengakhiri
statement untuk instruksi If Pina.1=1 then. Jika kondisi instruksi tadi bernilai salah
lagi maka dicek lagi untuk instruksi if selanjutnya yaitu If Pina.2 = 1 Then artinya
Jika Pina.2 = 1 maka statement dibawahnya akan dilaksanakan, jika tidak maka
lanjut ke instruksi selanjutnya tanpa mengeksekusi statement If Pina.2=1.
Statement dari If Pina.2=1 adalah Portd = &H04 artinya mengeset PortD.3 yang
terhubung dengan segmen 3, jadi instruksi ini akan mengaktifkan Segmen 3.
Kemudian instruksi End If Mengakhiri statement untuk instruksi If Pina.2=1 then.
Jika kondisi instruksi tadi bernilai salah lagi maka dicek lagi untuk instruksi if
selanjutnya yaitu If Pina.3 = 1 Then artinya Jika Pina.3 = 1 maka statement
dibawahnya akan dilaksanakan, jika tidak maka lanjut ke instruksi selanjutnya
tanpa mengeksekusi statement If Pina.3=1. Statement dari If Pina.3=1 adalah
Portd = &H08 artinya mengeset PortD.4 yang terhubung dengan segmen 4, jadi
instruksi ini akan mengaktifkan Segmen 4. Kemudian instruksi End If Mengakhiri
statement untuk instruksi If Pina.3=1 then. Selanjutnya instruksi untuk tampilan
pada Segmen yang diaktifkan, If Pinc.0 = 1 Then artinya jika Pinc.0 = 1 maka
statement dibawahnya akan dilaksanakan, jika tidak maka lanjut ke instruksi
selanjutnya tanpa mengeksekusi statement If Pinc.0=1. Statement dari If
NASRULLAH YUSUF_1129040100 | 19
Pinc.0=1 yaitu Portb = &H3F artinya mengeset PortB=&H3F yang dimana Port B
terhubung dengan tampilan pada Seven Segmen dan &H3F akan menampilkan
angka 0 pada Segmen yang diaktifkan. Kemudian instruksi End If Mengakhiri
statement untuk instruksi If Pinc.0=1 then. Instruksi selanjutnya jika kondisi If tadi
bernilai salah, yaitu If Pinc.1 = 1 Then artinya jika Pinc.1 = 1 maka statement
dibawahnya akan dilaksanakan, jika tidak maka lanjut ke instruksi selanjutnya
tanpa mengeksekusi statement If Pinc.1=1. Statementnya adalah Portb = &H06
artinya mengeset PortB=&H06 yang dimana Port B terhubung dengan tampilan
pada Seven Segmen dan &H06 akan menampilkan angka 1 pada Segmen yang
diaktifkan. Kemudian instruksi End If Mengakhiri statement untuk instruksi If
Pinc.1=1 then. Instruksi selanjutnya jika kondisi If tadi bernilai salah juga, yaitu If
Pinc.2 = 1 Then artinya jika Pinc.2 = 1 maka statement dibawahnya akan
dilaksanakan, jika tidak maka lanjut ke instruksi selanjutnya tanpa mengeksekusi
statement If Pinc.2=1. Statementnya adalah Portb = &H5B artinya mengeset
PortB=&H5B yang dimana Port B terhubung dengan tampilan pada Seven
Segmen dan &H06 akan menampilkan angka 2 pada Segmen yang diaktifkan.
Kemudian instruksi End If Mengakhiri statement untuk instruksi If Pinc.1=1 then.
Instruksi selanjutnya jika kondisi If tadi bernilai salah juga, yaitu If Pinc.3 = 1 Then
artinya jika Pinc.3 = 1 maka statement dibawahnya akan dilaksanakan, jika tidak
maka lanjut ke instruksi selanjutnya tanpa mengeksekusi statement If Pinc.3=1.
Statementnya adalah Portb = &H4F artinya mengeset PortB=&H4F yang dimana
Port B terhubung dengan tampilan pada Seven Segmen dan &H4F akan
menampilkan angka 3 pada Segmen yang diaktifkan. Kemudian instruksi End If
Mengakhiri statement untuk instruksi If Pinc.3=1 then. Instruksi selanjutnya jika
kondisi If tadi bernilai salah juga, yaitu If Pinc.4 = 1 Then artinya jika Pinc.4 = 1
maka statement dibawahnya akan dilaksanakan, jika tidak maka lanjut ke
instruksi selanjutnya tanpa mengeksekusi statement If Pinc.4=1. Statementnya
adalah Portb = &H66 artinya mengeset PortB=&H66 yang dimana Port B
terhubung dengan tampilan pada Seven Segmen dan &H66 akan menampilkan
angka 4 pada Segmen yang diaktifkan. Kemudian instruksi End If Mengakhiri
statement untuk instruksi If Pinc.4=1 then. Lalu kita masukkan instruksi Loop
artinya Perintah perulangan, ulangi ke awal (mulai dari instruksi do). Kemudian
instruksi End artinya program selesai.
NASRULLAH YUSUF_1129040100 | 20
Percobaan 3
Untuk mendeklarasikan mikrocontroller apa yang kita gunakan maka kita
memeberikan library $regfile = "m16def.dat" yang menyatakan bahwa
mikrokontroller yang kita pakai adalah atmega16, selanjutnya untuk
mendeklarasikan berapa besar crystal yang kita gunakan dan untuk
menyesuaikan waktu delay dengan waktu yang sebenarnya maka kita
memberikan pendeklarasian cristal dengan cara ketik $crystal = 1000000 yang
artinya kita menggunakan crystal 1MHz, Selanjutnya kita buat variable dengan
type data byte yaitu Satu, Dua, Tiga, dan Empat dengan instruksi Dim Satu As
Byte , Dua As Byte , Tiga As Byte , Empat As Byte. Setelah itu kita buat lagi
variable dengan type data byte juga yaitu Angka1, Angka2, Angka3, dan Angka 9
dengan instruksi Dim Angka1 As Byte , Angka2 As Byte , Angka3 As Byte ,
Angka9 As Byte. selanjutnya kita menkonfigurasi bahwa Port D menjadi Output
Config Portd = Output dimana Port D ini yang akan dihubungkan dengan
Segmen pada Seven Segmen. selanjutnya kita menkonfigurasi bahwa Port B
menjadi Output Config Portb = Output dimana Port B ini yang akan dihubungkan
dengan Tampilan pada Seven Segmen. Setelah itu kita ketikkan instruksi Saklar1
Alias Pina.0 artinya Saklar1 sama dengan PinA.0 jadi ketika kita memanggil
Saklar1 sama saja dengan kita memanggil PinA.0. selanjutnya kita ketikkan
instruksi Saklar2 Alias Pina.1 artinya Saklar2 sama dengan PinA.1 jadi ketika kita
memanggil Saklar2 sama saja dengan kita memanggil PinA.1. selanjutnya lagi
kita ketikkan Saklar3 Alias Pina.2 artinya Saklar3 sama dengan PinA.2 jadi ketika
kita memanggil Saklar3 sama saja dengan kita memanggil PinA.2. Selanjutnya
lagi kita ketikkan instruksi Saklar4 Alias Pina.3 artinya Saklar4 sama dengan
PinA.3 jadi ketika kita memanggil Saklar4 sama saja dengan kita memanggil
PinA.3. lalu kita ketikkan instruksi Segmen Alias Portd artinya Segmen sama
dengan PortD jadi ketika kita memanggil Segmen sama saja dengan kita
memanggil PortD. Selanjutnya kita ketikkan Tampilan Alias Portb artinya
Tampilan sama dengan PortB jadi ketika kita memanggil Tampilan sama saja
dengan kita memanggil PortB. Setelah itu kita beri nila pada variable yang kita
buat tadi instruksinya sebagai berikut Satu = &H01 : Dua = &H02 : Tiga = &H04 :
Empat = &H08. Angka1 = &H06 : Angka2 = &H5B : Angka3 = &H4F : Angka9 =
&H6F artinya memberi Nilai pada Angka1, Angka2, Angka3, dan Angka9.
NASRULLAH YUSUF_1129040100 | 21
Selanjutnya kita memasukkan perintah Do Perintah Perulangan, program utama
dimulai. Jadi ketika terjadi perulangan, perulangannya akan dimulai dari sini.
Selanjutnya pengecekan kondisi instruksi If Saklar1 = 1 Then artinya jika Saklar1
= 1 maka statement dibawahnya akan dilaksanakan, jika tidak maka lanjut ke
instruksi selanjutnya tanpa mengeksekusi statement If Saklar1=1. Statementnya
yaitu Segmen = Satu instruksi ini akan mengaktifkan Segmen 1, kemudian kita
tampilkan Angka 1 pada Segmen 1 dengan instruksi Tampilan = Angka1.
Kemudian instruksi End If Mengakhiri statement untuk instruksi If Saklar1=1 then.
Instruksi selanjutnya jika kondisi tadi bernilai salah yaitu If Saklar2 = 1 Then
artinya jika Saklar2 = 1 maka statement dibawahnya akan dilaksanakan, jika
tidak maka lanjut ke instruksi selanjutnya tanpa mengeksekusi statement If
Saklar2=1. Statementnya yaitu Segmen = Dua instruksi ini akan mengaktifkan
Segmen 2, kemudian kita tampilkan Angka 2 pada Segmen 2 dengan instruksi
Tampilan = Angka2. Kemudian instruksi End If Mengakhiri statement untuk
instruksi If Saklar2=1 then. Instruksi selanjutnya jika kondisi tadi bernilai salah
juga yaitu If Saklar3 = 1 Then artinya jika Saklar3 = 1 maka statement
dibawahnya akan dilaksanakan, jika tidak maka lanjut ke instruksi selanjutnya
tanpa mengeksekusi statement If Saklar3=1. Statementnya yaitu Segmen = Tiga
instruksi ini akan mengaktifkan Segmen 3, kemudian kita tampilkan Angka 3
pada Segmen 3 dengan instruksi Tampilan = Angka3. Kemudian instruksi End If
Mengakhiri statement untuk instruksi If Saklar3=1 then. Instruksi selanjutnya jika
kondisi tadi bernilai salah juga yaitu If Saklar4 = 1 Then artinya jika Saklar4 = 1
maka statement dibawahnya akan dilaksanakan, jika tidak maka lanjut ke
instruksi selanjutnya tanpa mengeksekusi statement If Saklar4=1. Statementnya
yaitu Segmen = Empat instruksi ini akan mengaktifkan Segmen 4, kemudian kita
tampilkan Angka 9 pada Segmen 3 dengan instruksi Tampilan = Angka9.
Kemudian instruksi End If Mengakhiri statement untuk instruksi If Saklar4=1 then.
Lalu kita masukkan instruksi Loop artinya Perintah perulangan, ulangi ke awal
(mulai dari instruksi do).
Percobaan 4
Pada percobaan ini kita akan menampilkan Angka “4321” pada 4
segmen, adapun program untuk Percobaan 4 ini adalah sebagai berikut :
NASRULLAH YUSUF_1129040100 | 22
Untuk mendeklarasikan mikrocontroller apa yang kita gunakan maka kita
memeberikan library $regfile = "m16def.dat" yang menyatakan bahwa
mikrokontroller yang kita pakai adalah atmega16, selanjutnya untuk
mendeklarasikan berapa besar crystal yang kita gunakan dan untuk
menyesuaikan waktu delay dengan waktu yang sebenarnya maka kita
memberikan pendeklarasian cristal dengan cara ketik $crystal = 1000000 yang
artinya kita menggunakan crystal 1MHz, selanjutnya kita membuat variable
dengan type data byte Satu, Dua, Tiga, dan Empat dengan instruksi sebagai
berikut Dim Satu As Byte , Dua As Byte , Tiga As Byte , Empat As Byte Variabel
ini lah nanti yang digunakan untuk menunjukkan penggunaan Segmen Satu,
Dua, Tiga, dan Empat. Lalu kita buat variable lagi yaitu Angka0, Angka1, Angka2,
Angka3, Angka4, Angka5, Angka6, Angka7, Angka8, dan Angka9 dengan
instruksi sebagai berikut Dim Angka0 As Byte , Angka1 As Byte , Angka2 As Byte
, Angka3 As Byte dan Dim Angka4 As Byte , Angka5 As Byte , Angka6 As Byte
dan Dim Angka7 As Byte , Angka8 As Byte , Angka9 As Byte variable ini
digunakan untuk Tampilan pada seven Segmen nanti. selanjutnya kita
menkonfigurasi bahwa Port D menjadi Output Config Portd = Output dimana Port
D ini yang akan dihubungkan dengan Segmen pada Seven Segmen. selanjutnya
kita menkonfigurasi bahwa Port B menjadi Output Config Portb = Output dimana
Port B ini yang akan dihubungkan dengan Tampilan pada Seven Segmen.
Selanjutnya kita menyamakan Port D dengan Segmen dengan instruksi Segmen
Alias Portd jadi ketika kita memanggil Segmen sama saja dengan kita memanggil
PortD. Lalu kita menyamakan Port B dengan Segmen dengan instruksi Tampilan
Alias Portb jadi ketika kita memanggil Tampilan sama saja dengan kita
memanggil PortB. Selanjutnya kita memberi nilai pada variable Satu dengan
instruksi berikut Satu = &H01 jadi Satu sama saja dengan &H01. Kemudian
memberi nilai pada variable Dua dengan instruksi berikut Dua = &H02 Jadi Dua
sama saja dengan &H02. Kemudian memberi nilai pada variable Tiga dengan
instruksi berikut Tiga = &H04 Jadi tiga sama saja dengan &H04. Kemudian
memberi nilai pada variable Empat dengan instruksi berikut Empat = &H08 jadi
Empat sama saja dengan &H08. Selanjutnya kita memberi nilai pada variable
Angka1, Angka2, Angka3, dan Angka4 dengan instruksi berikut Angka1 = &H06H
: Angka2 = &H5BH : Angka3 = &H4FH : Angka4 = &H66H dimana variable inilah
nanti yang akan dihubungkan dengan Tampilan pada Segmen, &H06H akan
NASRULLAH YUSUF_1129040100 | 23
menampilkan Angka 1, &H5BH akan menampilkan Angka 2, &H4FH akan
menampilkan Angka 3, dan &H66H akan menampilkan Angka 4. Selanjutnya kita
memasukkan perintah Do Perintah Perulangan, program utama dimulai. Jadi
ketika terjadi perulangan, perulangannya akan dimulai dari sini. Lalu kita
mengaktifkan Segmen Satu dengan perintah Segmen = Satu karena pada
instruksi sebelumnya Segmen sudah kita samakan dengan Port D dan Satu
diberi Nilai &H01 jadi Instruksi ini sama saja dengan PortD=&H01. Selanjutnya
kita memberikan tampilan “1” pada Segmen Satu yang diaktifkan dengan
instruksi Tampilan = Angka1. Selanjutnya kita memasukkan instruksi Waitms 10
Delay 10 milisecond, artinya kita memberi waktu jeda eksekusi antara instruksi
sebelumnya Tampilan = Angka1 dengan instruksi berikutnya. Lalu kita
mengaktifkan Segmen Dua dengan perintah Segmen = Dua karena pada
instruksi sebelumnya Segmen sudah kita samakan dengan Port D dan Dua diberi
Nilai &H02 jadi Instruksi ini sama saja dengan PortD=&H02. Selanjutnya kita
memberikan tampilan “2” pada Segmen 2 yang diaktifkan dengan instruksi
Tampilan = Angka2. Selanjutnya kita memasukkan instruksi Waitms 10 Delay 10
milisecond, artinya kita memberi waktu jeda eksekusi antara instruksi
sebelumnya Tampilan = Angka2 dengan instruksi berikutnya. Lalu kita
memasukkan instruksi Segmen = Tiga artinya kita mengaktifkan Segmen 3.
Setelah itu kita akan memberikan tampilan pada segmen 3 dengan instruksi
Tampilan = Angka3 instruksi ini akan menampilkan Angka “3” pada segmen 3.
Lalu kita masukkan instruksi Waitms 10 artinya waktu jeda eksekusi program
antara instruksi sebelumnya dengan instruksi berikutnya adalah 10 ms.
Selanjutnya kita akan menampilkan Angka 4 pada segmen 4, pertama kita
aktifkan Segmen 4 dengan instruksi Segmen = Empat, setelah segmen diaktifkan
kita memberi tampilan pada segmen 4 dengan instruksi Tampilan = Angka4
maka pada segmen 4 akan tampil Angka “4”. Lalu kita masukkan instruksi
Waitms 10 artinya waktu jeda eksekusi program antara instruksi sebelumnya
dengan instruksi berikutnya adalah 10 ms. Lalu kita masukkan instruksi Loop
artinya Perintah perulangan, ulangi ke awal (mulai dari instruksi do).
NASRULLAH YUSUF_1129040100 | 24
Tantangan 1
Pada percobaan ini kita akan menampilkan Huruf C pada Segmen 3,
adapun program untuk tantangan 1 ini adalah sebagai berikut :
Untuk mendeklarasikan mikrocontroller apa yang kita gunakan maka kita
memeberikan library $regfile = "m16def.dat" yang menyatakan bahwa
mikrokontroller yang kita pakai adalah atmega16, selanjutnya untuk
mendeklarasikan berapa besar crystal yang kita gunakan dan untuk
menyesuaikan waktu delay dengan waktu yang sebenarnya maka kita
memberikan pendeklarasian cristal dengan cara ketik $crystal = 1000000 yang
artinya kita menggunakan crystal 1MHz, selanjutnya kita menkonfigurasi bahwa
Port D menjadi Output Config Portd = Output dimana Port D ini yang akan
dihubungkan dengan Segmen pada Seven Segmen. selanjutnya kita
menkonfigurasi bahwa Port B menjadi Output Config Portb = Output dimana Port
B ini yang akan dihubungkan dengan Tampilan pada Seven Segmen.
Selanjutnya kita melangkah pada instruksi untuk menampilkan karakter pada
seven segmen, langkah pertama yaitu kita akan mendeklarasikan bahwa kita
akan menampilkan karakter tersebut, di segmen 3 dengan cara mengetik Portd =
&B00000100, selanjutnya kita mendeklarasikan bahwa karakter C yang akan di
tampilkan pada segmen tersebut dengan cara ketik Portb = &B00111001 dan
Instruksi selesai.
Tantangan 2
Pada percobaan ini kita akan menampilkan Huruf E pada Segmen 4,
adapun program untuk Tantangan 2 ini adalah sebagai berikut :
Untuk mendeklarasikan mikrocontroller apa yang kita gunakan maka kita
memeberikan library $regfile = "m16def.dat" yang menyatakan bahwa
mikrokontroller yang kita pakai adalah atmega16, selanjutnya untuk
mendeklarasikan berapa besar crystal yang kita gunakan dan untuk
menyesuaikan waktu delay dengan waktu yang sebenarnya maka kita
memberikan pendeklarasian cristal dengan cara ketik $crystal = 1000000 yang
artinya kita menggunakan crystal 1MHz, selanjutnya kita menkonfigurasi bahwa
Port D menjadi Output Config Portd = Output dimana Port D ini yang akan
dihubungkan dengan Segmen pada Seven Segmen. selanjutnya kita
NASRULLAH YUSUF_1129040100 | 25
menkonfigurasi bahwa Port B menjadi Output Config Portb = Output dimana Port
B ini yang akan dihubungkan dengan Tampilan pada Seven Segmen.
Selanjutnya kita melangkah pada instruksi untuk menampilkan karakter pada
seven segmen, langkah pertama yaitu kita akan mendeklarasikan bahwa kita
akan menampilkan karakter tersebut, di segmen 1 dengan cara mengetik Portd =
&B00001000, selanjutnya kita mendeklarasikan bahwa karakter A yang akan di
tampilkan pada segmen tersebut dengan cara ketik Portb = &B01111001 dan
Instruksi selesai.
Tantangan 3
Pada percobaan ini kita akan menampilkan pesan “SOAL” pada 4
segmen, adapun program untuk Tantangan 3 ini adalah sebagai berikut :
Untuk mendeklarasikan mikrocontroller apa yang kita gunakan maka kita
memeberikan library $regfile = "m16def.dat" yang menyatakan bahwa
mikrokontroller yang kita pakai adalah atmega16, selanjutnya untuk
mendeklarasikan berapa besar crystal yang kita gunakan dan untuk
menyesuaikan waktu delay dengan waktu yang sebenarnya maka kita
memberikan pendeklarasian cristal dengan cara ketik $crystal = 1000000 yang
artinya kita menggunakan crystal 1MHz, selanjutnya kita membuat variable
dengan type data byte Satu, Dua, Tiga, dan Empat dengan instruksi sebagai
berikut Dim Satu As Byte , Dua As Byte , Tiga As Byte , Empat As Byte Variabel
ini lah nanti yang digunakan untuk menunjukkan penggunaan Segmen Satu,
Dua, Tiga, dan Empat. Lalu kita buat variable lagi yaitu Angka1, Angka2, Angka3,
dan Angka4 dengan instruksi sebagai berikut Dim Angka1 As Byte , Angka2 As
Byte , Angka3 As Byte, Angka4 As Byte variable ini digunakan untuk Tampilan
pada seven Segmen nanti. selanjutnya kita menkonfigurasi bahwa Port D
menjadi Output Config Portd = Output dimana Port D ini yang akan dihubungkan
dengan Segmen pada Seven Segmen. selanjutnya kita menkonfigurasi bahwa
Port B menjadi Output Config Portb = Output dimana Port B ini yang akan
dihubungkan dengan Tampilan pada Seven Segmen. Selanjutnya kita
menyamakan Port D dengan Segmen dengan instruksi Segmen Alias Portd jadi
ketika kita memanggil Segmen sama saja dengan kita memanggil PortD. Lalu
kita menyamakan Port B dengan Segmen dengan instruksi Tampilan Alias Portb
NASRULLAH YUSUF_1129040100 | 26
jadi ketika kita memanggil Tampilan sama saja dengan kita memanggil PortB.
Selanjutnya kita memberi nilai pada variable Satu dengan instruksi berikut Satu =
&H01 jadi Satu sama saja dengan &H01. Kemudian memberi nilai pada variable
Dua dengan instruksi berikut Dua = &H02 Jadi Dua sama saja dengan &H02.
Kemudian memberi nilai pada variable Tiga dengan instruksi berikut Tiga = &H04
Jadi tiga sama saja dengan &H04. Kemudian memberi nilai pada variable Empat
dengan instruksi berikut Empat = &H08 jadi Empat sama saja dengan &H08.
Selanjutnya kita memberi nilai pada variable Angka1, Angka2, Angka3, dan
Angka4 dengan instruksi berikut Angka1 = &H6DH : Angka2 = &H3FH : Angka3
= &H77H : Angka4 = &H38H dimana variable inilah nanti yang akan dihubungkan
dengan Tampilan pada Segmen, &H6DH akan menampilkan Huruf “S”, &H3FH
akan menampilkan huruf “O”, &H77H akan menampilkan Huruf “A”, dan &H38H
akan menampilkan Huruf “L”. Selanjutnya kita memasukkan perintah Do
Perintah Perulangan, program utama dimulai. Jadi ketika terjadi perulangan,
perulangannya akan dimulai dari sini. Lalu kita mengaktifkan Segmen Satu
dengan perintah Segmen = Satu karena pada instruksi sebelumnya Segmen
sudah kita samakan dengan Port D dan Satu diberi Nilai &H01 jadi Instruksi ini
sama saja dengan PortD=&H01. Selanjutnya kita memberikan tampilan “L” pada
Segmen Satu yang diaktifkan dengan instruksi Tampilan = Angka4. Selanjutnya
kita memasukkan instruksi Waitms 10 Delay 10 milisecond, artinya kita memberi
waktu jeda eksekusi antara instruksi sebelumnya Tampilan = Angka4 dengan
instruksi berikutnya. Lalu kita mengaktifkan Segmen Dua dengan perintah
Segmen = Dua karena pada instruksi sebelumnya Segmen sudah kita samakan
dengan Port D dan Dua diberi Nilai &H02 jadi Instruksi ini sama saja dengan
PortD=&H02. Selanjutnya kita memberikan tampilan “A” pada Segmen Dua yang
diaktifkan dengan instruksi Tampilan = Angka3. Selanjutnya kita memasukkan
instruksi Waitms 10 Delay 10 milisecond, artinya kita memberi waktu jeda
eksekusi antara instruksi sebelumnya Tampilan = Angka3 dengan instruksi
berikutnya. Lalu kita memasukkan instruksi Segmen = Tiga artinya kita
mengaktifkan Segmen 3. Setelah itu kita akan memberikan tampilan pada
segmen 3 dengan instruksi Tampilan = Angka2 instruksi ini akan menampilkan
Huruf “O” pada segmen 3. Lalu kita masukkan instruksi Waitms 10 artinya waktu
jeda eksekusi program antara instruksi sebelumnya dengan instruksi berikutnya
adalah 10 ms. Selanjutnya kita akan menampilkan huruf “S” pada segmen 4,
NASRULLAH YUSUF_1129040100 | 27
pertama kita aktifkan Segmen 4 dengan instruksi Segmen = Empat, setelah
segmen diaktifkan kita member tampilan pada segmen 4 dengan instruksi
Tampilan = Angka1 maka pada segmen 4 akan tampil huruf “S”. Lalu kita
masukkan instruksi Waitms 10 artinya waktu jeda eksekusi program antara
instruksi sebelumnya dengan instruksi berikutnya adalah 10 ms. Lalu kita
masukkan instruksi Loop artinya Perintah perulangan, ulangi ke awal (mulai dari
instruksi do).
NASRULLAH YUSUF_1129040100 | 28
F. KESIMPULAN
Pada percobaan ini kita membuat program Mikrokontroller untuk
menampilkan Huruf dan Angka pada Seven Segmen. Kita juga menggunakan
PushButton dan Saklar Geser untuk Inputan. Dari beberapa percobaan di atas
dibuat beberapa program mengenai seven segment. Seven segmen adalah
kumpulan dari 8 buah led yang dibentuk menyerupai angka 8 yang terdiri dari 7
segmen dan ditambah 1 segmen berupa titik (dot) untuk menampilkan
angka. Seven segmen ini tersusun atas 7 batang LED yang disusun membentuk
angka 8 yang penyusunnya menggunakan diberikan label dari ‘a’ sampai ‘g’ dan
satu lagi untuk dot point (DP). Dimana Seven Segmen ini memiliki 4 Segmen,
pada rangkaian ini Port D terhubung dengan Segmen sedangkan Port B
terhubung dengan tampilan pada Seven Segmen.
Percobaan 1
Pada percobaan 1 kita membuat program untuk menampilkan karakter A
pada Segmen 1, dimana yang pertama kita lakukan yaitu mengaktifkan segmen
1 lalu menampilkan huruf A pada Segmen 1.
Percobaan 2
Pada percobaan 2 kita membuat program untuk menampilkan angka 0, 1,
2, 3, dan 4 pada semua segen, jika salah satu Segmen diaktifkan maka Segmen
yang aktif tersebut dapat tampil angka 0, 1, 2, 3, dan 4.
Percobaan 3
Pada percobaan 3, membuat program untuk menampilkan karakter 9321
pada segmen, pada segmen 4 tampil angka 9, pada segmen 3 tampil angka 3,
pada segmen 2 tampil angka 2 dan pada segmen 1 tampil angka 1.
Percobaan 4
Pada percobaan 4, membuat program untuk menampilkan karakter angka
4321 pada seluruh seven segmen 1, 2, 3, dan 4. Pertama kita aktifkan Segmen 1
lalu memberi tampilan angka 1 pada segmen 1, lalu aktifkan Segmen 2 kemudian
memberi tampilan angka 2 pada segmen 2, kemudian aktifkan segmen 3 lalu beri
tampilan angka 3 pada segmen 3, dan terakhir aktifkan segmen 4 kemudian
memberi tampilan angka 4 pada segmen 4.
Tantangan 1
NASRULLAH YUSUF_1129040100 | 29
Pada Tantangan 1 kita membuat program untuk menampilkan karakter C
pada Segmen 3, dimana yang pertama kita lakukan yaitu mengaktifkan segmen
3 lalu menampilkan huruf C pada Segmen 3.
Tantangan 2
Pada Tantangan 2 kita membuat program untuk menampilkan karakter E
pada Segmen 4, dimana yang pertama kita lakukan yaitu mengaktifkan segmen
4 lalu menampilkan huruf E pada Segmen 4.
Tantangan 3
Pada Tantangan 3, membuat program untuk menampilkan pesan “SOAL”
pada seven segmen 1, 2, 3, dan 4. Pertama kita aktifkan Segmen 1 lalu memberi
tampilan Huruf “L” pada segmen 1, lalu aktifkan Segmen 2 kemudian memberi
tampilan Huruf “A” pada segmen 2, kemudian aktifkan segmen 3 lalu beri
tampilan Huruf “O” pada segmen 3, dan terakhir aktifkan segmen 4 kemudian
memberi tampilan Huruf “S” pada segmen 4.
NASRULLAH YUSUF_1129040100 | 30