Led Matrix: Unterschied zwischen den Versionen

aus Metalab Wiki, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Zur Navigation springenZur Suche springen
Zeile 1: Zeile 1:
For the LED Matrix we want to build on the [[CCCamp2007]] we decided to design a GNU LEDMatrix Controller/Driver setup. It will consist of two parts the FPGA board and a several driver electronics boards.
+
== New MiniITX Board ==
 +
VIA EPIA-PD
  
== Status ==
 
We have all the chips we need to build a first 8x8 driver board in the lab
 
* TC446X
 
* shifting registers
 
* power Mosfets
 
* altera fpga
 
  
== LED Matrix Driver Boards ==
+
* http://www.i2c-bus.org/  very good read on i2c specs
Our Matrix should have a resolution of 48x72 pixels. So there will be 48 rows and 72 columns. The basic building block of our ledmatrix will consist of an 8x8 pixel module (or 8x48 or 8x76 depending on the levels of grayscale steps you want).
+
* https://help.ubuntu.com/community/ViaEpiaDriHowto  kernel stuff for i2c
 
+
* http://robots.net/article/983.html article on this board
for our matrix we need 6x9 = 54 modules.
+
* <nowiki>http://www.nxp.com/#/pip/pip=[pfp=41735]|pp=[v=d,t=pfp,i=41735,fi=,ps=0][0]</nowiki> i2c specs
 
+
* http://codesink.org/eeprog.html sample userland app using i2c on the via board
So how is such  basic building block connected? The cathode (GND) pins of all LEDs in each of the 8 rows are connected to each other. Also all the annode (+) pins of all lesds in each column are connected. Sowe get 8 rows and 8 columns. each column intersects each row and the intersections are the leds. To lighten up one specific led we have to set the row the led is connected to to GND and the column to +5V (we also need a resistor to limit the current). TODO: das besser erklaeren rasteransteuerung etc.
+
* http://www.linuxjournal.com/article/7136 i2c kernel driver linux stuff
 
 
The 8 rows are each connected to a powermosfet and are driven to ground one at a time (so the matrix is 8times multiplexed).
 
For driving the mosfets we use 2x Quad-mosfetdriver which in turn are controlled by a 8bit shifting register.
 
 
 
For the columns we take almost the same components except that we don|t need the mosfets. the mosfet drivers (which consists of mosfets of course - in fact its a half bridge and so contains one pMOS and one nMOS FET) are strong enough to drive a high current led with a constant current of 0.5A and peak currents of 1.5A
 
  
=== partlist ===
+
There are three data transfer speeds for the I2C bus: standard, fast-mode, and high-speed mode. Standard is '''100 Kbps.''' Fast-mode is '''400 Kbps''', and high-speed mode supports speeds up to '''3.4 Mbps'''. All are backward compatible. The I2C bus supports 7-bit and 10-bit address space devices and devices that operate under different voltages.
* link to spreadsheet (viewing only): http://spreadsheets.google.com/pub?key=pZBTqi6Tn2l3eL8mkHINYJQ&output=html&gid=0&single=true&widget=true
 
* link to spreadsheet(for editing): http://spreadsheets.google.com/ccc?key=pZBTqi6Tn2l3eL8mkHINYJQ&hl=en
 
<websiteFrame>
 
website=http://tinyurl.com/yuo36a
 
<!-- website=http://spreadsheets.google.com/pub?key=pZBTqi6Tn2l3eL8mkHINYJQ&output=html&gid=0&single=true&widget=true -->
 
height=300
 
width=800
 
</websiteFrame>
 
  
==== chips that might be usefull for a LED matrix in general ====
+
Ohoh
* Texas Instruments
 
** [http://focus.ti.com/docs/prod/folders/print/tpic6595.html TPIC6595] 8-Bit Power shifting register (250mA continious current per channel)
 
** [http://focus.ti.com/paramsearch/docs/parametricsearch.tsp?family=analog&familyId=356&uiTemplateId=NODE_STRY_PGE_T TPIC6C595, TPIC6B595, TPIC6A596] all simmilar to the above, ALL switch to ground
 
** [http://focus.ti.com/docs/prod/folders/print/tps1120.html TPS1120] Dual P-channel Enhancemenent-Mode MOSFET
 
* On Semi
 
** [http://www.onsemi.com/PowerSolutions/parametrics.do?id=836 Zero Delay Buffers] for distributing the clocks, data and latch to all the shifting registers in the rows (they all receive the same signal)
 
** [http://www.onsemi.com/PowerSolutions/parametrics.do?id=809 MOSFETs] I think we|ll use one of thes for the rows
 
** [http://www.onsemi.com/PowerSolutions/parametrics.do?id=557 Shifting Registers] cheap :)
 
  
== FPGA LED Matrix Controller ==
+
http://archives.andrew.net.au/lm-sensors/msg29149.html
an FPGA producing the correct signals to drive the above driver module, or drive many modules in paralell :)  for each module we need 3pins
 
  
 +
100kHz and 400kHz are *maximum* frequency for standard and high-speed
 +
*I2C* busses. What your VIA bridge really is is an SMBus, so it must run
 +
at a speed between 10kHz and 100kHz if I remember correctly.
  
 
+
As a matter of fact, I already measured both my VIA and Intel SMBus chips
== New MiniITX Board ==
+
at 16kHz, exactly like you. So I am not surprised at all by what you are
VIA EPIA-PD
+
reporting.
 
 
* https://help.ubuntu.com/community/ViaEpiaDriHowto  kernel stuff for i2c
 
* http://robots.net/article/983.html article on this board
 
* <nowiki>http://www.nxp.com/#/pip/pip=[pfp=41735]|pp=[v=d,t=pfp,i=41735,fi=,ps=0][0]</nowiki> i2c specs
 
* http://codesink.org/eeprog.html sample userland app using i2c on the via board
 
  
  
 +
kernel patch '''UNTESTED''':
 +
http://archives.andrew.net.au/lm-sensors/msg29186.html
  
 
[[Kategorie:WhateverLab]]
 
[[Kategorie:WhateverLab]]
 
[[Kategorie:Projekte]]
 
[[Kategorie:Projekte]]

Version vom 27. April 2008, 19:08 Uhr

New MiniITX Board

VIA EPIA-PD


There are three data transfer speeds for the I2C bus: standard, fast-mode, and high-speed mode. Standard is 100 Kbps. Fast-mode is 400 Kbps, and high-speed mode supports speeds up to 3.4 Mbps. All are backward compatible. The I2C bus supports 7-bit and 10-bit address space devices and devices that operate under different voltages.

Ohoh

http://archives.andrew.net.au/lm-sensors/msg29149.html

100kHz and 400kHz are *maximum* frequency for standard and high-speed

  • I2C* busses. What your VIA bridge really is is an SMBus, so it must run

at a speed between 10kHz and 100kHz if I remember correctly.

As a matter of fact, I already measured both my VIA and Intel SMBus chips at 16kHz, exactly like you. So I am not surprised at all by what you are reporting.


kernel patch UNTESTED: http://archives.andrew.net.au/lm-sensors/msg29186.html