Giter VIP home page Giter VIP logo

embedded_project-audio_player's Introduction

Embedded_Project-Audio_Player

An embedded system project of an audio player made using Altera Max 10 FPGA, Quartus Prime & NIOS II

System Demo

Screen Shot 2024-01-07 at 1 18 09 PM

Software & Hardware Used

  • Software
    • NIOS II
    • Quartus Prime
  • Hardware
    • Intel® Max® 10 FPGA

Design Specifications

Screen Shot 2024-01-07 at 12 39 09 PM

Must Include:

  • The audio player must support .wav format audio files (stereo audio with 16 bit audio samples). - The audio must be read from a MicroSD card
  • The audio output uses a standard headphone jack
  • The hardware must include an LCD display that indicates the track number (as enumerated on the SD card) and the track title (filename) on the first line of the LCD display. The second line of the LCD display must show the Player functions for STOPPED, PAUSED, PBACK-NORM SPD, PBACK–HALF SPD, PBACK–DBL SPD, PBACK–MONO.
  • The player must only display track titles (the filename) that are actual wav files indicated by the .wav extension.
  • The audio played must be free of distortion for all speeds - User interface must function as described

Push Button Functionality:

  • When the Player is initialized, it displays the FIRST track Title on the LCD Display and is then in the STOPPED mode. Pressing the Play/Pause button plays the currently selected track, as currently displayed on the LCD and then must automatically STOP. Pressing the Play/Pause button while a track is playing pauses the track. When paused, the Waveplayer must remain on the current track at its current position and the audio must be silent. Pressing the Play/Pause Button again will allow the WavePlayer to continue the playback from its current track position and then continue to the end of the track. At this point the Waveplayer must STOP and then set the current track position back to the beginning of the current track. This button must be de-bounced with NO s/w delays employed.

  • The Stop button stops a currently playing track and resets the track position to the beginning of the track. If a track is paused, the Stop button resets the track position to the beginning of the track. This button must be de-bounced with NO s/w delays employed.

  • The Previous button searches backwards through the tracks on the SD card, one track each time the button is pressed, and displays the current track name on the LCD if the button is pressed. Searching farther backward past the first track in the list should cause the last track to be displayed. If the button is pressed while a track is not playing (stopped or paused) then the player just moves to the start of the previous track and STOPs. If the button is pressed while a track is playing, then the playing continues but it begins at the start of the previous track. This button must be de-bounced with NO s/w delays employed.

  • The Next button searches forwards through the tracks on the SD card (one track each time the button is pressed) and displays the newly searched track name on the LCD. Searching farther forward past the last track in the list should cause the first track to be displayed If the button is pressed while a track is not playing (stopped or paused) then the player just moves to the start of the next track and STOPs. If the button is pressed while a track is playing, then the playing continues but it begins at the start of the next track. This button must be de-bounced with NO s/w delays employed.

embedded_project-audio_player's People

Contributors

max00358 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.