Kamis, 07 Maret 2024

LA 1



MODUL 1
PERCOBAAN 3 KONDISI 2

1. Prosedur
[Kembali]

+ siapkan komponen yang akan dirangkai
+ rangkai sesuai pada modul percobaan
+ setelah selesai masukkan program ke arduino dan sambungkan ke rangkaian
+ jalankan program pada simulasi dan cobakan sesuai dengan modul dan kondisi
+ Selesai

2. Hardware dan diagram blok [Kembali]
      a. hardware
                                          

1. seven segment


2. Arduino Uno


3. Keypad 



            b. Digram Blok





3. Rangkaian Simulasi dan Prinsip kerja [Kembali]




                                        
PRINSIP KERJA
     Saat program dijalankan dan di masukan ke arduino, maka saat kita aktifkan 2 buah switch pada DIPSW akan terbaca oleh arduino uno dan akan di proses, dimana saat yang bersamaan IC MAX7219 akan membaca hasil outputan dari arduino uno dan akan mengirimkan hasil outputan ke setiap kaki yang ada pada Matrix, hasil matrix akan keluar sesuai dengan inputan dan keinginan kita pada program arduino uno nantinya, dimana hasil akan keluar pada matrix dengan lampu berwarna merah.

4. FlowChart [Kembali]

a. Listing Program 

//Percobaan 2
#include <Keypad.h>
const byte ROWS = 4; // Four rows
const byte COLS = 4; // Fou columns
char keys[ROWS][COLS] = {
{'1','2','3','A'},
{'4','5','6','B'}, // Keypad 4x4 layout
{'7','8','9','C'},
{'*','0','#', 'D'}
};
byte rowPins[ROWS] = {A4, A3, A2, A1}; // Connect to the keypad row pins
byte colPins[COLS] = {10, 11, 12, 13}; // Connect to the keypad column pins
Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
const int segmentPins[] = {9, 8, 7, 6, 5, 4, 3, 2}; // Connect to the seven-segment display segment pins
void setup() {
for (int i = 0; i < 8; i++) {
pinMode(segmentPins[i], OUTPUT);
}

}
void loop() {
char key = keypad.getKey();
if (key) {
displayCharacter(key);
delay(1000);
clearDisplay();
}
}
void displayCharacter(char ch) {
// Define segment patterns for each digit (0-9)
// Example: Displaying '1'
// A
// F B
// G
// E C
// D
byte patterns[][9] = {
{0, 0, 0, 0, 0, 0, 1, 1}, // 0
{1, 0, 0, 1, 1, 1, 1, 1}, // 1
{0, 0, 1, 0, 0, 1, 0, 1}, // 2
{0, 0, 0, 0, 1, 1, 0, 1}, // 3
{1, 0, 0, 1, 1, 0, 0, 1}, // 4
{0, 1, 0, 0, 1, 0, 0, 1}, // 5
{0, 1, 0, 0, 0, 0, 0, 1}, // 6
{0, 0, 0, 1, 1, 1, 1, 1}, // 7
{0, 0, 0, 0, 0, 0, 0, 1}, // 8
{0, 0, 0, 0, 1, 0, 0, 1}, // 9
{0, 0, 0, 0, 0, 1, 0, 1}, //a
{1, 1, 0, 0, 0, 0, 0, 1}, //b
{0, 1, 1, 0, 0, 0, 1, 1}, //c
{1, 0, 0, 0, 0, 1, 0, 1}, //d
};
if ((ch >= '0' && ch <= '9') || (ch >= 'A' && ch <= 'D')) {
// Get the digit index (0-9) from the character
int index = (ch <= '9')? (ch - '0') : (ch - 'A' + 10);
// Write the pattern to the segment pins
for (int i = 0; i < 7; i++) {
digitalWrite(segmentPins[i], patterns[index][i]);
}
}
}
void clearDisplay() {
for (int i = 0; i < 8; i++) {
digitalWrite(segmentPins[i], HIGH);
}
}

b. Flowchart





Mulai | |--- Switch 1 Aktif? ---| | | Ya Tidak | | |--- Switch 2 Aktif? ---| |--- Switch 2 Aktif? ---| | | | | Ya Ya Ya | | | | Tampilkan "2,k,3" Tampilkan "_,k,3" Tampilkan "_,_,3" | | | | Tidak Tidak Tidak | | | | Tampilkan "2,_,3" Tampilkan "_,_,3" Tampilkan "_,_,3" Selesai





5. Kondisi [Kembali]

Kondisi  →Percobaan 3 Kondisi 2 : (DIP Switch dan LED dot matrix):  Ketika 2 switch aktif dot matrix akan menampilkan kombinasi 2,k,3

6. Video Demo [Kembali]



7. Download File [Kembali]

Download HMTL Klik disini
Download Simulasi Rangkaian klik disini
Download Video Simulasi klik disini
Download Datasheet ARDUINO UNO klik disini

Tidak ada komentar:

Posting Komentar