Laporan Praktikum
Arsitektur dan Organisasi Komputer
Simulation of Raspberry Pi
Nama: Hans Andika ManaluNIM:
11423019
Program Studi: D-IV Teknologi Rekayasa
Perangkat Lunak
INSTITUT TEKNOLOGI DEL
FAKULTAS VOKASI
Laporan Praktikum Arsitektur dan Organisasi Komputer 1
Judul Praktikum
Minggu/Sesi : XI/1,2
Kode Mata Kuliah : 1031103/1041103
Nama Mata Kuliah : ARSITEKTUR DAN ORGANISASI KOMPUTER
Panduan Kuliah : Panduan ini dibuat untuk mengarahkan mahasiswa memahami mengenai
Praktikum Arsitektur dan Organisasi Komputer dalam upaya membantu
mereka melaksanakan Pembelajaran Jarak Jauh (PJJ).
Setoran : Laporan Praktikum Arsitektur dan Organisasi Komputer dikirimkan dalam
bentuk PDF dengan aturan penamaan file adalah NIM_Nama [Link]
Batas Waktu : 17 November 2023
Setoran
Tujuan : 1. Mahasiswa mampu mengetahui konsep penggunaan Raspberry Pi
2. Mahasiswa mampu mensimulasikan Raspberry Pi pada Proteus
Petunjuk
1. Laporan praktikum dikerjakan secara individu (tidak berkelompok)
2. Setiap individu diperbolehkan memberikan pertanyaan dan diskusi melalui WAG pada
sesi kedua di hari praktikum
3. Laporan praktikum akan dikirimkan pada H+3 (hari kerja) melalui e-cource dan
mengikuti format yang telah disediakan sebelumnya
4. Tidak ada toleransi keterlambatan, jika terlambat maka akan terjadi perngurangan nilai.
5. Dalam pengerjaan laporan praktikum, dilarang keras melakukan plagiasi (mencontek).
Laporan Praktikum Arsitektur dan Organisasi Komputer 2
Arsitektur dan Organisasi Komputer
a) Buatlah langkah-langkah cara menyalakan sebuah LED pada Raspberry Pi dengan
menggunakan Simulator Proteus (seperti pada video pembelajaran).
1. Tambahkanlah pheripal lampu LED baru yaitu dengan memilih seperti pada gambar di
bawah ini.
2. Kemudian pada Breakout Peripherals pilih LED Blue
Laporan Praktikum Arsitektur dan Organisasi Komputer 3
3. Selanjutnya tarik LED 1 on ke dalam flowchart.
4. Output :
Terlihat LED RED menyala
Code Program :
# !/usr/bin/env python3
# Generated by Proteus Visual Designer for Raspberry Pi
# Modules
from goto import with_goto
from stddef import * import
var
import pio import
resource
from datetime import datetime
# Peripheral Configuration Code (Do Not Edit)
#---CONFIG_BEGIN---
import cpu import
FileStore
Laporan Praktikum Arsitektur dan Organisasi Komputer 4
import VFP
import
Generic
def peripheral_setup
() : # Peripheral
Constructors
[Link]=[Link] ()
[Link]=[Link]
() [Link]=[Link] ()
pio.LED1=[Link]
(pio.GPIO20) [Link]
() [Link] (0)
# Install interrupt handlers
def peripheral_loop ()
: [Link] ()
#---CONFIG_END---
def variables_setup ()
: # Flowchart
Variables
pass
# Flowchart Routines
@with_goto
def chart_SETUP ()
: return
@with_goto
def chart_LOOP ()
: [Link] ()
return
# Main function
def main () :
# Setup
variables_setup
()
peripheral_setup
() chart_SETUP ()
# Infinite loop
while True :
peripheral_loop
() chart_LOOP ()
# Command line execution
if name == ' main ' :
main()
Laporan Praktikum Arsitektur dan Organisasi Komputer 5
b) Buatlah langkah-langkah cara menggunakan sebuah push button pada Raspberry
Pi dengan menggunakan Simulator Proteus (seperti pada video pembelajaran).
1. Tambahkanlah pheripal lampu LED baru yaitu dengan memilih seperti pada gambar
di bawah ini.
2. Kemudian pada Breakout Peripherals add LED
Laporan Praktikum Arsitektur dan Organisasi Komputer 6
3. ADD Momentary Action Push Button.
4. Langkah selanjutnya letakkan Button, LED on, dan LED off sesuai dengan gambar di
bawah ini.
Laporan Praktikum Arsitektur dan Organisasi Komputer 7
Output :
Ketika Button di klik, maka LED 1 akan menyala.
Ketika Button tidak di klik, maka LED 1 tidak akan menyala
Laporan Praktikum Arsitektur dan Organisasi Komputer 8
Code Program :
# !/usr/bin/env python3
# Generated by Proteus Visual Designer for Raspberry Pi
# Modules
from goto import
with_goto from stddef
import * import var
import pio
import
resource
from datetime import datetime
# Peripheral Configuration Code (Do Not Edit)
#---CONFIG_BEGIN---
import cpu
import
FileStore
import VFP
import
Generic
def peripheral_setup () :
# Peripheral Constructors
[Link]=[Link] ()
[Link]=[Link]
e () [Link]=[Link]
() pio.LED1=[Link]
(pio.GPIO20)
pio.BTN1=[Link]
(pio.GPIO4) [Link]
() [Link] (0)
# Install interrupt handlers
def peripheral_loop
() :
[Link] ()
#---CONFIG_END---
def variables_setup
() : # Flowchart
Variables
pass
# Flowchart Routines
@with_goto
def chart_SETUP
() : return
Laporan Praktikum Arsitektur dan Organisasi Komputer 9
[Link]
() return
# Main function
def main () :
# Setup
variables_setup
()
peripheral_setup
() chart_SETUP ()
# Infinite loop
while True :
peripheral_loop
() chart_LOOP ()
# Command line execution
if name == ' main ' :
main()
c) Buatlah flowchart untuk menjalankan 1 buah push button dan 3 buah LED.
Dimana saat push button ditekan maka 2 LED akan menyala dan saat push button
tidak ditekan maka 1 LED akan menyala.
1. Tahap pertama menambahkan 1 BUTTON beserta 3 lampu LED yaitu dengan cara
tambah pheriperal. Dalam praktikum kali ini
LED 1:GREEN
LED 2 : RED
LED 3 :
YELLOW
2. Selanjutnya, tarik Button ke dalam Flowchart. Demikian pula dengan LED 1, LED 2,
Laporan Praktikum Arsitektur dan Organisasi Komputer 10
LED 3 yang masing-masing bernilai on dan off seperti pada gambar di bawah.
Laporan Praktikum Arsitektur dan Organisasi Komputer 11
Output :
Ketika Button di klik maka LED GREEN dan LED RED menyala namun LED YELOW akan mati.
Ketika Button tidak diklik maka LED GREEN dan LED RED akan mati namun
LED YELLOW menyala.
Laporan Praktikum Arsitektur dan Organisasi Komputer 12
Code Program :
# !/usr/bin/env python3
# Generated by Proteus Visual Designer for Raspberry Pi
# Modules
from goto import
with_goto from stddef
import * import var
import pio
import
resource
from datetime import datetime
Laporan Praktikum Arsitektur dan Organisasi Komputer 13
#---CONFIG_BEGIN---
import cpu
import
FileStore
import VFP
import Generic
def peripheral_setup () :
# Peripheral Constructors
[Link]=[Link] ()
[Link]=[Link]
() [Link]=[Link] ()
pio.LED1=[Link]
(pio.GPIO20)
pio.BTN1=[Link]
(pio.GPIO4) pio.LED2=[Link]
(pio.GPIO19)
pio.LED3=[Link]
(pio.GPIO18) [Link]
() [Link] (0)
# Install interrupt handlers
def peripheral_loop ()
: [Link] ()
#---CONFIG_END---
def variables_setup ()
: # Flowchart
Variables
pass
# Flowchart Routines
@with_goto
def chart_SETUP ()
: return
@with_goto
def chart_LOOP ()
: if pio.BTN1()
:
[Link] ()
[Link] ()
[Link] ()
else :
[Link] ()
[Link] ()
[Link] ()
return
Laporan Praktikum Arsitektur dan Organisasi Komputer 14
# Main
function def
main () : #
Setup
Laporan Praktikum Arsitektur dan Organisasi Komputer 15
variables_setup
()
peripheral_setup
() chart_SETUP ()
# Infinite loop
while True :
peripheral_loop
() chart_LOOP ()
# Command line execution
if name == ' main '
: main()
d) Buatlah flowchart untuk menjalankan 3 buah push button dan 3 buah LED.
Dimana saat push button 1 ditekan maka LED 1 akan menyala, saat push button 2
ditekan maka LED 2 akan menyala, saat push button 3 ditekan maka LED 3 akan
menyala dan jika tidak ada push button yang ditekan maka semua LED akan mati.
1. Tahap pertama menambahkan 3 BUTTON beserta 3 lampu LED yaitu dengan cara
tambah pheriperal. Dalam praktikum kali ini
LED 1 :
GREEN
LED 2: RED
LED 3: YELLOW
Laporan Praktikum Arsitektur dan Organisasi Komputer 16
2. Tarik masing-masing Button ke dalam Flowchart. Tarik LED GREEN , LED RED ,
dan LED YELLOW ke dalam Flowchart sesuai dengan gambar di bawah ini.
Laporan Praktikum Arsitektur dan Organisasi Komputer 17
Output :
Sebelum mengrun flowchart sebelumnya , terlebih dahulu ganti GPIO setiap button karena 1
GPIO hanya bisa berfungsi untuk 1 sistem
Lalu jalankan sistem
Apabila Button 1 diklik maka LED 1 akan menyala, dan lampu lainnya akan mati.
Laporan Praktikum Arsitektur dan Organisasi Komputer 18
Apabila Button 2 diklik maka LED 2 akan menyala, dan lampu lainnya akan mati.
Apabila Button 3 diklik maka LED 3 akan menyala, dan lampu lainnya akan mati.
Laporan Praktikum Arsitektur dan Organisasi Komputer 19
Code Program :
# !/usr/bin/env python3
# Generated by Proteus Visual Designer for Raspberry Pi
# Modules
from goto import
with_goto from stddef
import * import var
import pio
import
resource
from datetime import datetime
# Peripheral Configuration Code (Do Not Edit)
#---CONFIG_BEGIN---
import cpu
import
FileStore
import VFP
import Generic
def peripheral_setup () :
# Peripheral Constructors
[Link]=[Link] ()
[Link]=[Link]
() [Link]=[Link] ()
pio.BTN1=[Link]
(pio.GPIO4)
pio.BTN2=[Link]
(pio.GPIO5)
pio.BTN3=[Link]
(pio.GPIO6) pio.LED1=[Link]
(pio.GPIO20)
pio.LED2=[Link]
(pio.GPIO19)
pio.LED3=[Link]
(pio.GPIO18) [Link]
() [Link] (0)
# Install interrupt handlers
def peripheral_loop ()
: [Link] ()
#---CONFIG_END---
def variables_setup ()
: # Flowchart
Variables
pass
Laporan Praktikum Arsitektur dan Organisasi Komputer 20
def chart_LOOP ()
: if pio.BTN1()
:
[Link]
() else :
[Link]
()
if pio.BTN2() :
[Link]
() else :
[Link]
()
if pio.BTN3() :
[Link]
() else :
[Link]
()
return
# Main function
def main () :
# Setup
variables_setup
()
peripheral_setup
() chart_SETUP ()
# Infinite loop
while True :
peripheral_loop
Laporan Praktikum Arsitektur dan Organisasi Komputer 21