Skip to main content

Sevent Segmen Arduino

Salah satu topik yang menarik untuk dibahas untuk malam ini , sambil datangnya waktu shubuh ( pagi ). Banyak sekali project yang dapat dibuat. Beberapa contohnya adalah jam digital dengan seven segment, stopwatch dengan 7 segment atau display jam sholat digital yah walaupun sudah banyak yang membahasnya. Untuk membuat alat yang saya sebutkan diatas,  perlu memahami dulu bagaimana cara untuk memprogram seven segment menggunakan arduino. Karena dasar dari itu semua adalah menyalakan seven segment sesuai keinginan. Banyak sekali metode yang dapat digunakan untuk memprogram 7 segment. Beda metode beda juga rangkaian yang digunakan. Salah satu metode yang sangat sederhana dan tidak membutuhkan banyak rangkaian adalah metode scanning. Apa itu metode scanning ?? Yuk lanjutkan baca sampai selesai yaa !! metode ini akan saya gunakan untuk matakuliah yang saya akan ajarkan......

Apa Itu Metode Scanning ?? Salah satu metode memprogram seven segment yang banyak digunakan adalah metode scanning. Metode ini sangat sederhana, karena dari sisi hardware tidak banyak membutuhkan komponen tambahan. Hanya membutuhkan resistor dan transistor saja agar seven segment arduino dapat menyala sesuai program. Untuk lebih jelasnya, yuk kita lihat dulu rangkaian seven segment arduino dengan metode scanning.



Rangkaian diatas merupakan rangkaian pengendali seven segment 4 digit yang belum terhubung ke mikrokontroler atau arduino. Dapat dilihat bahwa pin A, B, C, D, E, F, G dan DP dari keempat 7 segment tersebut dihubungkan secara paralel atau disatukan semuanya. Namun pin Common yaitu pin D0, D1, D2, D3 tidak disatukan dan ditambahkan transistor sebagai rangkaian switching. Rangkaian diatas menggunakan jenis seven segment common cathode (katoda). Jika Anda ingin mengganti jenis 7 segment menjadi common anoda, maka transistor yang digunakan harus Anda ganti menjadi transistor PNP.
Bagaimana Cara Memprogram Seven Segmen Arduino ??
Untuk memprogram seven segment dengan arduino, Anda harus mengubungkan dahulu rangkaian diatas dengan arduino. Hubungan rangkaiannya dapat dilihat pada gambar berikut ini


Hubungan pin dan koneksi ke rangkaian seven segment dapat diihat di sebelah kanan gambar. Di rangkaian tersebut digunakan juga potensiometer yang dihubungkan ke pin A0. Nantinya seven segment arduino akan menampilkan data ADC dari potensiometer. Oh ya untuk menampilkan angka pada 7 segment digunakan kode binari berikut ini :

  1. B11111100 // 0
  2. B01100000 // 1
  3. B11011010 // 2
  4. B11110010 // 3
  5. B01100110 // 4
  6. B10110110 // 5
  7. B00111110 // 6
  8. B11100000 // 7
  9. B11111110 // 8
  10. B11100110 // 9
