Electronic Piano Learning Machine is a piano project implemented in Verilog based on Xilinx Artix-7 FPGA development board, EGO1 (XC7A35T-1CSG324C).
[Read the detailed project specifications]
[Read the detailed project report]
- Free mode: play any of the 7 notes (do, re, mi, fa, so, la, and si) freely
- Autoplay mode: listen to any songs from the music library (Twinkle Twinkle Little Star, Two Tigers, and Ode to Joy)
- Learning mode: learn how to play any songs from the music library with real-time performance rating
- Save user's highest score in learning mode (support up to 3 users)
- Support octave adjustment in every mode, including high, normal, and low ocatave, hence able to output 7×3 = 21 different music notes
- Support speed adjustment in autoplay mode
- Support VGA, LED, and seven-segment display output for intuitive and convenient interaction with the FPGA board
- Liu Gan: autoplay mode and learning mode
- Hok Layheng: free mode and VGA
- Zerhouni Khal Jaouhara: octave adjustment, code specification, and report