BitmapDrawer Component

For Flowcode users to discuss projects, flowcharts, and any other issues related to Flowcode 7.

Moderator: Benj

Post Reply
EtsDriver
Valued Contributor
Valued Contributor
Posts: 438
Joined: Tue Apr 15, 2014 4:19 pm
Location: Kajaani, Finland
Contact:

BitmapDrawer Component

Post by EtsDriver »

Hi!

Has anyone tried playing around with this?

I had a try, but i could not get a one black 10pix x 10pix sized cube as 8 bit bmp to show up... Hope the help system will cover this component on some levels and show us how to deal with memory usage using this component. Does the code need some kind of specific display, or will it work with any display included in flowcode v7?

This thing seems great for simplifying some of the old HMI codes that will need some customer specific logos and appearance to be put into the software. :)

Idea for continuing development:
Make some kind of simulation dashboard only component that shows like how much ROM memory for example these BitmapDrawer's might eat from your target micro...
Ill just keep the good work up!

User avatar
LeighM
Matrix Staff
Posts: 2043
Joined: Tue Jan 17, 2012 10:07 am
Contact:

Re: BitmapDrawer Component

Post by LeighM »

It only currently supports 1-bit and 24-bit BMP files

User avatar
Benj
Matrix Staff
Posts: 14848
Joined: Mon Oct 16, 2006 10:48 am
Location: Matrix TS Ltd
Contact:

Re: BitmapDrawer Component

Post by Benj »

Hello,
Hope the help system will cover this component on some levels and show us how to deal with memory usage using this component.
Yes I have an example for this component in the wings. I'll try and get it added to the wiki next week. I'm not in the office today so don't have it to hand.
Does the code need some kind of specific display, or will it work with any display included in flowcode v7
The component will work with any of the graphical displays in Flowcode v7 and also the new MIAC range with gLCDs. Just set the property in the bitmap drawer component to point to the display you want to draw to.
how much ROM memory for example these BitmapDrawer's might eat from your target micro
The file length property shows how many bytes the image you are using will consume of your ROM memory. You can find how much ROM memory is available on your device using the Device Helper component.

Currently only 1-bit monochrome or 24-bit bitmap images are supported but I do have a plan for getting 8-bit files up and running so hopefully these will be included soon.

User avatar
Benj
Matrix Staff
Posts: 14848
Joined: Mon Oct 16, 2006 10:48 am
Location: Matrix TS Ltd
Contact:

Re: BitmapDrawer Component

Post by Benj »

Example as promised.
BitmapDrawerDemo.zip
(4.15 KiB) Downloaded 161 times

User avatar
Benj
Matrix Staff
Posts: 14848
Joined: Mon Oct 16, 2006 10:48 am
Location: Matrix TS Ltd
Contact:

Re: BitmapDrawer Component

Post by Benj »

Another example here with animated eyes - Example2.
http://www.matrixtsl.com/wikiv7/index.p ... b2297168a5

This runs well in simulation. On the EBM001 with a 16F1937 you can see the redraw. This is because 1) the 16F1937 is not at full speed (19.6MHz instead of 32MHz) and even then not all that powerful and 2) the EBM001 is 16-bits per pixel so lots of data to transfer.

On a monochrome display (1-bit per pixel) this should fly.

The ECIO40P16 is a good target for colour images to allow for large ROM spaces for your files and a very fast processor combined with easy programming. An arduino should also do a reasonable job with colour images.

16F1937 running at 32MHz = 8 million 8-bit ops per second
Arduino running at 16MHz = 16 million 8-bit ops per second
ECIO40P16 or EB091 = 70 million 16-bit ops per second

User avatar
AbhijitR
Posts: 134
Joined: Fri Nov 07, 2014 12:48 pm
Location: Pune, India
Contact:

Re: BitmapDrawer Component

Post by AbhijitR »

Hello! Ben

This is to thank you and Matrix team for making the programming task so easy (piece of cake) by introducing such innovative utilities/tools.

Thank again, cheers...

Regards
Abhi

Post Reply