Pages: 1 [2]   Go Down
Author Topic: Read SD card for data  (Read 1497 times)
0 Members and 1 Guest are viewing this topic.
Melbourne, Australia
Offline Offline
God Member
*****
Karma: 8
Posts: 567
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

And does the LEDS.show then use a multiplexer to address the individual leds?
Logged

Windows serial port monitor: Tellurium | Arduino serial port debugging library: DBG | Cusom LCD char generator | Technical questions will only be answered in forum threads

Melbourne, Australia
Offline Offline
God Member
*****
Karma: 8
Posts: 567
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I'm interested in the solution you come up with.

If it were me and the timing was too tight to slice the read up inside the loop I'd be considering a second processor smiley-grin
Logged

Windows serial port monitor: Tellurium | Arduino serial port debugging library: DBG | Cusom LCD char generator | Technical questions will only be answered in forum threads

Colorado
Offline Offline
Edison Member
*
Karma: 47
Posts: 1562
Reviving dead brain cells with Arduinos.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

It's a library call.  It simply pushes the data out via SPI to the LEDs (which have their own ICs.)  That part is blazingly fast.

And with a second processor, you're still dealing with the delay in sending the data from one to the other.  It's a large chunk of data that needs to be read into memory, the full image.  I don't want to constantly be reading the SD, I just want to read the image in once, use it for whatever time frame, erase it from memory and start using the next one in line.  How I get that next image, without having a visible interrupt between them, that is what's at stake here.
Logged

Melbourne, Australia
Offline Offline
God Member
*****
Karma: 8
Posts: 567
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

with 2 processors you could

(Assuming external flash memory is faster)
1. read the next image into external flash memory using a slave processor
2. read the next image into internal memory from flash memory using the master

OR

1. read the next image into P1 while displaying the current image with P2
2. switch the display processor from P2 to P1
3. read the next image into P2 while displaying the current image with P1

Logged

Windows serial port monitor: Tellurium | Arduino serial port debugging library: DBG | Cusom LCD char generator | Technical questions will only be answered in forum threads

Colorado
Offline Offline
Edison Member
*
Karma: 47
Posts: 1562
Reviving dead brain cells with Arduinos.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

with 2 processors you could

(Assuming external flash memory is faster)
1. read the next image into external flash memory using a slave processor
2. read the next image into internal memory from flash memory using the master

OR

1. read the next image into P1 while displaying the current image with P2
2. switch the display processor from P2 to P1
3. read the next image into P2 while displaying the current image with P1

I really, really, really want to keep it down to a single processor.  smiley
Logged

Melbourne, Australia
Offline Offline
God Member
*****
Karma: 8
Posts: 567
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

with 2 processors you could

(Assuming external flash memory is faster)
1. read the next image into external flash memory using a slave processor
2. read the next image into internal memory from flash memory using the master

OR

1. read the next image into P1 while displaying the current image with P2
2. switch the display processor from P2 to P1
3. read the next image into P2 while displaying the current image with P1

I really, really, really want to keep it down to a single processor.  smiley

But but but but I wanna double the POWAAAAHHHHHHH.

So what's the plan?
Logged

Windows serial port monitor: Tellurium | Arduino serial port debugging library: DBG | Cusom LCD char generator | Technical questions will only be answered in forum threads

Colorado
Offline Offline
Edison Member
*
Karma: 47
Posts: 1562
Reviving dead brain cells with Arduinos.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I really, really, really want to keep it down to a single processor.  smiley

But but but but I wanna double the POWAAAAHHHHHHH.

So what's the plan?

At the moment, I'm not 100% sure.  There are other steps being worked on at the same time.  I tend to jump back and forth between them on any given day, or even time of day. smiley  For now the system works by storing everything in PROGMEM, within the limitations of the available SRAM.  There are several different steps I'm trying to solve here.  In the order of importance:

  • research batteries.  In order for this to work properly, I need a 5V-6V, rechargeable battery with a large mAh *
  • add USB charging circuit to the controller
  • add some sort of communication between the two batons so they are always in sync
  • read (next) dataset from SD without impeding the current, running display
  • design/finish controller
  • fit everything inside of a 3/4" inner diameter tube
  • available length to put battery and controller is between 3-3.5"
  • I forgot: eventually incorporate a way to detect rotation speed and direction to display "static" images

The LED PCBs are getting wrapped up today and sent off to the manufacturer.  LED drivers will be arriving some time next week.  I need to ficus on the whole battery debacle and the controller itself.  After that it's all software which I can do on a 2nd revision if needed.

* Battery is the biggest hurdle at this point.  With 48 pixels per side, four sides, that's a lot of mAh to content with.  At full blast, a single side will pull 48 * 3 * 18mA = 2.88A.  Ideally I'd have a battery that can provide at least twice that.  I'm not concerned about driving all four sides at full blast (11.52A) because honestly there won't ever be a moment where everything is on full blast, but I's like to account for at least twice the amount needed for one strip.
« Last Edit: June 07, 2013, 12:59:13 pm by KirAsh4 » Logged

Pages: 1 [2]   Go Up
Jump to: