Go Down

Topic: AS1130 First attempt - working (Read 23041 times) previous topic - next topic

Hexadec

Quote
hello guys, hope you still know me


How could we forget you... :P

Hello mate.  :smiley-mr-green:



Simple maths is what you need...for 36 frames you need 2 bytes for each current segment so :

per frame:
___________________
12 current segments                      
2 bytes each                                    12*2 = 24
___________________

36 frames                                       36*24 = 864
___________________

PLUS you may need 1 PWM set
1 byte for each LED                                   = 132

Bytes needed for each frame set   = 864+132 = 996

For 3 devices                                  3*996 = 2988

therefore you need less than 3KB for each 36 frame set.
Sponge.
I'm allowed to have it 'cos it's not sharp.

funkyguy4000


three AS1130's i'm going to use to show a moving font on the 11x396 screen.


Hold up! you can't do an 11x396 matrix using 3 as1130's .  Each 1130 can drive 132 leds MAX.  your 11x396 would need 33 1130's to drive that kind of matrix buddy.
Accelerate to 88 miles per hour.

Hexadec

#92
Nov 04, 2012, 03:29 pm Last Edit: Nov 04, 2012, 03:33 pm by Hexadec Reason: 1
To (almost) quote the great Bob Dylan...

"the answer my friend is blowing in the datasheet"


Have a good read.  :smiley-mr-green:


...and...I even gave you a link to an explanation of multiplexing...read THAT as well.



Now I don't mind answering questions for someone who makes the effort and has the abilities required for the task, but actually THINKING for someone, then answering the questions, then answering the same questions again is really starting to make me lose the will to live........
Sponge.
I'm allowed to have it 'cos it's not sharp.

funkyguy4000

Please binary, just read the datasheet, look at the cross-plexing diagram and then think about how digital electronics works
Accelerate to 88 miles per hour.

Hexadec

The datasheet is not as bad as some...but it IS hard to understand because it assumes quite a high level of knowledge and understanding from the reader. (quite rightly  :smiley-mr-green:)

If you read up on how a screen/frame/matrix of LEDs is scanned...all will become clear. ;)
Sponge.
I'm allowed to have it 'cos it's not sharp.

Hexadec

#95
Nov 04, 2012, 08:15 pm Last Edit: Nov 04, 2012, 08:54 pm by Hexadec Reason: 1
Are you just trying to wind me up?


Read how I2C works (hint 7 or 8 bit addresses).


OR

A better idea...YOU use address 0x60 in YOUR code and then you'll KNOW why mine is as it is.
Sponge.
I'm allowed to have it 'cos it's not sharp.

Hexadec

#96
Nov 04, 2012, 09:50 pm Last Edit: Nov 04, 2012, 09:52 pm by Hexadec Reason: 1
This is the last time I'm going to do your thinking/research!  ;)

Read this:
http://www.arduino.cc/en/Reference/Wire

Specifically:

Code: [Select]
Note

There are both 7- and 8-bit versions of I2C addresses.
7 bits identify the device, and the eighth bit determines if it's being written to or read from.
The Wire library uses 7 bit addresses throughout.
If you have a datasheet or sample code that uses 8 bit address, you'll want to drop the low bit (i.e. shift the value one bit to the right), yielding an address between 0 and 127.
Sponge.
I'm allowed to have it 'cos it's not sharp.

Hexadec

I've already got some code that may be useful to you. I wrote it for the CCS C compiler.

What chip are you going to use and which compiler?
Sponge.
I'm allowed to have it 'cos it's not sharp.

Hexadec

Oh well...I'm not familiar with either.

C is C though... :smiley-mr-green:

Sponge.
I'm allowed to have it 'cos it's not sharp.

Hexadec

The program is pretty much C if you take out the Arduino Library stuff ie. wire.write() is i2c_write() or i2cWrite() in many C compiler libraries.

BTW I would use and adapt the LAST set of code I posted... ;)
Sponge.
I'm allowed to have it 'cos it's not sharp.

Hexadec

#100
Nov 05, 2012, 03:21 pm Last Edit: Nov 05, 2012, 03:25 pm by Hexadec Reason: 1
yeah..it has better comments and is laid out better. also uses PWM (if you need it)

I have also put some subroutines at the end that you may find useful.  :smiley-mr-green:
Sponge.
I'm allowed to have it 'cos it's not sharp.

Hexadec

@Funky

I've bitten the bullet...after seeing 500 LEDs for $14 inc shipping I've ordered 2 x 4" x 10" stripboards and I going for it... ]:D

I can join the stripboards to make 8" x 10" which is big enough for a 24 x 22 matrix of LEDs (528) plus the AS1130s.

Wish me luck with all that soldering..... =(
Sponge.
I'm allowed to have it 'cos it's not sharp.

funkyguy4000

Awwww yeaaaa.
Dude, you have as much luck as I can give, but i'm not a leprechaun so it may not make a difference. 

Lemme know how it goes.  I really want to make a rain animation using these ICs and all that as my end goal
Accelerate to 88 miles per hour.

Hexadec

More good news... :smiley-mr-green: :smiley-mr-green:

I've finally had the time to hook up a logic analyser to the AS1130 and it seems that I have a problem when using the wire library to read the registers...I haven't yet figured out what it is...but over reading all the registers around the Interrupt Status Register actually gets to read it AND clear the interrupt bit....Yeeeeeeaaawwwww!

This is the final problem with this chip.... XD

Will keep you updated.
Sponge.
I'm allowed to have it 'cos it's not sharp.

funkyguy4000

So there may be an unknown internal connect?
Accelerate to 88 miles per hour.

Go Up