INTERRUPT

APLIKASI  INTERRUPT
Raspberry pi sering juga disingkat dengan nama Raspi, adalah komputer papan tunggal (Single Board Circuit /SBC)yang memiliki ukuran sebesar kartu kredit dengan berat hanya 45 gram. Raspberry Pi bisa digunakan untuk berbagai keperluan, seperti spreadsheet, game, bahkan bisa digunakan sebagai media player karena kemampuannya dalam memutar video high definition. Raspberry Pi dikembangkan oleh yayasan nirlaba, Rasberry Pi Foundation yang digawangi sejumlah developer dan ahli komputer dari Universitas Cambridge, Inggris. Ide dibalik komputer mungil ini diawali dari keinginan untuk mencetak generasi baru programer, pada 2006 lalu. Seperti disebutkan dalam situs resmi Raspberry Pi Foundation.

a. Bagian-bagian Raspberry Pi

Gambar1. Konstruksi Raspberry
1. Port standart komputer untuk menghubungkannya dengan piranti lain. Port ini mempunyai            kecepatan tinggi sesuai dengan versinya, bila dibandingkan dengan port serial maupun port paralel.  Contohnya digunakan untuk camera digital, hardisk eksternal, keyboard mouse usb, modem dan  peralatan tambahan komputer lainnya.
2. HDMI (High-Definition Multimedia Interface) adalah port yang sering digunakan pada berbagai perangkat audio visual dan mampu mengalirkan bandwidth hingga hitungan Gigabyte. Port HDMI bisa digunakan untuk mengkoneksikan seluruh sumber audio/video berbentuk digital seperti Blu-ray Disc Player, PC, Video game Console, telivisi digital dan smartphone.
3. Port RCA untuk Video output
4. Port audio atau soundcard adalah periferal yang terhubung ke slot ISA atau PCI pada motherboard, yang memungkinkan komputer untuk memasukkan input, memproses dan menghantarkan data berupa suara. Digunakan untuk menghasilkan output suara (speaker, headphone) dan juga input suara dengan microfon.
5. SDCARD : Port yang digunakan untuk menghubungkan memori SDCARD dengan komputer.
6. Port LAN atau lan card digunakan untuk menghubungkan komputer satu dengan lainnya yang membentuk jaringan komputer dalam suatu wilayah. Jaringan LAN biasanya hanya mencakup satu gedung rumah, misalnya jaringan LAN di kantor, hotel, bandara, warnet dll.
7. 8x GPIO UART,SPI BUS :
8. Konsumsi listrik : 750maH/ 5VDC/ mini usb charge yang di pakai di charger blackberry
b. GPIO Raspberry Pi
General-purpose input/output (GPIO) adalah pin generik pada sirkuit terpadu (chip) yang perilakunya (termasuk apakah pin itu input atau output) dapat dikontrol (diprogram) oleh pengguna saat berjalan. Memanfaatkan fitur GPIO I/O Raspberry Pi memerlukan sedikit pemrograman. Pemrograman dalam bahasa C atau python, Python dan C (menggunakan WiringPi library).  

Gambar2. GPIO Raspberry


2. Alat dan Bahan [kembali]
          Alat-alat yang dibutuhkan dalam percobaan aplikasi LED menggunakan Raspberry adalah sebagai berikut:
1. Raspberry Pi, digunakan sebagai CPU (otak) dari mini komputer
2. Bread Board, digunakan sebagai pengganti pcb
3. Kabel Jumper, sebagai koneksi ke masing masing komponen
4. LED, sebagai display untuk output dari gpio.
5. SD Card dengan OS Raspbian. Digunakan sebai memori yang terlebih dahulu diisi dengan OS      Rasbian dan bahasa pemograman Python.
6. Mouse, digunakan sebagai pointer
7. Keyboard, digunakan sebagai papan ketik
8. HDMI, sebagai kabel penghubung raspberry dengan monitor
9. LCD atau Infocus, sebagai layar monotorinG
10. Power bank, sebagai sumber yang dihubungkan ke raspberry



  1.  import RPi.GPIO as GPIO  
  2. GPIO.setmode(GPIO.BCM)  
  3.   
  4. # GPIO 23 & 17 set up as inputs, pulled up to avoid false detection.  
  5. # Both ports are wired to connect to GND on button press.  
  6. # So we'll be setting up falling edge detection for both  
  7. GPIO.setup(23, GPIO.IN, pull_up_down=GPIO.PUD_UP)  
  8. GPIO.setup(17, GPIO.IN, pull_up_down=GPIO.PUD_UP)  
  9.   
  10. # GPIO 24 set up as an input, pulled down, connected to 3V3 on button press  
  11. GPIO.setup(24, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)  
  12.   
  13. # now we'll define two threaded callback functions  
  14. # these will run in another thread when our events are detected  
  15. def my_callback(channel):  
  16.     print "falling edge detected on 17"  
  17.   
  18. def my_callback2(channel):  
  19.     print "falling edge detected on 23"  
  20.   
  21. print "Make sure you have a button connected so that when pressed"  
  22. print "it will connect GPIO port 23 (pin 16) to GND (pin 6)\n"  
  23. print "You will also need a second button connected so that when pressed"  
  24. print "it will connect GPIO port 24 (pin 18) to 3V3 (pin 1)\n"  
  25. print "You will also need a third button connected so that when pressed"  
  26. print "it will connect GPIO port 17 (pin 11) to GND (pin 14)"  
  27. raw_input("Press Enter when ready\n>")  
  28.   
  29. # when a falling edge is detected on port 17, regardless of whatever   
  30. # else is happening in the program, the function my_callback will be run  
  31. GPIO.add_event_detect(17, GPIO.FALLING, callback=my_callback, bouncetime=300)  
  32.   
  33. # when a falling edge is detected on port 23, regardless of whatever   
  34. # else is happening in the program, the function my_callback2 will be run  
  35. # 'bouncetime=300' includes the bounce control written into interrupts2a.py  
  36. GPIO.add_event_detect(23, GPIO.FALLING, callback=my_callback2, bouncetime=300)  
  37.   
  38. try:  
  39.     print "Waiting for rising edge on port 24"  
  40.     GPIO.wait_for_edge(24, GPIO.RISING)  
  41.     print "Rising edge detected on port 24. Here endeth the third lesson."  
  42.   
  43. except KeyboardInterrupt:  
  44.     GPIO.cleanup()       # clean up GPIO on CTRL+C exit  
  45. GPIO.cleanup()           # clean up GPIO on normal exit

5. Flowchart [kembali]

Tidak ada komentar:

Posting Komentar

PRAKTIKUM MIKROPROSESOR & MIKROKONTROLER Blog ini dibuat untuk memenuhi tugas sebagai prasyarat Praktikum Mikroprosesor dan Mikrok...