GPIO Pin connection

Designing hardware that uses VLSI Solution's devices as slave codecs such as an external MP3 decoder chip for a host microcontroller.
Post Reply
yakuzaa
User
Posts: 15
Joined: Mon 2011-03-28 12:48

GPIO Pin connection

Post by yakuzaa » Wed 2011-03-30 7:58

Hi! I don't need any alternative GPIO functions in my device. Only MP3/OGG slave decoder needed. In this case GPIO's (GPIO0..GPIO7) must be connected to ground via 100k resistor. Can I connect these GPIO's to ground directly without 100k resistor to simplify PCB routing?

Can I also connect TEST pin directly to 3V3 without pullup resistor?

User avatar
pasi
VLSI Staff
Posts: 1690
Joined: Thu 2010-07-15 16:04

Re: GPIO Pin connection

Post by pasi » Fri 2011-04-01 21:57

yakuzaa wrote:(GPIO0..GPIO7) must be connected to ground via 100k resistor. Can I connect these GPIO's to ground directly without 100k resistor to simplify PCB routing?

Can I also connect TEST pin directly to 3V3 without pullup resistor?
You can connect xTEST directly to IOVDD.

You can also connect the GPIO's directly to ground. Personally, if space is an issue, I would connect GPIO0 and GPIO1 with pull-downs, and leave other GPIOs unconnected and after releasing reset (and when DREQ has gone high) drive the pins to 0: write 0xc017 -> WRAMADDR, then write 0x00ff -> WRAM.
Visit https://www.facebook.com/VLSISolution VLSI Solution on Facebook

yakuzaa
User
Posts: 15
Joined: Mon 2011-03-28 12:48

Re: GPIO Pin connection

Post by yakuzaa » Wed 2011-04-06 13:19

wow! Can I acsess to those pins like an regular GPIO's from master MCU? I.e. can i set GPIO0 to high and GPIO5 to low via SPI command?

User avatar
pasi
VLSI Staff
Posts: 1690
Joined: Thu 2010-07-15 16:04

Re: GPIO Pin connection

Post by pasi » Thu 2011-04-07 19:50

yakuzaa wrote:Can I acsess to those pins like an regular GPIO's from master MCU? I.e. can i set GPIO0 to high and GPIO5 to low via SPI command?
Yes, the GPIO_DDR, GPIO_IDATA, and GPIO_ODATA are accessible through WRAMADDR/WRAM. 0xc017 is DDR, 0xc018 is IDATA, 0xc019 is ODATA.

Set DDR: 0xc017 -> WRAMADDR, ddr -> WRAM
Set ODATA: 0xc019 -> WRAMADDR, odata -> WRAM
Read IDATA: 0xc018 -> WRAMADDR, read WRAM
Visit https://www.facebook.com/VLSISolution VLSI Solution on Facebook

User avatar
Panu
VLSI Staff. Currently on holiday.
Posts: 2736
Joined: Tue 2010-06-22 13:43

Re: GPIO Pin connection

Post by Panu » Fri 2011-04-08 8:58

I'd recommend that never leave any GPIO unconnected. If nothing else, it will cause power consumption problems at reset and if you don't set the pins as outputs.

But the only absolute necessary pull-downs are GPIO0, GPIO1 and absolutely necessary pull-ups are TEST and RX (direct connection to IOVDD for RX and TEST is OK for VS1003 and VS1053). These are required to make the chip function correctly. Unconnected GPIO2..7 can cause minor problems, but the chip should be able to boot.

-Panu
Info: Line In and Line Out, VS1000 User interface, Overlay howto, Latest VSIDE, MCU Howto, Youtube
Panu-Kristian Poiksalo, VLSI Solution Oy

Post Reply