Kode biner diatas nantinya akan merepresentasikan display angka 0-9 pada seven segment. Kode diatas hanya berlaku untuk 7 segment jenis common catode. Jika Anda menggunakan 7 segment common anode maka Anda hanya perlu membalik angka 0 dengan angka 1 dan angka 1 menjadi angka 0.

  1. const int numeral[10] = {
  2. //ABCDEFG /dp
  3. B11111100, // 0
  4. B01100000, // 1
  5. B11011010, // 2
  6. B11110010, // 3
  7. B01100110, // 4
  8. B10110110, // 5
  9. B00111110, // 6
  10. B11100000, // 7
  11. B11111110, // 8
  12. B11100110, // 9
  13. };
  14. // pins for decimal point and each segment
  15. // DP,G,F,E,D,C,B,A
  16. const int segmentPins[] = { 13,8,7,6,5,4,3,2 };
  17. const int nbrDigits= 4; // the number of digits in the LED display
  18. //dig 0 1 2 3
  19. const int digitPins[nbrDigits] = { 9,10,11,12 };
  20. void setup()
  21. {
  22. for(int i=0; i < 8; i++) {
  23. pinMode(segmentPins[i], OUTPUT); // set segment and DP pins to output
  24. }
  25. for(int i=0; i < nbrDigits; i++) { pinMode(digitPins[i], OUTPUT); } } void loop() { int value = analogRead(0); showNumber(value); } void showNumber( int number) { if(number == 0) { showDigit( 0, nbrDigits-1) ; // display 0 in the rightmost digit } else { // display the value corresponding to each digit // leftmost digit is 0, rightmost is one less than the number of places for( int digit = nbrDigits-1; digit >= 0; digit--) {
  26. if(number > 0) {
  27. showDigit( number % 10, digit) ;
  28. number = number / 10;
  29. }
  30. }
  31. }
  32. }
  33. // Displays given number on a 7-segment display at the given digit position
  34. void showDigit( int number, int digit)
  35. {
  36. digitalWrite( digitPins[digit], HIGH );
  37. for(int segment = 1; segment < 8; segment++) {
  38. boolean isBitSet = bitRead(numeral[number], segment);
  39. // isBitSet will be true if given bit is 1
  40. // isBitSet = ! isBitSet; // Code Option*
  41. // uncomment the above Code Option line for common anode display
  42. digitalWrite( segmentPins[segment], isBitSet);
  43. }
  44. delay(5);
  45. digitalWrite( digitPins[digit], LOW );
  46. }
 Source code diatas fungsinya untuk menampilkan data analog pada pin A0 ke 4 digit seven segment arduino. Silahkan coba sendiri rangkaian dan source code diatas.

Comments

Popular posts from this blog

74hc595 Shift Register

IC  74HC595   Arduino. penghematan pin arduino 74HC595  adalah IC ( integrated circuit , sirkuit elektronika terpadu) dari keluarga TTL seri 74 xx yang berfungsi sebagai  Shift Register . Kami menjual IC ini dalam 2 pilihan kemasan / packaging: versi DIP-16 ( Dual In-line Package  16 pin, 4 IC per paket) dan versi SMD ( Surface Mounted Device , 74HC595D, 5 IC per paket). Komponen elektronika ini memiliki register (kumpulan  flip-flop ) sepanjang 8-bit yang menerima masukan secara serial dan keluaran paralel dalam 8-pin keluaran. Data masukan disimpan pada register penyimpanan tipe-D sepanjang satu byte (8 bit D-type  storage register ). Gambar IC  74HC595   Gambar Schematic  74HC595   Di bawah ini adalah contoh rangkaiannya

Masjid Agung Banten

Selain sebagai obyek wisata ziarah, Masjid Agung Banten juga merupakan obyek wisata pendidikan dan sejarah. Dengan mengunjungi masjid ini, wisatawan dapat menyaksikan peninggalan bersejarah kerajaan Islam di Banten pada abad ke-16 M, serta melihat keunikan arsiteksturnya yang merupakan perpaduan gaya Hindu Jawa, Cina dan Eropa. Sejarah pendirian Masjid Agung Banten berawal dari instruksi Sultan Gunung Jati kepada anaknya, Hasanuddin. Konon, Sunan Gunung Jati memerintahkan kepada Hasanuddin untuk mencari sebidang tanah yang masih “suci” sebagai tempat pembangunan Kerajaan Banten. Setelah mendapat perintah ayahnya tersebut, Hasanuddin kemudian shalat dan bermunajat kepada Allah agar diberi petunjuk tentang tanah untuk mendirikan kerajaan. Konon, setelah berdoa, secara spontan air laut yang berada di sekitarnya tersibak dan menjadi daratan. Di lokasi itulah kemudian Hasanuddin mulai mendirikan Kerajaan Banten beserta sarana pendukung lainnya, seperti masjid, alun-alun, dan pasar. P