How to Decode and Display Bitmap Images Using an Arduino

preview_player
Показать описание
Files on an SD Card, hard drive or USB stick are just blocks of data. If you know how that data is stored you can decode the file to get the contents.

With an LCD screen and SD card reader attached to your Arduino you've got everything you need to display images. All you have to do is work out how to translate the image file into pixels.

Ready made libraries are the easy option. But with a bit of thought you can actually write your own image handler from scratch.

Let me show you how to take a bitmap image file, decode its structure, read in its data and then write its pixel information to your LCD panel. You'll find out how to work with byte level file handling and image manipulation. After this tutorial you'll have all the skills to read and write any file type, or even create your own.

For all the circuit diagrams and to download the code and sketches please visit my website page for this tutorial.

Videos for setting up the hardware
Рекомендации по теме
Комментарии
Автор

Finally someone who doesnt just throw in a bunch of libraries and function calls and there you have it (which isnt helpful/overwhelming for beginners or if your application is not off-the-shelve, custom neopixelmatrix in my case). Straight forward implementation and easy to follow presentation. Very helpful. Thanks alot.

wchen
Автор

Excellent - I live in the middle of nowhere in SW Australia and struggle learning C from books. Your video is a great help. I'm working on a GPS with map display and want to store the maps on an SD card. Many thanks.

billlegge
Автор

Im working on an image interpolation program at the moment and this was really helpful. God speed

josephreynolds
Автор

You are good at this. I especially enjoyed this video. I think I really learned a thing or two to use in my own code. Thank you.

IronRiviera
Автор

This is exactly what I was hoping to find, for the same reasons as you listed. Thank you!

redxtreme
Автор

Nice explanation. It might help me as well. I will try it. Love from sri lanka.❤️

thanakolamul
Автор

Fantastic video. I wish there were more content like this online!

marcosmoraes
Автор

Thanks for posting this, just got some ESP32 boards with colour touch screens, and have been having trouble getting any sketches to work.

altitude
Автор

Here we go! Been looking forward to this one :)

patrickk
Автор

This was both a very fun and a very informative video, very well explained! Great job once again!

patrickk
Автор

This info is all very useful. I wonder if you'd be willing to teach how to make a needle gauge, as you were discussing. I've looked at the kbv examples and they are a bit confusing. Thank you

IronRiviera
Автор

Thank you for sharing your wealth of knowledge with us.

I'm using a monochromatic screen (SHARP MEMORY DISPLAY) - and I'm trying to decode 1-bit bmp files with no luck. Following your guide & reducing the total byte counts / buffer doesn't seem to do the trick.

Any tips?

Much appreciated!

FebMixer
Автор

..how to make arduino recognise/read color (pixel array) in a image file at certain coordinate on that image?...used to decode timezone and country data on a globe map image file where each country is represented by a color...for auto local timekeeping GPS watches..

surenbono
Автор

Would you be able to reduce the delay in your slideshow code to display multiple images on the SD card quickly as a GIF?

TunelessBog
Автор

Hello, thank you very much for sharing your work. I was wondering if there is a way to display these images in a faster way, maybe using .raw format or something similar? Is it possible to increase the speed of the process? Thanks in advance

tomasvolpe
Автор

Thanks for this very helpful guide. It works but for some reason the image is mirrored. 🥴

robertrobert
Автор

Can I read the jpg image into bytes from arduino sd card and send it to python on laptop through bluetooth HC-06, because i want to do the image processing but i dont know how to read the jpg image in sd card in bytes or hexadecimal format

khaileng
Автор

Can i display images without the bidirectional converter

iskimaru
Автор

Егор Смирнов
3 минуты назад (изменено)
Thank you for your job Bob! Let me ask you, i i've got an ili9225 display ant it has different methods. screen.endWrite(); screen.startWrite(); i found and they the same but was protected. but there is no method screen.writeColor(screen.color565(r, g, b), 1); and screen.setAddrWindow(). Instead it has screen.drawPixel(); that hendel some functions of setAddresWindow but i cant figure it out how change and split different librares and methods. Cold you please take a lock and me it possible to solve that problem?

DepechLyot