DREQ always HIGH when read on MP3Click module

Writing software for systems that use VLSI Solution's devices as slave codecs to a host microcontroller.
Post Reply
LukasZeaeye
User
Posts: 1
Joined: Thu 2024-11-14 16:31

DREQ always HIGH when read on MP3Click module

Post by LukasZeaeye »

Hello

I have a Polaris NB IoT board with a micro bus in which I have connected an MP3Click module with a VS1053 chip. I am trying to play an MP3 file from my board, but when I try to send commands and data to the chip DREQ always stays HIGH which makes me suspect nothing comes through. I read on viewtopic.php?f=10&t=58 that this may be because the GPIO1 pin is not pulled low, but I am unsure how to do that with the module that I have or if that is even the problem.

When I start my program I pull the reset pin high, wait 50ms and then pull it low using digital write and then perform a software reset using SPI. I then write my desired mode (0x2B2 or 0000001010010010) also via SPI. I am able to read the changes in the registers when it changes from the default 0x4800 to my mode. I then start sending the data of my MP3 file, but DREQ is never pulled low and it finishes suspiciously fast. I have also tried sending many commands in a loop to force DREQ to be pulled low but it never happens.
User avatar
pasi
VLSI Staff
Posts: 2174
Joined: Thu 2010-07-15 16:04

Re: DREQ always HIGH when read on MP3Click module

Post by pasi »

What do you read from SCI_AUDATA? If you get 0xac45, then the vs1053 probably is in real-time MIDI mode.

When I start my program I pull the reset pin high, wait 50ms and then pull it low using digital write
xRESET is active low, so there apparently is an inverter in the line of you have the high and low reversed.

Are you sure 0x2B2 (or 0x292 in the binary version) to SCI mode is correct? That would mean you are using the old SPI mode for SDI, which uses different pins than the SCI, and the SDI bit order is reversed.
Visit https://www.facebook.com/VLSISolution VLSI Solution on Facebook
Post Reply