Go Down

Topic: Sure Electronics new 32x16 bi-color display: 3216 RG -Cont. from read only forum (Read 65 times) previous topic - next topic

Wagner Sartori Junior

@lonewolf what's your status?

I'm starting to write the code of my house led matrix display. If you want, we can try to do the library together. On this weekend I'm with some spare time to do this.

If you choose to use google code, you can please change the repository type of the project to HG(mercurial) instead SVN? It'll be easy to all of us work together using mercurial.

Maybe we can go to an IRC channel or something like that? Are you interested?

Wagner Sartori Junior

I made an initial library available on:
https://bitbucket.org/trunet/ht1632c

No fonts or putchar yet. Also I didn't optimize anything on this initial commits. I'll try to add it on next days.

yOPERO

Quick Question,

what code should I use in order to print a value store in an "int"?
Quote

int value1 = 0;
value1 ++;


ht1632_putchar(0, 0, 'value1', GREEN);


Thanks for your help.
Engineering is the art of
making what you want from
things you can get.

     

[SOLUCIONADO]

Wagner Sartori Junior


what code should I use in order to print a value store in an "int"?


Try this:
Quote

char convInt;
int value1 = 0;
value1 ++;
itoa(value1, contInt, 10)


ht1632_putchar(0, 0, convInt, GREEN);

nimbus2k

Man I making now big clock with that display. I want to make animations to digitals on change, example vertical flip, or sliding from up to down and also. All animations will write to SD-CARD

As I understand: at first I must create my font array file;
second is display correct item using some function to draw "bitmap".
Time and date are come from DS1307 or DS1302.
first and second parts are too difficult to me  right now.
I used examples from http://canosso.wordpress.com/
It shows some mine created pics - but it had many-many bugs(
So, can you send me in right directions? google?

Wagner Sartori Junior

Man, this will gonna be HUGE. Your main problem will be RAM memory and sketch size.

The SdFat library is BIG plus the HT1632C commands will take more than your arduino uno or a atmega328p can provide. Maybe you can use 2 using an I2C to a multi-core arduino ;).

I suggest you to get a arduino mega2560 or a atmega644p or the wiseclock duino(I don't remember the name of his atmega644p based arduino) from florinc because it has tons of more memory.

lonewolf

Some udates: http://code.google.com/p/ht1632c/

I switched to Mercurial. Let me know if someone want to be involved so I can enable him/her as "contributor".

@nimbus2k, vertical scrolling/sliding using plot is really slow... and using memcpy / bitwise shift is the most complicated thing... at now I cannot find a good idea...

About memory usage, it could be (a bit) reduced using font arrays on SDCard files instead of PROGMEM... I have to try...

beeker

@lonewolf I've been testing your code, and it works, but I had some oddities in the demo that might have been fixed in this latest update so I'll be testing it tonight.

But just in case it's not let me explain what I saw going on.

Right now I'm just trying to write orange,red,green all at the same time, and what seemed to be happening is that unless I wrote all one color the top or bottom of the display would get overwritten, even if/when I wrote it somewhat sequentially. I'm not even doing any animation at this point, so it's strange that something so basic couldn't be done. But perhaps it was the method I was using. I'm also wondering if there's a way for me to build a raster animation to frames, and then do some calculation on the frames to determine the proper values that might be necessary to create an animation.

Basically all I was trying to do was something like this:

Scr:01
Ttl:03

I will take a picture of what I'm talking about and see if that's something that works now.

Basically I'm making a very simple scoreboard for an interactive game, and I've basically maxed out my entire arduino, I've got this display working along with 3 rgb led's and 3 photo resistors and it's all working together. Its awesome! ;)

nimbus2k


Man, this will gonna be HUGE. Your main problem will be RAM memory and sketch size.

The SdFat library is BIG plus the HT1632C commands will take more than your arduino uno or a atmega328p can provide. Maybe you can use 2 using an I2C to a multi-core arduino ;).

I suggest you to get a arduino mega2560 or a atmega644p or the wiseclock duino(I don't remember the name of his atmega644p based arduino) from florinc because it has tons of more memory.

I understand. I have: Duemilanova x2, Uno x1, Nano x1, 3x original Mega2560, I buy them to resell, but I can use them in all my needs XD
In this project will be SD shield, temperature/humidity shield, ics DS1307, LCD 16x4 in 4bit mode, IR remote, light sensor - only mega can support all that hardware ]:D
So all that i connect in homemade pcb shield (will be like time shield with extra connectors for sensors, etc)
All font banks, pics and anymations arrays I would like to read and store on SD.

nimbus2k

atmega2560 is better then atmega644p/ 8kB RAm to 4KB on 644p so the winner is atmega2560)
When do we start?

canosso

@nimbus2k,
You have to change the reading method, the original method stores the bitmap in the flash with PROGMEM  and read them with pgm_read_byte_near. You read from the SD card, you should open the SD file and read them like in File|Examples|SD|ReadWrite of the Arduino software.

nimbus2k

What about bitmaps like in graphic LCD projects? Can I draw it on our LED display?

evanrich

first of all, excellent contributions and work to lonewolf and others for proceeding to improve the code required to drive these displays and make them work better.   Using what I've learned here, I've been able to successfully get 3 displays to scroll status messages.  I'm working on a project utilzing 3216 displays and parts of this code, but I'm stuck on something, maybe someone here can help? 

I've got the following in my void loop section:

Code: [Select]
void loop ()
{
  if(Serial.available() > 0) // Is there anything to read?
   {
serialIndex = 0;
while(Serial.available() > 0)
{
     char aChar = Serial.read();
     serialIn[serialIndex] = aChar; // Store the character read
     serialIndex++; // Point to the next position
     serialIn[serialIndex] = '\0'; // NULL terminate the string
}

// Now do something with the string...
scrolltextsizexcolor(0,serialIn,2,GREEN, 0,my2font,8,8,'G',0);
   }
}
 

While this works, its buggy.   if I type in say, "abcde", the "a" scrolls across immediately, followed by a few spaces, then the "bcde" follows as it should...as if I had entered "a           bcde".   I need it (at least for now) to wait till the whole string is entered, or the user hits enter. I ultimately want to be able to update  via a bluetooth keyboard or android app.  In order to do this, I need to write something that monitors the serial port and then detects when the user hits enter, and displays the message.



forgive me as C/C++ is not my thing, so I'm still learning.  I'm ultimately trying to read in a string, and upon receiving enter key (or carriage return) it dumps the text to the panels.

My first major project (looking for people who would like to help contribute) Bluetooth Sure 32x16 LED Displays!: https://github.com/evanric

florinc


nimbus2k

Very interesting!!! But there are no code, to watch how it works

Go Up