This shows you the differences between two versions of the page.
pm:prj2025:eradu:mara.fichios [2025/05/23 19:29] mara.fichios [Hardware Design] |
pm:prj2025:eradu:mara.fichios [2025/05/24 16:12] (current) mara.fichios [Results] |
||
---|---|---|---|
Line 19: | Line 19: | ||
</note> | </note> | ||
+ | |||
{{:pm:prj2025:eradu:schema_bloc_pianobit2.drawio.png?300x350|}} | {{:pm:prj2025:eradu:schema_bloc_pianobit2.drawio.png?300x350|}} | ||
- | {{:pm:prj2025:eradu:lcd_version_piano.png?750x600|}} | ||
- | {{:pm:prj2025:eradu:lcd_version_piano2.png?750x600|}} | ||
- | {{:pm:prj2025:eradu:pianobit_circuit3.png?750x600|}} | ||
- | Here's a breakdown of how the key components are connected: | ||
- | * The matrix is made up of 16 buttons arranged in 4 rows and 4 columns. The row pins are set as outputs and columns as inputs with internal pull-up resistors. The Arduino reads the columns one by one by activating each row. | + | The block diagram illustrates how the core modules of the PianoBit project are functionally interconnected to achieve real-time user interaction. |
- | * The shift registers control the LEDs. The Data Pin (DS) connects to an Arduino pin (e.g., Pin 11), the Clock Pin (SH_CP) connects to Pin 13, and the Latch Pin (ST_CP) connects to Pin 12. We use daisy chaining to connect the second shift register's data input to the first shift register's output. | + | At the center of the system lies the Arduino Uno, which acts as the main control unit. It manages data flow between input and output modules, orchestrating the behavior of the piano. The button matrix connects directly to the Arduino's digital pins, and the Arduino detects exactly which key has been pressed. This key is translated into a musical note. Once a key is identified, the Arduino triggers two parallel outputs: it sends a corresponding frequency signal to the buzzer, generating an audible tone and it lights up the matching LED by transmitting data serially to the shift registers. These convert the serial input into parallel output, illuminating the specific LED assigned to the pressed key. |
- | * The buzzer is connected to a pin on the Arduino (Pin 10). The Arduino will use PWM to control the sound output, and the message is displayed on the LCD that is connected to 5V and GND, while the SDA is connected to the anaolg pin on the Arduino A4 and SCL to A5. | + | |
+ | Simultaneously, the Arduino communicates with the I2C LCD display to visually show the name of the note being played. This communication happens via the I2C protocol using only two data lines (SCL and SDA), allowing the LCD to operate without consuming multiple digital I/O pins.All modules draw power from a shared 5V supply. This architecture ensures that pressing a single key results in synchronized audio, visual, and textual feedback, making the PianoBit both interactive and educational. | ||
===== Hardware Design ===== | ===== Hardware Design ===== | ||
Line 274: | Line 273: | ||
</note> | </note> | ||
+ | |||
+ | {{:pm:prj2025:eradu:pb_1.jpg?512x382|}}\\ | ||
+ | {{:pm:prj2025:eradu:pb_2.jpg?512x382|}}\\ | ||
+ | {{:pm:prj2025:eradu:pb_3.jpg?382x512|}} {{:pm:prj2025:eradu:pb_4.jpg?382x512|}} {{:pm:prj2025:eradu:pb_5.jpg?382x512|}} {{:pm:prj2025:eradu:pb_6.jpg?382x512|}}\\ | ||
+ | |||
+ | |||
+ | |||
+ | |||
===== Conclusions ===== | ===== Conclusions ===== |