pull/1/head
parent
b18243f19c
commit
5fe38bfa83
@ -1 +0,0 @@ |
||||
Subproject commit 4eaff23a1d463fd916f5a983fd202e0707c12af7 |
@ -0,0 +1,154 @@ |
||||
|
||||
MCU = attiny13
|
||||
|
||||
F_CPU = 9600000
|
||||
|
||||
LFUSE = 0x7A
|
||||
HFUSE = 0xFF
|
||||
EFUSE = 0x00
|
||||
|
||||
MAIN = main.c
|
||||
|
||||
## If you've split your program into multiple files,
|
||||
## include the additional .c source (in same directory) here
|
||||
## (and include the .h files in your foo.c)
|
||||
LOCAL_SOURCE =
|
||||
|
||||
## Here you can link to one more directory (and multiple .c files)
|
||||
# EXTRA_SOURCE_DIR = ../AVR-Programming-Library/
|
||||
EXTRA_SOURCE_DIR =
|
||||
EXTRA_SOURCE_FILES =
|
||||
|
||||
|
||||
|
||||
##########------------------------------------------------------##########
|
||||
########## Programmer Defaults ##########
|
||||
########## Set up once, then forget about it ##########
|
||||
########## (Can override. See bottom of file.) ##########
|
||||
##########------------------------------------------------------##########
|
||||
|
||||
PROGRAMMER_TYPE = dragon_isp
|
||||
PROGRAMMER_ARGS =
|
||||
|
||||
|
||||
##########------------------------------------------------------##########
|
||||
########## Makefile Magic! ##########
|
||||
########## Summary: ##########
|
||||
########## We want a .hex file ##########
|
||||
########## Compile source files into .elf ##########
|
||||
########## Convert .elf file into .hex ##########
|
||||
########## You shouldn't need to edit below. ##########
|
||||
##########------------------------------------------------------##########
|
||||
|
||||
## Defined programs / locations
|
||||
CC = avr-gcc
|
||||
OBJCOPY = avr-objcopy
|
||||
OBJDUMP = avr-objdump
|
||||
AVRSIZE = avr-size
|
||||
AVRDUDE = sudo avrdude
|
||||
|
||||
## Compilation options, type man avr-gcc if you're curious.
|
||||
CFLAGS = -std=gnu99 -mmcu=$(MCU) -DF_CPU=$(F_CPU)UL -Os -I. -I$(EXTRA_SOURCE_DIR)
|
||||
CFLAGS += -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums
|
||||
CFLAGS += -Wall -Wstrict-prototypes
|
||||
CFLAGS += -g2 -ggdb
|
||||
CFLAGS += -ffunction-sections -fdata-sections -Wl,--gc-sections -Wl,--relax
|
||||
CFLAGS += -std=gnu99
|
||||
# CFLAGS += -lm
|
||||
## CFLAGS += -Wl,-u,vfprintf -lprintf_flt -lm ## for floating-point printf
|
||||
## CFLAGS += -Wl,-u,vfprintf -lprintf_min ## for smaller printf
|
||||
|
||||
## Lump target and extra source files together
|
||||
TARGET = $(strip $(basename $(MAIN)))
|
||||
SRC = $(TARGET).c
|
||||
EXTRA_SOURCE = $(addprefix $(EXTRA_SOURCE_DIR), $(EXTRA_SOURCE_FILES))
|
||||
SRC += $(EXTRA_SOURCE)
|
||||
SRC += $(LOCAL_SOURCE)
|
||||
|
||||
## List of all header files
|
||||
HEADERS = $(SRC:.c=.h)
|
||||
|
||||
## For every .c file, compile an .o object file
|
||||
OBJ = $(SRC:.c=.o)
|
||||
|
||||
## Generic Makefile targets. (Only .hex file is necessary)
|
||||
all: $(TARGET).hex size |
||||
|
||||
%.hex: %.elf |
||||
$(OBJCOPY) -R .eeprom -O ihex $< $@
|
||||
|
||||
%.elf: $(SRC) |
||||
$(CC) $(CFLAGS) $(SRC) --output $@
|
||||
|
||||
%.eeprom: %.elf |
||||
$(OBJCOPY) -j .eeprom --change-section-lma .eeprom=0 -O ihex $< $@
|
||||
|
||||
debug: |
||||
@echo
|
||||
@echo "Source files:" $(SRC)
|
||||
@echo "MCU, F_CPU, BAUD:" $(MCU), $(F_CPU), $(BAUD)
|
||||
@echo
|
||||
|
||||
# Optionally create listing file from .elf
|
||||
# This creates approximate assembly-language equivalent of your code.
|
||||
# Useful for debugging time-sensitive bits,
|
||||
# or making sure the compiler does what you want.
|
||||
disassemble: $(TARGET).lst |
||||
|
||||
dis: disassemble |
||||
|
||||
eeprom: $(TARGET).eeprom |
||||
|
||||
%.lst: %.elf |
||||
$(OBJDUMP) -S $< > $@
|
||||
|
||||
# Optionally show how big the resulting program is
|
||||
size: $(TARGET).elf |
||||
$(AVRSIZE) -C --mcu=$(MCU) $(TARGET).elf
|
||||
|
||||
clean: |
||||
rm -f $(TARGET).elf $(TARGET).hex $(TARGET).obj \
|
||||
$(TARGET).o $(TARGET).d $(TARGET).eep $(TARGET).lst \
|
||||
$(TARGET).lss $(TARGET).sym $(TARGET).map $(TARGET)~ \
|
||||
$(TARGET).eeprom
|
||||
|
||||
squeaky_clean: |
||||
rm -f *.elf *.hex *.obj *.o *.d *.eep *.lst *.lss *.sym *.map *~
|
||||
|
||||
|
||||
##########------------------------------------------------------##########
|
||||
########## Programmer-specific details ##########
|
||||
########## Flashing code to AVR using avrdude ##########
|
||||
##########------------------------------------------------------##########
|
||||
|
||||
flash: $(TARGET).hex |
||||
$(AVRDUDE) -c $(PROGRAMMER_TYPE) -p $(MCU) $(PROGRAMMER_ARGS) -U flash:w:$<
|
||||
|
||||
flash_eeprom: $(TARGET).eeprom |
||||
$(AVRDUDE) -c $(PROGRAMMER_TYPE) -p $(MCU) $(PROGRAMMER_ARGS) -U eeprom:w:$<
|
||||
|
||||
terminal: |
||||
$(AVRDUDE) -c $(PROGRAMMER_TYPE) -p $(MCU) $(PROGRAMMER_ARGS) -nt
|
||||
|
||||
|
||||
flash_dragon_isp: PROGRAMMER_TYPE = dragon_isp |
||||
flash_dragon_isp: PROGRAMMER_ARGS = |
||||
flash_dragon_isp: flash |
||||
|
||||
|
||||
##########------------------------------------------------------##########
|
||||
########## Fuse settings and suitable defaults ##########
|
||||
##########------------------------------------------------------##########
|
||||
|
||||
## Generic
|
||||
FUSE_STRING = -U lfuse:w:$(LFUSE):m -U hfuse:w:$(HFUSE):m -U efuse:w:$(EFUSE):m
|
||||
|
||||
fuses: |
||||
$(AVRDUDE) -c $(PROGRAMMER_TYPE) -p $(MCU) \
|
||||
$(PROGRAMMER_ARGS) $(FUSE_STRING)
|
||||
show_fuses: |
||||
$(AVRDUDE) -c $(PROGRAMMER_TYPE) -p $(MCU) $(PROGRAMMER_ARGS) -nv
|
||||
|
||||
## Called with no extra definitions, sets to defaults
|
||||
set_default_fuses: FUSE_STRING = -U lfuse:w:$(LFUSE):m -U hfuse:w:$(HFUSE):m -U efuse:w:$(EFUSE):m |
||||
set_default_fuses: fuses |
@ -0,0 +1,47 @@ |
||||
How to generate image header file |
||||
================================= |
||||
|
||||
(intended for Linux - dunno how it works in Windoze) |
||||
|
||||
|
||||
1. Draw image in Gimp, with height a multiple of 8 (8, 16, 32... - how many |
||||
LEDs you have) |
||||
|
||||
2. Set collor mode to indexed (black & white) - and make sure WHITE is where |
||||
you want your leds to light up, black where you want dark. |
||||
|
||||
3. Export as C header file (eg. snowflake.h) |
||||
|
||||
|
||||
Now use the getbytes.py script to transform it: |
||||
|
||||
$ python3 getbytes.py snowflake.h |
||||
|
||||
#define ROWS 2 |
||||
#define COLS 15 |
||||
|
||||
const uint8_t image[COLS][ROWS] PROGMEM = { |
||||
{ 0b00000001, 0b11000000 }, // ███ |
||||
{ 0b00010000, 0b10000100 }, // █ █ █ |
||||
{ 0b00111000, 0b10001110 }, // ███ █ ███ |
||||
{ 0b00011101, 0b11001100 }, // ███ ███ ██ |
||||
{ 0b00001100, 0b10011000 }, // ██ █ ██ |
||||
{ 0b00000010, 0b10100000 }, // █ █ █ |
||||
{ 0b01001001, 0b11001001 }, // █ █ ███ █ █ |
||||
{ 0b11111111, 0b11111111 }, //████████████████ |
||||
{ 0b01001001, 0b11001001 }, // █ █ ███ █ █ |
||||
{ 0b00000010, 0b10100000 }, // █ █ █ |
||||
{ 0b00001100, 0b10010000 }, // ██ █ █ |
||||
{ 0b00011001, 0b11011100 }, // ██ ███ ███ |
||||
{ 0b00111000, 0b10001110 }, // ███ █ ███ |
||||
{ 0b00010000, 0b10000100 }, // █ █ █ |
||||
{ 0b00000001, 0b11000000 }, // ███ |
||||
}; |
||||
|
||||
That will show you the transformed header file. |
||||
|
||||
To store it: |
||||
|
||||
$ python3 getbytes.py snowflake.h > ../image_snowflake.h |
||||
|
||||
Now, in your main.c file, just include it (remove the old image import). |
@ -0,0 +1,321 @@ |
||||
/* GIMP header image file format (INDEXED): /home/ondra/devel/elektro/avr/projects/c/led-display/image/aliensflip16.h */ |
||||
|
||||
static unsigned int width = 42; |
||||
static unsigned int height = 16; |
||||
|
||||
/* Call this macro repeatedly. After each use, the pixel data can be extracted */ |
||||
|
||||
#define HEADER_PIXEL(data,pixel) {\ |
||||
pixel[0] = header_data_cmap[(unsigned char)data[0]][0]; \
|
||||
pixel[1] = header_data_cmap[(unsigned char)data[0]][1]; \
|
||||
pixel[2] = header_data_cmap[(unsigned char)data[0]][2]; \
|
||||
data ++; } |
||||
|
||||
static char header_data_cmap[256][3] = { |
||||
{ 0, 0, 0}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255} |
||||
}; |
||||
static char header_data[] = { |
||||
0,0,1,0,0,0,1,0,0,0,0,0,1,0,0,0, |
||||
0,0,1,0,0,0,0,1,0,0,0,0,0,1,0,0, |
||||
0,0,0,1,0,0,0,1,0,0, |
||||
0,0,0,1,0,1,0,0,0,0,0,0,0,1,0,0, |
||||
0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0, |
||||
0,0,0,0,1,0,1,0,0,0, |
||||
0,0,1,1,1,1,1,0,0,0,0,0,1,1,1,1, |
||||
1,1,1,0,0,0,0,1,1,1,1,1,1,1,0,0, |
||||
0,0,0,1,1,1,1,1,0,0, |
||||
0,1,0,0,1,0,0,1,0,0,0,1,1,0,1,1, |
||||
1,0,1,1,0,0,1,1,0,1,1,1,0,1,1,0, |
||||
0,0,1,0,0,1,0,0,1,0, |
||||
1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
0,1,1,1,1,1,1,1,1,1, |
||||
1,0,1,1,1,1,1,0,1,0,1,0,1,1,1,1, |
||||
1,1,1,0,1,1,0,1,1,1,1,1,1,1,0,1, |
||||
0,1,0,1,1,1,1,1,0,1, |
||||
1,0,1,0,0,0,1,0,1,0,1,0,1,0,0,0, |
||||
0,0,1,0,1,1,0,1,0,0,0,0,0,1,0,1, |
||||
0,1,0,1,0,0,0,1,0,1, |
||||
0,0,0,1,0,1,0,0,0,0,0,0,0,1,1,0, |
||||
1,1,0,0,0,0,0,0,1,1,0,1,1,0,0,0, |
||||
0,0,0,0,1,0,1,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1, |
||||
1,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,1,0,1,0,0,0,0,0,0,0,1,1,1, |
||||
1,1,0,0,0,0,0,0,1,1,1,1,1,0,0,0, |
||||
0,0,0,0,1,0,1,0,0,0, |
||||
0,0,1,1,1,1,1,0,0,0,0,0,1,0,0,1, |
||||
0,0,1,0,0,0,0,1,0,0,1,0,0,1,0,0, |
||||
0,0,0,1,1,1,1,1,0,0, |
||||
0,0,1,0,1,0,1,0,0,0,0,0,1,1,1,1, |
||||
1,1,1,0,0,0,0,1,1,1,1,1,1,1,0,0, |
||||
0,0,0,1,0,1,0,1,0,0, |
||||
0,1,1,1,1,1,1,1,0,0,0,0,0,1,1,1, |
||||
1,1,0,0,0,0,0,0,1,1,1,1,1,0,0,0, |
||||
0,0,1,1,1,1,1,1,1,0, |
||||
1,1,0,1,0,1,0,1,1,0,0,0,1,0,1,0, |
||||
1,0,1,0,0,0,0,1,0,1,0,1,0,1,0,0, |
||||
0,1,1,0,1,0,1,0,1,1, |
||||
0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0, |
||||
0,0,0,1,0,0,1,0,0,0,0,0,0,0,1,0, |
||||
0,0,0,0,0,0,0,0,0,0 |
||||
}; |
@ -0,0 +1,321 @@ |
||||
/* GIMP header image file format (INDEXED): /home/ondra/devel/elektro/avr/projects/c/globus/image/butt.h */ |
||||
|
||||
static unsigned int width = 46; |
||||
static unsigned int height = 16; |
||||
|
||||
/* Call this macro repeatedly. After each use, the pixel data can be extracted */ |
||||
|
||||
#define HEADER_PIXEL(data,pixel) {\ |
||||
pixel[0] = header_data_cmap[(unsigned char)data[0]][0]; \
|
||||
pixel[1] = header_data_cmap[(unsigned char)data[0]][1]; \
|
||||
pixel[2] = header_data_cmap[(unsigned char)data[0]][2]; \
|
||||
data ++; } |
||||
|
||||
static char header_data_cmap[256][3] = { |
||||
{ 0, 0, 0}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255} |
||||
}; |
||||
static char header_data[] = { |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,1,1,1,1, |
||||
0,0,1,1,1,1,0,1,1,1,1,1,1,1,1,1, |
||||
1,1,0,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1, |
||||
0,0,1,1,1,1,0,1,1,1,1,1,1,1,1,1, |
||||
1,1,0,1,1,1,1,1,1,1,1,1,1,1, |
||||
0,1,1,1,0,0,1,1,1,0,0,0,0,1,1,1, |
||||
0,0,1,1,1,0,0,1,1,0,0,1,1,1,0,0, |
||||
1,1,0,1,1,0,0,1,1,1,0,0,1,1, |
||||
0,1,1,1,0,0,1,1,1,0,0,0,0,1,1,1, |
||||
0,0,1,1,1,0,0,1,1,0,0,1,1,1,0,0, |
||||
1,1,0,1,1,0,0,1,1,1,0,0,1,1, |
||||
0,1,1,1,1,1,1,1,0,0,0,0,0,1,1,1, |
||||
0,0,1,1,1,0,0,1,1,0,0,1,1,1,0,0, |
||||
1,1,0,1,1,0,0,1,1,1,0,0,1,1, |
||||
0,1,1,1,1,1,1,1,1,0,0,0,0,1,1,1, |
||||
0,0,1,1,1,0,0,0,0,0,0,1,1,1,0,0, |
||||
0,0,0,0,0,0,0,1,1,1,0,0,0,0, |
||||
0,1,1,1,0,0,0,1,1,1,0,0,0,1,1,1, |
||||
0,0,1,1,1,0,0,0,0,0,0,1,1,1,0,0, |
||||
0,0,0,0,0,0,0,1,1,1,0,0,0,0, |
||||
0,1,1,1,0,0,0,1,1,1,0,0,0,1,1,1, |
||||
0,0,1,1,1,0,0,0,0,0,0,1,1,1,0,0, |
||||
0,0,0,0,0,0,0,1,1,1,0,0,0,0, |
||||
0,1,1,1,0,0,0,1,1,1,0,0,0,1,1,1, |
||||
0,0,1,1,1,0,0,0,0,0,0,1,1,1,0,0, |
||||
0,0,0,0,0,0,0,1,1,1,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,1,0,0,0,0,1,1,1, |
||||
1,1,1,1,1,0,0,0,0,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,1,1,1,1,1,1,1,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1 |
||||
}; |
@ -0,0 +1,401 @@ |
||||
/* GIMP header image file format (INDEXED): /home/ondra/devel/avr/projects/c/led-display/image/checker3264.h */ |
||||
|
||||
static unsigned int width = 64; |
||||
static unsigned int height = 32; |
||||
|
||||
/* Call this macro repeatedly. After each use, the pixel data can be extracted */ |
||||
|
||||
#define HEADER_PIXEL(data,pixel) {\ |
||||
pixel[0] = header_data_cmap[(unsigned char)data[0]][0]; \
|
||||
pixel[1] = header_data_cmap[(unsigned char)data[0]][1]; \
|
||||
pixel[2] = header_data_cmap[(unsigned char)data[0]][2]; \
|
||||
data ++; } |
||||
|
||||
static char header_data_cmap[256][3] = { |
||||
{ 0, 0, 0}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255} |
||||
}; |
||||
static char header_data[] = { |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0 |
||||
}; |
Binary file not shown.
@ -0,0 +1,401 @@ |
||||
/* GIMP header image file format (INDEXED): /home/ondra/devel/avr/projects/c/led-display/image/checker3264numbers.h */ |
||||
|
||||
static unsigned int width = 64; |
||||
static unsigned int height = 32; |
||||
|
||||
/* Call this macro repeatedly. After each use, the pixel data can be extracted */ |
||||
|
||||
#define HEADER_PIXEL(data,pixel) {\ |
||||
pixel[0] = header_data_cmap[(unsigned char)data[0]][0]; \
|
||||
pixel[1] = header_data_cmap[(unsigned char)data[0]][1]; \
|
||||
pixel[2] = header_data_cmap[(unsigned char)data[0]][2]; \
|
||||
data ++; } |
||||
|
||||
static char header_data_cmap[256][3] = { |
||||
{ 0, 0, 0}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255} |
||||
}; |
||||
static char header_data[] = { |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,1,0,0,0,0,1,1,0,0,1,1,1,1, |
||||
0,0,1,1,0,0,0,0,1,0,1,1,1,1,1,1, |
||||
0,0,1,1,1,1,0,0,1,1,0,0,0,1,1,1, |
||||
0,1,1,1,1,0,0,0,1,1,0,0,0,0,1,1, |
||||
0,0,1,1,0,0,0,0,1,0,1,1,0,1,1,1, |
||||
0,1,0,0,1,0,0,0,1,0,1,0,1,1,1,1, |
||||
0,0,1,0,0,0,0,0,1,0,1,1,1,1,1,1, |
||||
0,1,0,0,1,0,0,0,1,1,0,1,1,0,1,1, |
||||
0,0,0,1,0,0,0,0,1,1,1,1,0,1,1,1, |
||||
0,0,0,1,1,0,0,0,1,0,0,0,0,1,1,1, |
||||
0,0,1,1,1,1,0,0,1,0,1,1,1,1,1,1, |
||||
0,0,0,0,1,0,0,0,1,0,0,0,0,0,1,1, |
||||
0,0,0,1,0,0,0,0,1,1,1,0,1,1,1,1, |
||||
0,0,0,0,1,0,0,0,1,1,1,0,1,1,1,1, |
||||
0,0,0,0,0,1,0,0,1,0,0,0,0,1,1,1, |
||||
0,0,1,1,1,1,1,0,1,0,1,1,1,0,1,1, |
||||
0,0,0,1,0,0,0,0,1,1,0,1,1,1,1,1, |
||||
0,1,0,0,1,0,0,0,1,1,1,0,1,1,1,1, |
||||
0,1,0,0,0,1,0,0,1,0,1,1,0,1,1,1, |
||||
0,0,0,0,1,0,0,0,1,0,1,1,1,0,1,1, |
||||
0,0,1,1,1,0,0,0,1,0,0,0,0,1,1,1, |
||||
0,1,1,1,0,0,0,0,1,1,1,0,1,1,1,1, |
||||
0,0,1,1,1,0,0,0,1,0,0,0,0,1,1,1, |
||||
0,0,0,0,1,0,0,0,1,0,0,0,0,0,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,1,1,1,0, |
||||
1,0,1,0,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,0, |
||||
1,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,1,1,1,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0 |
||||
}; |
Binary file not shown.
@ -0,0 +1,73 @@ |
||||
#!/bin/env python3 |
||||
|
||||
import sys |
||||
import re |
||||
|
||||
file = open(sys.argv[1], 'r') |
||||
|
||||
src = file.read() |
||||
|
||||
matches = re.search(r'static unsigned int width = (\d*);', src) |
||||
width = int(matches.groups(1)[0]) |
||||
|
||||
matches = re.search(r'static unsigned int height = (\d*);', src) |
||||
height = int(matches.groups(1)[0]) |
||||
|
||||
|
||||
matches = re.search(r'static char header_data_cmap\[\d+\]\[\d+\] = \{\n\s*(\{.*?\}),\s*(\{.*?\})', src, flags=re.S) |
||||
s = matches.groups(1)[0] |
||||
t = matches.groups(1)[1] |
||||
|
||||
if s == '{255,255,255}' and t == '{ 0, 0, 0}': |
||||
inverted=True |
||||
elif s == '{ 0, 0, 0}' and t == '{255,255,255}': |
||||
inverted=False |
||||
else: |
||||
raise Exception('Wrong colors') |
||||
|
||||
|
||||
|
||||
|
||||
matches = re.search(r'static char header_data\[\] = \{(.*?)\};', src, flags=re.S) |
||||
s = matches.groups(1)[0] |
||||
|
||||
# clean up - leave only numbers |
||||
s = re.sub(r'[\s,]', '', s).strip() |
||||
|
||||
s = [s[x:x+width] for x in range(0,width*height,width)] |
||||
|
||||
cols = [''.join(i) for i in zip(*s)] |
||||
|
||||
bc = 0 |
||||
|
||||
print(""" |
||||
#define ROWS {r} |
||||
#define COLS {c} |
||||
|
||||
const uint8_t image[COLS][ROWS] PROGMEM = {{""".format(r=int(height/8), c=width)) |
||||
|
||||
for c in cols: |
||||
|
||||
# convert colors based on pallete |
||||
if inverted: |
||||
c=c.translate({ |
||||
ord('0'): ord('1'), |
||||
ord('1'): ord('0') |
||||
}) |
||||
|
||||
|
||||
bytz = ['0b{}'.format(c[x:x+8]) for x in range(0,len(c),8)] |
||||
|
||||
print('\t{ ', end="") |
||||
|
||||
print(', '.join(bytz), end="") |
||||
|
||||
print(' }, //', end="") |
||||
|
||||
print(c.translate({ |
||||
ord('0'): ord(' '), |
||||
ord('1'): ord('█') |
||||
})) |
||||
|
||||
print('};\n') |
||||
|
@ -0,0 +1,401 @@ |
||||
/* GIMP header image file format (INDEXED): /home/ondra/devel/elektro/avr/projects/c/led-display/image/globus.h */ |
||||
|
||||
static unsigned int width = 58; |
||||
static unsigned int height = 32; |
||||
|
||||
/* Call this macro repeatedly. After each use, the pixel data can be extracted */ |
||||
|
||||
#define HEADER_PIXEL(data,pixel) {\ |
||||
pixel[0] = header_data_cmap[(unsigned char)data[0]][0]; \
|
||||
pixel[1] = header_data_cmap[(unsigned char)data[0]][1]; \
|
||||
pixel[2] = header_data_cmap[(unsigned char)data[0]][2]; \
|
||||
data ++; } |
||||
|
||||
static char header_data_cmap[256][3] = { |
||||
{ 0, 0, 0}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255} |
||||
}; |
||||
static char header_data[] = { |
||||
0,0,0,0,0,0,0,0,1,0,0,1,1,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,1,0,0,0,0,1,1,1,1,0,0,0, |
||||
0,1,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,1,1,1,0,1,0,1,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,1,0,0,0,0,1,1,1,1,1,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,1,0,0,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,1,0,0,0,0,0,0,0, |
||||
0,1,1,1,1,0,1,1,1,1,1,0,1,1,1,1, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1, |
||||
0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,0,1,0,0,0, |
||||
0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1, |
||||
1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,1,0, |
||||
0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1, |
||||
1,0,0,0,0,0,0,1,1,0,0,0,0,1,1,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,0,0, |
||||
0,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1, |
||||
1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,0,0, |
||||
0,1,1,0,1,1,1,1,1,1,1,1,0,0,1,1, |
||||
1,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,1,0,1,1,0,0,0,0, |
||||
0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,0,0,0,0,0,0,0,0,1,0,0,0,1,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,0,0,0,1,0,0,0,0,0, |
||||
0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1, |
||||
1,1,0,0,0,0,0,0,0,0,0,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1, |
||||
1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0, |
||||
0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,1,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0, |
||||
0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0, |
||||
0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0, |
||||
1,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,0, |
||||
0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0, |
||||
0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,0,1,1,1,1,1,1,1,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1, |
||||
1,1,1,1,0,0,1,1,0,0,1,1,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1, |
||||
1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1, |
||||
1,1,1,0,0,0,0,1,0,0,0,1,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1, |
||||
1,1,1,0,0,0,0,0,0,1,1,1,1,1,1,1, |
||||
1,1,1,0,0,0,0,0,0,0,0,0,1,1,0,0, |
||||
0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1, |
||||
1,1,1,1,1,0,0,0,0,0,0,0,0,1,1,1, |
||||
1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0, |
||||
0,1,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1, |
||||
1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1, |
||||
1,1,0,0,0,0,0,0,0,0,0,0,0,1,1,0, |
||||
0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, |
||||
1,1,1,1,1,0,0,0,0,0,0,0,0,1,1,1, |
||||
1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1, |
||||
1,1,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,0,0,0,0,0,0,0,0,1,1,1, |
||||
1,0,1,0,0,0,0,0,0,0,0,0,0,1,1,1, |
||||
1,1,1,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1, |
||||
1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1, |
||||
1,1,1,1,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
1,1,1,0,0,0,0,0,0,0,0,0,0,0,1,1, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1, |
||||
1,1,1,1,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,1,1,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, |
||||
1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1, |
||||
1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0 |
||||
}; |
Binary file not shown.
@ -0,0 +1,289 @@ |
||||
/* GIMP header image file format (INDEXED): /home/ondra/devel/elektro/avr/projects/c/globus/image/logo16.h */ |
||||
|
||||
static unsigned int width = 16; |
||||
static unsigned int height = 16; |
||||
|
||||
/* Call this macro repeatedly. After each use, the pixel data can be extracted */ |
||||
|
||||
#define HEADER_PIXEL(data,pixel) {\ |
||||
pixel[0] = header_data_cmap[(unsigned char)data[0]][0]; \
|
||||
pixel[1] = header_data_cmap[(unsigned char)data[0]][1]; \
|
||||
pixel[2] = header_data_cmap[(unsigned char)data[0]][2]; \
|
||||
data ++; } |
||||
|
||||
static char header_data_cmap[256][3] = { |
||||
{255,255,255}, |
||||
{ 0, 0, 0}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255} |
||||
}; |
||||
static char header_data[] = { |
||||
1,1,1,1,1,1,0,0,0,0,1,1,1,1,1,1, |
||||
1,1,1,0,1,1,0,1,1,0,1,1,0,1,1,1, |
||||
1,1,0,1,0,1,0,1,1,0,1,0,1,0,1,1, |
||||
1,0,1,1,1,0,0,1,1,0,0,1,1,1,0,1, |
||||
1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0, |
||||
1,1,1,0,1,1,1,1,1,0,1,1,0,0,0,1, |
||||
0,0,0,0,1,1,1,1,0,0,1,0,0,0,1,0, |
||||
0,1,1,1,1,1,1,0,0,0,0,0,0,1,1,0, |
||||
0,1,1,0,1,1,0,0,0,0,0,0,1,1,1,0, |
||||
0,0,1,0,1,0,0,1,0,0,0,1,0,0,0,0, |
||||
1,1,1,0,0,0,1,1,0,0,1,1,0,1,1,1, |
||||
1,1,0,0,0,1,1,1,1,1,1,1,1,0,1,1, |
||||
1,1,0,0,0,0,0,1,1,0,0,1,1,1,0,1, |
||||
1,0,0,0,0,1,1,1,1,0,1,0,1,0,1,1, |
||||
1,0,1,1,1,1,0,1,1,0,1,1,0,1,1,1, |
||||
1,1,1,1,1,1,0,0,0,0,1,1,1,1,1,1 |
||||
}; |
Binary file not shown.
@ -0,0 +1,337 @@ |
||||
/* GIMP header image file format (INDEXED): /home/ondra/devel/elektro/avr/projects/c/globus/image/logo32.h */ |
||||
|
||||
static unsigned int width = 32; |
||||
static unsigned int height = 32; |
||||
|
||||
/* Call this macro repeatedly. After each use, the pixel data can be extracted */ |
||||
|
||||
#define HEADER_PIXEL(data,pixel) {\ |
||||
pixel[0] = header_data_cmap[(unsigned char)data[0]][0]; \
|
||||
pixel[1] = header_data_cmap[(unsigned char)data[0]][1]; \
|
||||
pixel[2] = header_data_cmap[(unsigned char)data[0]][2]; \
|
||||
data ++; } |
||||
|
||||
static char header_data_cmap[256][3] = { |
||||
{ 0, 0, 0}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255} |
||||
}; |
||||
static char header_data[] = { |
||||
0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1, |
||||
1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0, |
||||
0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1, |
||||
1,1,1,1,1,1,0,0,1,1,0,0,0,0,0,0, |
||||
0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,0, |
||||
0,1,1,0,0,1,1,1,1,1,1,0,0,0,0,0, |
||||
0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,0, |
||||
0,1,0,0,0,0,0,1,1,0,1,1,0,0,0,0, |
||||
0,0,0,1,1,0,0,0,1,1,0,0,0,1,0,0, |
||||
1,0,0,0,0,0,1,1,0,0,0,1,1,0,0,0, |
||||
0,0,1,1,0,0,0,1,1,1,1,0,0,1,0,0, |
||||
1,0,0,0,0,1,1,1,1,0,0,0,1,1,0,0, |
||||
0,1,1,1,0,0,1,1,0,0,1,1,1,1,0,1, |
||||
0,0,0,0,0,1,0,0,1,0,0,0,1,1,0,0, |
||||
0,1,1,0,0,0,0,1,0,0,0,0,0,0,1,0, |
||||
0,0,0,0,1,0,0,0,1,0,0,0,0,1,1,0, |
||||
0,1,1,0,0,0,0,1,1,0,0,0,0,0,1,0, |
||||
0,0,0,1,0,0,0,1,1,0,0,0,0,1,1,0, |
||||
0,1,0,0,0,0,0,0,1,0,0,0,0,1,0,0, |
||||
0,0,1,0,0,0,1,1,0,0,0,0,0,0,1,0, |
||||
1,1,0,0,0,0,0,0,1,1,0,0,1,1,0,0, |
||||
0,1,0,0,0,0,1,0,0,0,0,0,0,0,1,1, |
||||
1,1,0,0,0,1,1,1,1,1,1,1,1,0,0,1, |
||||
1,1,1,1,0,0,1,1,1,1,1,0,0,0,1,1, |
||||
1,0,0,0,1,1,0,0,0,0,1,1,0,0,1,0, |
||||
0,0,0,1,1,1,1,1,0,0,0,1,0,0,0,1, |
||||
1,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0, |
||||
0,0,0,0,0,1,0,0,0,0,0,1,1,0,0,1, |
||||
1,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0, |
||||
0,1,0,0,1,0,0,0,0,0,0,1,1,0,0,1, |
||||
1,1,0,0,1,1,1,1,0,0,0,1,1,1,1,1, |
||||
1,0,0,1,0,0,0,1,1,1,1,1,0,0,0,1, |
||||
1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,1, |
||||
0,0,1,1,0,0,1,1,1,0,0,0,0,0,1,1, |
||||
1,1,0,0,0,0,0,0,1,0,0,0,0,0,1,0, |
||||
0,0,1,0,0,0,1,1,0,0,0,0,0,0,1,1, |
||||
0,1,0,0,0,0,0,0,1,0,0,0,1,0,1,0, |
||||
0,1,1,0,0,0,0,1,0,0,0,0,0,0,1,0, |
||||
0,1,1,0,0,0,0,1,1,0,0,1,0,1,0,0, |
||||
1,1,1,0,0,0,0,1,1,0,0,0,0,1,1,0, |
||||
0,1,1,0,0,0,1,1,0,0,0,1,0,0,0,0, |
||||
1,0,1,1,1,0,0,0,1,0,0,0,0,1,1,0, |
||||
0,0,1,1,0,0,1,1,0,0,1,1,0,0,0,0, |
||||
0,0,1,0,1,1,0,0,1,0,0,0,1,1,0,0, |
||||
0,0,1,1,0,0,0,1,1,1,1,1,0,0,0,0, |
||||
1,1,1,0,0,1,1,1,1,0,0,0,1,1,0,0, |
||||
0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,1, |
||||
1,0,1,0,0,0,0,0,0,0,0,1,1,0,0,0, |
||||
0,0,0,0,1,1,0,0,0,0,0,1,0,1,1,0, |
||||
0,0,1,0,0,0,0,0,0,0,1,1,0,0,0,0, |
||||
0,0,0,0,0,1,1,0,0,0,0,1,1,1,0,1, |
||||
1,1,0,0,0,0,0,0,0,1,1,0,0,0,0,0, |
||||
0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0, |
||||
0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1, |
||||
1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1, |
||||
1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0 |
||||
}; |
Binary file not shown.
@ -0,0 +1,289 @@ |
||||
/* GIMP header image file format (INDEXED): /home/ondra/devel/elektro/avr/projects/c/globus/image/piig.h */ |
||||
|
||||
static unsigned int width = 16; |
||||
static unsigned int height = 16; |
||||
|
||||
/* Call this macro repeatedly. After each use, the pixel data can be extracted */ |
||||
|
||||
#define HEADER_PIXEL(data,pixel) {\ |
||||
pixel[0] = header_data_cmap[(unsigned char)data[0]][0]; \
|
||||
pixel[1] = header_data_cmap[(unsigned char)data[0]][1]; \
|
||||
pixel[2] = header_data_cmap[(unsigned char)data[0]][2]; \
|
||||
data ++; } |
||||
|
||||
static char header_data_cmap[256][3] = { |
||||
{ 0, 0, 0}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255} |
||||
}; |
||||
static char header_data[] = { |
||||
1,1,1,0,0,0,0,1,0,1,0,0,0,0,0,0, |
||||
1,0,1,0,0,0,1,0,1,0,1,0,0,0,0,0, |
||||
1,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0, |
||||
0,0,1,1,1,1,0,0,0,0,0,1,0,0,0,0, |
||||
0,0,1,1,0,0,0,1,1,0,0,0,1,1,1,0, |
||||
0,0,1,0,0,0,0,1,1,0,0,1,0,0,0,1, |
||||
0,0,1,0,0,0,0,0,0,0,0,1,0,1,0,1, |
||||
0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1, |
||||
0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1, |
||||
0,0,1,0,0,0,0,0,0,0,0,1,0,1,0,1, |
||||
0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1, |
||||
0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0, |
||||
0,0,1,0,1,0,1,0,0,1,0,0,0,0,0,0, |
||||
0,0,1,0,1,0,1,0,0,1,0,0,0,0,0,0, |
||||
0,1,1,0,1,0,1,1,0,1,1,0,0,0,0,0 |
||||
}; |
@ -0,0 +1,31 @@ |
||||
/* GIMP header image file format (RGB): /home/ondra/devel/elektro/avr/projects/c/globus/image/pig16.h */ |
||||
|
||||
static unsigned int width = 16; |
||||
static unsigned int height = 16; |
||||
|
||||
/* Call this macro repeatedly. After each use, the pixel data can be extracted */ |
||||
|
||||
#define HEADER_PIXEL(data,pixel) {\ |
||||
pixel[0] = (((data[0] - 33) << 2) | ((data[1] - 33) >> 4)); \
|
||||
pixel[1] = ((((data[1] - 33) & 0xF) << 4) | ((data[2] - 33) >> 2)); \
|
||||
pixel[2] = ((((data[2] - 33) & 0x3) << 6) | ((data[3] - 33))); \
|
||||
data += 4; \
|
||||
} |
||||
static char *header_data = |
||||
"````````````!!!!!!!!!!!!!!!!````!!!!````!!!!!!!!!!!!!!!!!!!!!!!!" |
||||
"````!!!!````!!!!!!!!!!!!````!!!!````!!!!````!!!!!!!!!!!!!!!!!!!!" |
||||
"````!!!!!!!!!!!!!!!!!!!!````!!!!````!!!!````!!!!!!!!!!!!!!!!!!!!" |
||||
"````````````````````````````````````````````````!!!!!!!!!!!!!!!!" |
||||
"!!!!!!!!````````````````!!!!!!!!!!!!!!!!!!!!````!!!!!!!!!!!!!!!!" |
||||
"!!!!!!!!````````!!!!!!!!!!!!````````!!!!!!!!!!!!````````````!!!!" |
||||
"!!!!!!!!````!!!!!!!!!!!!!!!!````````!!!!!!!!````!!!!!!!!!!!!````" |
||||
"!!!!!!!!````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````!!!!````!!!!````" |
||||
"!!!!!!!!````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````!!!!!!!!!!!!````" |
||||
"!!!!!!!!````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````!!!!!!!!!!!!````" |
||||
"!!!!!!!!````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````!!!!````!!!!````" |
||||
"!!!!!!!!````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````!!!!!!!!!!!!````" |
||||
"!!!!!!!!````````````````````````````````````````````````````!!!!" |
||||
"!!!!!!!!````!!!!````!!!!````!!!!!!!!````!!!!!!!!!!!!!!!!!!!!!!!!" |
||||
"!!!!!!!!````!!!!````!!!!````!!!!!!!!````!!!!!!!!!!!!!!!!!!!!!!!!" |
||||
"!!!!````````!!!!````!!!!````````!!!!````````!!!!!!!!!!!!!!!!!!!!" |
||||
""; |
Binary file not shown.
@ -0,0 +1,289 @@ |
||||
/* GIMP header image file format (INDEXED): /home/ondra/devel/elektro/avr/projects/c/globus/image/snowflake.h */ |
||||
|
||||
static unsigned int width = 15; |
||||
static unsigned int height = 16; |
||||
|
||||
/* Call this macro repeatedly. After each use, the pixel data can be extracted */ |
||||
|
||||
#define HEADER_PIXEL(data,pixel) {\ |
||||
pixel[0] = header_data_cmap[(unsigned char)data[0]][0]; \
|
||||
pixel[1] = header_data_cmap[(unsigned char)data[0]][1]; \
|
||||
pixel[2] = header_data_cmap[(unsigned char)data[0]][2]; \
|
||||
data ++; } |
||||
|
||||
static char header_data_cmap[256][3] = { |
||||
{ 0, 0, 0}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255} |
||||
}; |
||||
static char header_data[] = { |
||||
0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,1,1,1,0,0,0,0,0,0, |
||||
0,0,1,0,0,0,0,1,0,0,0,0,1,0,0, |
||||
0,1,1,1,0,0,0,1,0,0,0,1,1,1,0, |
||||
0,0,1,1,1,0,1,1,1,0,1,1,1,0,0, |
||||
0,0,0,1,1,0,0,1,0,0,1,0,0,0,0, |
||||
0,0,0,0,0,1,0,1,0,1,0,0,0,0,0, |
||||
1,0,0,1,0,0,1,1,1,0,0,1,0,0,1, |
||||
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, |
||||
1,0,0,1,0,0,1,1,1,0,0,1,0,0,1, |
||||
0,0,0,0,0,1,0,1,0,1,0,0,0,0,0, |
||||
0,0,0,0,1,0,0,1,0,0,1,1,0,0,0, |
||||
0,0,1,1,1,0,1,1,1,0,0,1,1,0,0, |
||||
0,1,1,1,0,0,0,1,0,0,0,1,1,1,0, |
||||
0,0,1,0,0,0,0,1,0,0,0,0,1,0,0, |
||||
0,0,0,0,0,0,1,1,1,0,0,0,0,0,0 |
||||
}; |
Binary file not shown.
Binary file not shown.
@ -0,0 +1,289 @@ |
||||
/* GIMP header image file format (INDEXED): /home/ondra/devel/avr/projects/c/led-display/image/test_narrow.h */ |
||||
|
||||
static unsigned int width = 4; |
||||
static unsigned int height = 16; |
||||
|
||||
/* Call this macro repeatedly. After each use, the pixel data can be extracted */ |
||||
|
||||
#define HEADER_PIXEL(data,pixel) {\ |
||||
pixel[0] = header_data_cmap[(unsigned char)data[0]][0]; \
|
||||
pixel[1] = header_data_cmap[(unsigned char)data[0]][1]; \
|
||||
pixel[2] = header_data_cmap[(unsigned char)data[0]][2]; \
|
||||
data ++; } |
||||
|
||||
static char header_data_cmap[256][3] = { |
||||
{ 0, 0, 0}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255} |
||||
}; |
||||
static char header_data[] = { |
||||
1,1,0,0, |
||||
0,0,0,0, |
||||
1,1,0,0, |
||||
0,0,0,0, |
||||
1,1,0,0, |
||||
0,0,0,0, |
||||
1,1,1,0, |
||||
0,1,1,0, |
||||
0,1,1,0, |
||||
0,1,1,1, |
||||
0,0,0,0, |
||||
0,0,1,1, |
||||
0,0,0,0, |
||||
0,0,1,1, |
||||
0,0,0,0, |
||||
0,0,1,1 |
||||
}; |
Binary file not shown.
@ -0,0 +1,305 @@ |
||||
/* GIMP header image file format (INDEXED): /home/ondra/devel/avr/projects/c/led-display/image/test_wide.h */ |
||||
|
||||
static unsigned int width = 32; |
||||
static unsigned int height = 16; |
||||
|
||||
/* Call this macro repeatedly. After each use, the pixel data can be extracted */ |
||||
|
||||
#define HEADER_PIXEL(data,pixel) {\ |
||||
pixel[0] = header_data_cmap[(unsigned char)data[0]][0]; \
|
||||
pixel[1] = header_data_cmap[(unsigned char)data[0]][1]; \
|
||||
pixel[2] = header_data_cmap[(unsigned char)data[0]][2]; \
|
||||
data ++; } |
||||
|
||||
static char header_data_cmap[256][3] = { |
||||
{ 0, 0, 0}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255}, |
||||
{255,255,255} |
||||
}; |
||||
static char header_data[] = { |
||||
1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0, |
||||
1,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,1,0,1,0,0,0,0,1,0,0,1, |
||||
1,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0, |
||||
0,1,0,1,0,1,0,1,0,1,1,0,1,0,0,0, |
||||
1,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0, |
||||
0,1,0,1,0,1,0,1,0,1,1,0,1,0,0,0, |
||||
1,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0, |
||||
0,0,0,0,0,1,0,1,0,0,0,0,1,0,0,1, |
||||
1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1, |
||||
0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0, |
||||
1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1, |
||||
1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1, |
||||
1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,1, |
||||
1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0, |
||||
1,0,1,1,1,1,1,0,1,0,0,0,0,0,0,0, |
||||
0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0, |
||||
1,0,1,0,0,0,1,0,1,0,1,0,0,0,0,0, |
||||
0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,1, |
||||
1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0, |
||||
0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0, |
||||
1,0,1,0,0,0,1,0,1,0,1,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0, |
||||
1,0,1,1,1,1,1,0,1,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1, |
||||
1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, |
||||
0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1 |
||||
}; |
Binary file not shown.
@ -0,0 +1,49 @@ |
||||
|
||||
#define ROWS 2 |
||||
#define COLS 42 |
||||
|
||||
const uint8_t image[COLS][ROWS] PROGMEM = { |
||||
{ 0b00001110, 0b00000010 }, // ███ █
|
||||
{ 0b00011000, 0b00000110 }, // ██ ██
|
||||
{ 0b10101110, 0b00011100 }, //█ █ ███ ███
|
||||
{ 0b01101101, 0b00110110 }, // ██ ██ █ ██ ██
|
||||
{ 0b00111100, 0b00011100 }, // ████ ███
|
||||
{ 0b01101101, 0b00110110 }, // ██ ██ █ ██ ██
|
||||
{ 0b10101110, 0b00011100 }, //█ █ ███ ███
|
||||
{ 0b00011000, 0b00000110 }, // ██ ██
|
||||
{ 0b00001110, 0b00000010 }, // ███ █
|
||||
{ 0b00000000, 0b00000000 }, //
|
||||
{ 0b00001110, 0b00000000 }, // ███
|
||||
{ 0b00011000, 0b00000001 }, // ██ █
|
||||
{ 0b10111110, 0b00011010 }, //█ █████ ██ █
|
||||
{ 0b01101101, 0b00101100 }, // ██ ██ █ █ ██
|
||||
{ 0b00111101, 0b01101110 }, // ████ █ ██ ███
|
||||
{ 0b00111100, 0b01111100 }, // ████ █████
|
||||
{ 0b00111101, 0b01101110 }, // ████ █ ██ ███
|
||||
{ 0b01101101, 0b00101100 }, // ██ ██ █ █ ██
|
||||
{ 0b10111110, 0b00011010 }, //█ █████ ██ █
|
||||
{ 0b00011000, 0b00000001 }, // ██ █
|
||||
{ 0b00001110, 0b00000000 }, // ███
|
||||
{ 0b00001110, 0b00000000 }, // ███
|
||||
{ 0b00011000, 0b00000001 }, // ██ █
|
||||
{ 0b10111110, 0b00011010 }, //█ █████ ██ █
|
||||
{ 0b01101101, 0b00101100 }, // ██ ██ █ █ ██
|
||||
{ 0b00111101, 0b01101110 }, // ████ █ ██ ███
|
||||
{ 0b00111100, 0b01111100 }, // ████ █████
|
||||
{ 0b00111101, 0b01101110 }, // ████ █ ██ ███
|
||||
{ 0b01101101, 0b00101100 }, // ██ ██ █ █ ██
|
||||
{ 0b10111110, 0b00011010 }, //█ █████ ██ █
|
||||
{ 0b00011000, 0b00000001 }, // ██ █
|
||||
{ 0b00001110, 0b00000000 }, // ███
|
||||
{ 0b00000000, 0b00000000 }, //
|
||||
{ 0b00001110, 0b00000010 }, // ███ █
|
||||
{ 0b00011000, 0b00000110 }, // ██ ██
|
||||
{ 0b10101110, 0b00011100 }, //█ █ ███ ███
|
||||
{ 0b01101101, 0b00110110 }, // ██ ██ █ ██ ██
|
||||
{ 0b00111100, 0b00011100 }, // ████ ███
|
||||
{ 0b01101101, 0b00110110 }, // ██ ██ █ ██ ██
|
||||
{ 0b10101110, 0b00011100 }, //█ █ ███ ███
|
||||
{ 0b00011000, 0b00000110 }, // ██ ██
|
||||
{ 0b00001110, 0b00000010 }, // ███ █
|
||||
}; |
||||
|
@ -0,0 +1,71 @@ |
||||
|
||||
#define ROWS 4 |
||||
#define COLS 64 |
||||
|
||||
const uint8_t image[COLS][ROWS] PROGMEM = { |
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
}; |
||||
|
@ -0,0 +1,71 @@ |
||||
|
||||
#define ROWS 4 |
||||
#define COLS 64 |
||||
|
||||
const uint8_t image[COLS][ROWS] PROGMEM = { |
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11110001 }, // ████████ ████ █
|
||||
{ 0b00100010, 0b11111111, 0b00000000, 0b11110101 }, // █ █ ████████ ████ █ █
|
||||
{ 0b01111110, 0b11111111, 0b00000000, 0b11110001 }, // ██████ ████████ ████ █
|
||||
{ 0b00000010, 0b11111111, 0b00000000, 0b11111111 }, // █ ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11011101, 0b00000000, 0b11111111, 0b00000000 }, //██ ███ █ ████████
|
||||
{ 0b10111001, 0b00000000, 0b11111111, 0b00000000 }, //█ ███ █ ████████
|
||||
{ 0b10110101, 0b00000000, 0b11111111, 0b00000000 }, //█ ██ █ █ ████████
|
||||
{ 0b11001101, 0b00000000, 0b11111111, 0b00000000 }, //██ ██ █ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00100110, 0b11111111, 0b00000000, 0b11111111 }, // █ ██ ████████ ████████
|
||||
{ 0b01000010, 0b11111111, 0b00000000, 0b11111111 }, // █ █ ████████ ████████
|
||||
{ 0b01010010, 0b11111111, 0b00000000, 0b11111111 }, // █ █ █ ████████ ████████
|
||||
{ 0b00111100, 0b11111111, 0b00000000, 0b11111111 }, // ████ ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b10001111, 0b00000000, 0b11111111, 0b00000000 }, //█ ████ ████████
|
||||
{ 0b11101111, 0b00000000, 0b11111111, 0b00000000 }, //███ ████ ████████
|
||||
{ 0b11000001, 0b00000000, 0b11111111, 0b00000000 }, //██ █ ████████
|
||||
{ 0b11101111, 0b00000000, 0b11111111, 0b00000000 }, //███ ████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000100, 0b11111111, 0b00000000, 0b11111111 }, // █ ████████ ████████
|
||||
{ 0b01110010, 0b11111111, 0b00000000, 0b11111111 }, // ███ █ ████████ ████████
|
||||
{ 0b01010010, 0b11111111, 0b00000000, 0b11111111 }, // █ █ █ ████████ ████████
|
||||
{ 0b01010010, 0b11111111, 0b00000000, 0b11111111 }, // █ █ █ ████████ ████████
|
||||
{ 0b01011100, 0b11111111, 0b00000000, 0b11111111 }, // █ ███ ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11000001, 0b00000000, 0b11111111, 0b00000000 }, //██ █ ████████
|
||||
{ 0b10110101, 0b00000000, 0b11111111, 0b00000000 }, //█ ██ █ █ ████████
|
||||
{ 0b10110101, 0b00000000, 0b11111111, 0b00000000 }, //█ ██ █ █ ████████
|
||||
{ 0b10110001, 0b00000000, 0b11111111, 0b00000000 }, //█ ██ █ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b01100000, 0b11111111, 0b00000000, 0b11111111 }, // ██ ████████ ████████
|
||||
{ 0b01001000, 0b11111111, 0b00000000, 0b11111111 }, // █ █ ████████ ████████
|
||||
{ 0b01001000, 0b11111111, 0b00000000, 0b11111111 }, // █ █ ████████ ████████
|
||||
{ 0b01111110, 0b11111111, 0b00000000, 0b11111111 }, // ██████ ████████ ████████
|
||||
{ 0b00001000, 0b11111111, 0b00000000, 0b11111111 }, // █ ████████ ████████
|
||||
{ 0b00001000, 0b11111111, 0b00000000, 0b11111111 }, // █ ████████ ████████
|
||||
{ 0b00000000, 0b11111111, 0b00000000, 0b11111111 }, // ████████ ████████
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
{ 0b11100001, 0b00000000, 0b11111111, 0b00000000 }, //███ █ ████████
|
||||
{ 0b10001101, 0b00000000, 0b11111111, 0b00000000 }, //█ ██ █ ████████
|
||||
{ 0b10101101, 0b00000000, 0b11111111, 0b00000000 }, //█ █ ██ █ ████████
|
||||
{ 0b10101101, 0b00000000, 0b11111111, 0b00001110 }, //█ █ ██ █ ████████ ███
|
||||
{ 0b10000001, 0b00000000, 0b11111111, 0b00001010 }, //█ █ ████████ █ █
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00001110 }, //████████ ████████ ███
|
||||
{ 0b11111111, 0b00000000, 0b11111111, 0b00000000 }, //████████ ████████
|
||||
}; |
||||
|
@ -0,0 +1,65 @@ |
||||
|
||||
#define ROWS 4 |
||||
#define COLS 58 |
||||
|
||||
const uint8_t image[COLS][ROWS] PROGMEM = { |
||||
{ 0b00000000, 0b00000000, 0b00000000, 0b00000000 }, //
|
||||
{ 0b00001111, 0b10000000, 0b00000000, 0b00000000 }, // █████
|
||||
{ 0b00001111, 0b10000000, 0b00000000, 0b00000000 }, // █████
|
||||
{ 0b00001111, 0b00000000, 0b00000000, 0b00000000 }, // ████
|
||||
{ 0b00001111, 0b10000000, 0b00000000, 0b00000000 }, // █████
|
||||
{ 0b00000111, 0b10000000, 0b00000000, 0b00000000 }, // ████
|
||||
{ 0b00001111, 0b11100000, 0b00000000, 0b00000000 }, // ███████
|
||||
{ 0b00111111, 0b11111000, 0b00000000, 0b00000000 }, // ███████████
|
||||
{ 0b11111111, 0b11111110, 0b00000000, 0b00000000 }, //███████████████
|
||||
{ 0b01111111, 0b11111111, 0b00000000, 0b00000000 }, // ███████████████
|
||||
{ 0b01011111, 0b11111111, 0b10000000, 0b00000000 }, // █ ██████████████
|
||||
{ 0b11110111, 0b11111111, 0b11000000, 0b00000000 }, //████ █████████████
|
||||
{ 0b11011111, 0b01111110, 0b01000000, 0b00000000 }, //██ █████ ██████ █
|
||||
{ 0b01111110, 0b01111110, 0b00100000, 0b00000000 }, // ██████ ██████ █
|
||||
{ 0b00011001, 0b11111111, 0b00011100, 0b00000000 }, // ██ █████████ ███
|
||||
{ 0b00001111, 0b11111000, 0b00111110, 0b00011000 }, // █████████ █████ ██
|
||||
{ 0b00000111, 0b11111000, 0b00111111, 0b11111110 }, // ████████ █████████████
|
||||
{ 0b00000000, 0b01110000, 0b00111111, 0b11100000 }, // ███ █████████
|
||||
{ 0b00000000, 0b00100000, 0b00011111, 0b11000000 }, // █ ███████
|
||||
{ 0b00000000, 0b00000000, 0b00001111, 0b10000000 }, // █████
|
||||
{ 0b00000000, 0b00000000, 0b00001111, 0b00000000 }, // ████
|
||||
{ 0b00000000, 0b00000000, 0b00000100, 0b00000000 }, // █
|
||||
{ 0b00000000, 0b00000000, 0b00000000, 0b00000000 }, //
|
||||
{ 0b00000010, 0b00000000, 0b00000000, 0b00000000 }, // █
|
||||
{ 0b00000010, 0b00000000, 0b11000000, 0b00000000 }, // █ ██
|
||||
{ 0b00000000, 0b00000001, 0b11110000, 0b00000000 }, // █████
|
||||
{ 0b00000000, 0b01101111, 0b11110000, 0b00000000 }, // ██ ████████
|
||||
{ 0b00000000, 0b00111111, 0b11110000, 0b00000000 }, // ██████████
|
||||
{ 0b00000001, 0b10111011, 0b11110000, 0b00000000 }, // ██ ███ ██████
|
||||
{ 0b00000111, 0b10111001, 0b11111111, 0b10000000 }, // ████ ███ ██████████
|
||||
{ 0b00001111, 0b01111011, 0b11111111, 0b11000000 }, // ████ ████ ████████████
|
||||
{ 0b00001111, 0b11111101, 0b11111111, 0b11000000 }, // ██████████ ███████████
|
||||
{ 0b00000111, 0b11111101, 0b11111111, 0b10000000 }, // █████████ ██████████
|
||||
{ 0b00000111, 0b11111111, 0b11111110, 0b00000000 }, // ██████████████████
|
||||
{ 0b00000111, 0b11111111, 0b11110011, 0b00000000 }, // ███████████████ ██
|
||||
{ 0b00110111, 0b11111111, 0b11000000, 0b00000000 }, // ██ █████████████
|
||||
{ 0b01001111, 0b11111111, 0b10000000, 0b00000000 }, // █ █████████████
|
||||
{ 0b00001111, 0b11111111, 0b00000000, 0b00000000 }, // ████████████
|
||||
{ 0b00011111, 0b11111111, 0b11000000, 0b00000000 }, // ███████████████
|
||||
{ 0b00011111, 0b11111111, 0b11100000, 0b00000000 }, // ████████████████
|
||||
{ 0b00111111, 0b11111111, 0b10000000, 0b00000000 }, // ███████████████
|
||||
{ 0b01111111, 0b11111111, 0b10000000, 0b00000000 }, // ████████████████
|
||||
{ 0b01111111, 0b11111111, 0b11000000, 0b00000000 }, // █████████████████
|
||||
{ 0b11111111, 0b11111111, 0b11101000, 0b00000000 }, //███████████████████ █
|
||||
{ 0b01111111, 0b11111111, 0b10011000, 0b00000000 }, // ████████████████ ██
|
||||
{ 0b00011111, 0b11111111, 0b00011101, 0b11000000 }, // █████████████ ███ ███
|
||||
{ 0b00011111, 0b11111111, 0b00000101, 0b11000000 }, // █████████████ █ ███
|
||||
{ 0b00011111, 0b11111100, 0b00000011, 0b11000000 }, // ███████████ ████
|
||||
{ 0b00011111, 0b11111110, 0b00000011, 0b11000000 }, // ████████████ ████
|
||||
{ 0b01011111, 0b10110100, 0b00001011, 0b11100000 }, // █ ██████ ██ █ █ █████
|
||||
{ 0b00011111, 0b10000000, 0b00000001, 0b11100000 }, // ██████ ████
|
||||
{ 0b00001111, 0b00000000, 0b00000000, 0b11000000 }, // ████ ██
|
||||
{ 0b00001111, 0b11000000, 0b00000000, 0b00000000 }, // ██████
|
||||
{ 0b00000111, 0b10000000, 0b00000000, 0b00000000 }, // ████
|
||||
{ 0b00001111, 0b00000000, 0b00000000, 0b00000000 }, // ████
|
||||
{ 0b00000111, 0b00000000, 0b00000000, 0b00000000 }, // ███
|
||||
{ 0b00000100, 0b00000000, 0b00000000, 0b00000000 }, // █
|
||||
{ 0b00000000, 0b00000000, 0b00000000, 0b00000000 }, //
|
||||
}; |
||||
|
@ -0,0 +1,23 @@ |
||||
|
||||
#define ROWS 2 |
||||
#define COLS 16 |
||||
|
||||
const uint8_t image[COLS][ROWS] PROGMEM = { |
||||
{ 0b00000011, 0b11000000 }, // ████
|
||||
{ 0b00010010, 0b01000110 }, // █ █ █ ██
|
||||
{ 0b00101010, 0b00011100 }, // █ █ █ ███
|
||||
{ 0b01000110, 0b11111100 }, // █ ██ ██████
|
||||
{ 0b00100000, 0b00111100 }, // █ ████
|
||||
{ 0b00010000, 0b01101000 }, // █ ██ █
|
||||
{ 0b11110000, 0b11001011 }, //████ ██ █ ██
|
||||
{ 0b10000001, 0b10000001 }, //█ ██ █
|
||||
{ 0b10000011, 0b11100001 }, //█ █████ █
|
||||
{ 0b11110111, 0b11101111 }, //████ ██████ ████
|
||||
{ 0b00010001, 0b11001000 }, // █ ███ █
|
||||
{ 0b00100011, 0b10000100 }, // █ ███ █
|
||||
{ 0b01000111, 0b01100010 }, // █ ███ ██ █
|
||||
{ 0b00101110, 0b01010100 }, // █ ███ █ █ █
|
||||
{ 0b00011100, 0b01001000 }, // ███ █ █
|
||||
{ 0b00001011, 0b11000000 }, // █ ████
|
||||
}; |
||||
|
@ -0,0 +1,39 @@ |
||||
|
||||
#define ROWS 4 |
||||
#define COLS 32 |
||||
|
||||
const uint8_t image[COLS][ROWS] PROGMEM = { |
||||
{ 0b00000000, 0b00001111, 0b11110000, 0b00000000 }, // ████████
|
||||
{ 0b00000000, 0b11111100, 0b01111110, 0b00000000 }, // ██████ ██████
|
||||
{ 0b00000001, 0b11100000, 0b00000111, 0b10000000 }, // ████ ████
|
||||
{ 0b00000011, 0b10000001, 0b10000001, 0b11000000 }, // ███ ██ ███
|
||||
{ 0b00000110, 0b00000010, 0b01000000, 0b01100000 }, // ██ █ █ ██
|
||||
{ 0b00001100, 0b00000110, 0b01000000, 0b00110000 }, // ██ ██ █ ██
|
||||
{ 0b00011000, 0b10000100, 0b01000011, 0b00011000 }, // ██ █ █ █ ██ ██
|
||||
{ 0b00110001, 0b11100100, 0b01100111, 0b10001100 }, // ██ ████ █ ██ ████ ██
|
||||
{ 0b01100011, 0b00111100, 0b00111100, 0b10001100 }, // ██ ██ ████ ████ █ ██
|
||||
{ 0b01100011, 0b00001100, 0b00000000, 0b10000110 }, // ██ ██ ██ █ ██
|
||||
{ 0b01000001, 0b10000111, 0b10000001, 0b10000110 }, // █ ██ ████ ██ ██
|
||||
{ 0b01000000, 0b10000110, 0b01000111, 0b11110110 }, // █ █ ██ █ ███████ ██
|
||||
{ 0b11000000, 0b10001100, 0b01001000, 0b00010010 }, //██ █ ██ █ █ █ █
|
||||
{ 0b10000111, 0b10011000, 0b01000100, 0b00110011 }, //█ ████ ██ █ █ ██ ██
|
||||
{ 0b10001100, 0b01100010, 0b01011000, 0b00100011 }, //█ ██ ██ █ █ ██ █ ██
|
||||
{ 0b10010000, 0b10000100, 0b01100000, 0b01010011 }, //█ █ █ █ ██ █ █ ██
|
||||
{ 0b10010011, 0b00000100, 0b01000110, 0b11010011 }, //█ █ ██ █ █ ██ ██ █ ██
|
||||
{ 0b10011100, 0b00001100, 0b10001100, 0b10010011 }, //█ ███ ██ █ ██ █ █ ██
|
||||
{ 0b10011000, 0b00010100, 0b00111111, 0b11100011 }, //█ ██ █ █ █████████ ██
|
||||
{ 0b11010000, 0b00100110, 0b01100010, 0b00000010 }, //██ █ █ ██ ██ █ █
|
||||
{ 0b01010000, 0b01000010, 0b10000011, 0b00000010 }, // █ █ █ █ █ ██ █
|
||||
{ 0b01011001, 0b10000011, 0b00000001, 0b10000110 }, // █ ██ ██ ██ ██ ██
|
||||
{ 0b01101011, 0b00011110, 0b00110000, 0b10000110 }, // ██ █ ██ ████ ██ █ ██
|
||||
{ 0b00101111, 0b00110110, 0b01111100, 0b10001100 }, // █ ████ ██ ██ █████ █ ██
|
||||
{ 0b00111101, 0b11100100, 0b01100111, 0b10001100 }, // ████ ████ █ ██ ████ ██
|
||||
{ 0b00011000, 0b00000100, 0b01000000, 0b00011000 }, // ██ █ █ ██
|
||||
{ 0b00001100, 0b00000100, 0b01000000, 0b00110000 }, // ██ █ █ ██
|
||||
{ 0b00000110, 0b00000011, 0b11000000, 0b01100000 }, // ██ ████ ██
|
||||
{ 0b00000011, 0b10000001, 0b10000001, 0b11000000 }, // ███ ██ ███
|
||||
{ 0b00000001, 0b11100000, 0b00000111, 0b10000000 }, // ████ ████
|
||||
{ 0b00000000, 0b01111100, 0b00111110, 0b00000000 }, // █████ █████
|
||||
{ 0b00000000, 0b00001111, 0b11110000, 0b00000000 }, // ████████
|
||||
}; |
||||
|
@ -0,0 +1,23 @@ |
||||
|
||||
#define ROWS 2 |
||||
#define COLS 16 |
||||
|
||||
const uint8_t image[COLS][ROWS] PROGMEM = { |
||||
{ 0b11110000, 0b00000000 }, //████
|
||||
{ 0b10010000, 0b00000001 }, //█ █ █
|
||||
{ 0b11011111, 0b11111111 }, //██ █████████████
|
||||
{ 0b00011100, 0b00001000 }, // ███ █
|
||||
{ 0b00011000, 0b00001111 }, // ██ ████
|
||||
{ 0b00011000, 0b00001000 }, // ██ █
|
||||
{ 0b01110000, 0b00001111 }, // ███ ████
|
||||
{ 0b10010110, 0b00001001 }, //█ █ ██ █ █
|
||||
{ 0b01110110, 0b00001000 }, // ███ ██ █
|
||||
{ 0b10010000, 0b00001111 }, //█ █ ████
|
||||
{ 0b01110000, 0b00001001 }, // ███ █ █
|
||||
{ 0b00011011, 0b11111000 }, // ██ ███████
|
||||
{ 0b00000100, 0b00001000 }, // █ █
|
||||
{ 0b00000101, 0b00101000 }, // █ █ █ █
|
||||
{ 0b00000100, 0b00001000 }, // █ █
|
||||
{ 0b00000011, 0b11110000 }, // ██████
|
||||
}; |
||||
|
@ -0,0 +1,22 @@ |
||||
|
||||
#define ROWS 2 |
||||
#define COLS 15 |
||||
|
||||
const uint8_t image[COLS][ROWS] PROGMEM = { |
||||
{ 0b00000001, 0b11000000 }, // ███
|
||||
{ 0b00010000, 0b10000100 }, // █ █ █
|
||||
{ 0b00111000, 0b10001110 }, // ███ █ ███
|
||||
{ 0b00011101, 0b11001100 }, // ███ ███ ██
|
||||
{ 0b00001100, 0b10011000 }, // ██ █ ██
|
||||
{ 0b00000010, 0b10100000 }, // █ █ █
|
||||
{ 0b01001001, 0b11001001 }, // █ █ ███ █ █
|
||||
{ 0b11111111, 0b11111111 }, //████████████████
|
||||
{ 0b01001001, 0b11001001 }, // █ █ ███ █ █
|
||||
{ 0b00000010, 0b10100000 }, // █ █ █
|
||||
{ 0b00001100, 0b10010000 }, // ██ █ █
|
||||
{ 0b00011001, 0b11011100 }, // ██ ███ ███
|
||||
{ 0b00111000, 0b10001110 }, // ███ █ ███
|
||||
{ 0b00010000, 0b10000100 }, // █ █ █
|
||||
{ 0b00000001, 0b11000000 }, // ███
|
||||
}; |
||||
|
@ -0,0 +1,11 @@ |
||||
|
||||
#define ROWS 2 |
||||
#define COLS 4 |
||||
|
||||
const uint8_t image[COLS][ROWS] PROGMEM = { |
||||
{ 0b10101010, 0b00000000 }, //█ █ █ █
|
||||
{ 0b10101011, 0b11000000 }, //█ █ █ ████
|
||||
{ 0b00000011, 0b11010101 }, // ████ █ █ █
|
||||
{ 0b00000000, 0b01010101 }, // █ █ █ █
|
||||
}; |
||||
|
@ -0,0 +1,39 @@ |
||||
|
||||
#define ROWS 2 |
||||
#define COLS 32 |
||||
|
||||
const uint8_t image[COLS][ROWS] PROGMEM = { |
||||
{ 0b11111111, 0b11111111 }, //████████████████
|
||||
{ 0b11000000, 0b00000000 }, //██
|
||||
{ 0b11100000, 0b00111110 }, //███ █████
|
||||
{ 0b11100000, 0b00100010 }, //███ █ █
|
||||
{ 0b01110000, 0b00101010 }, // ███ █ █ █
|
||||
{ 0b01110000, 0b00100010 }, // ███ █ █
|
||||
{ 0b00111000, 0b00111110 }, // ███ █████
|
||||
{ 0b00111000, 0b00000000 }, // ███
|
||||
{ 0b00011100, 0b00111110 }, // ███ █████
|
||||
{ 0b00011100, 0b00000000 }, // ███
|
||||
{ 0b00001110, 0b00011100 }, // ███ ███
|
||||
{ 0b00001110, 0b00000000 }, // ███
|
||||
{ 0b00000111, 0b00001000 }, // ███ █
|
||||
{ 0b00000111, 0b00000000 }, // ███
|
||||
{ 0b00000011, 0b10001000 }, // ███ █
|
||||
{ 0b00000011, 0b10000000 }, // ███
|
||||
{ 0b00000001, 0b11000000 }, // ███
|
||||
{ 0b00011001, 0b11000000 }, // ██ ███
|
||||
{ 0b00000000, 0b11100000 }, // ███
|
||||
{ 0b00011000, 0b11100000 }, // ██ ███
|
||||
{ 0b00000000, 0b01110000 }, // ███
|
||||
{ 0b00111100, 0b01110000 }, // ████ ███
|
||||
{ 0b00000000, 0b00111000 }, // ███
|
||||
{ 0b01111110, 0b00111000 }, // ██████ ███
|
||||
{ 0b01000010, 0b00011100 }, // █ █ ███
|
||||
{ 0b01011010, 0b00011100 }, // █ ██ █ ███
|
||||
{ 0b01011010, 0b00001110 }, // █ ██ █ ███
|
||||
{ 0b01000010, 0b00001110 }, // █ █ ███
|
||||
{ 0b01111110, 0b00000111 }, // ██████ ███
|
||||
{ 0b00000000, 0b00000111 }, // ███
|
||||
{ 0b00000000, 0b00000011 }, // ██
|
||||
{ 0b00100100, 0b10010011 }, // █ █ █ █ ██
|
||||
}; |
||||
|
@ -0,0 +1,212 @@ |
||||
#include <avr/io.h> |
||||
#include <avr/interrupt.h> |
||||
#include <avr/pgmspace.h> |
||||
#include <util/delay.h> |
||||
#include <stdint.h> |
||||
#include <math.h> |
||||
|
||||
#include "utils.h" |
||||
|
||||
// Change to the image you want:
|
||||
#include "image_chk3264numbers.h" |
||||
|
||||
#define DEBOUNCE_MS 3 |
||||
|
||||
|
||||
/**
|
||||
* +--u--+ |
||||
* RST --| |-- Vcc |
||||
* TRIGGER : PB3 --| t13 |-- PB2 : CLOCK -> |
||||
* N.C. : PB4 --| |-- PB1 : STROBE -> to chained 74HC4094's |
||||
* GND --| |-- PB0 : DATA -> |
||||
* +-----+ |
||||
* |
||||
* TRIGGER is connected to ground by spring switch |
||||
* that gets activated at start of swing to right. |
||||
* (It's a metal contact with weight) |
||||
* |
||||
* LEDs are connected to 74HC4094 outputs by anodes. |
||||
* To use cathodes, invert byte in send_byte function. |
||||
*/ |
||||
|
||||
|
||||
|
||||
// pins config
|
||||
#define PIN_DATA PB0 |
||||
#define PIN_STROBE PB1 |
||||
#define PIN_CLOCK PB2 |
||||
#define PIN_TRIGGER PB3 |
||||
|
||||
|
||||
#define trigger_on() (0 == get_bit(PINB, PIN_TRIGGER)) |
||||
|
||||
|
||||
|
||||
/** Measure counter 10 usec */ |
||||
volatile uint16_t measure_counter; |
||||
|
||||
volatile uint8_t waiting_for_trigger = 1; |
||||
|
||||
/** Computed pixel timing */ |
||||
uint16_t t_light = 50; // 5 ms
|
||||
uint16_t t_gap = 10; // 1 ms
|
||||
|
||||
|
||||
void measure_start(void); |
||||
void measure_stop(void); |
||||
void send_byte(uint8_t); |
||||
void display(void); |
||||
int main(void); |
||||
|
||||
/** Initialize IO ports. */ |
||||
// void init_io(void) ;
|
||||
|
||||
void SECTION(".init8") init_io(void) |
||||
{ |
||||
// set output pins
|
||||
DDRB = _BV(PIN_DATA) | _BV(PIN_STROBE) | _BV(PIN_CLOCK); |
||||
|
||||
// pullups
|
||||
PORTB = _BV(PIN_TRIGGER); |
||||
|
||||
// initialize the timer
|
||||
|
||||
TCCR0B = _BV(CS00); // prescaler 0
|
||||
OCR0A = 96; // interrupt every 10 us
|
||||
sbi(TIMSK0, OCIE0A); |
||||
|
||||
// initialize external interrupt
|
||||
|
||||
PCMSK = _BV(PCINT3); |
||||
sbi(GIMSK, PCIE); // pin change interrupt enable
|
||||
} |
||||
|
||||
|
||||
/** timer 0 interrupt vector */ |
||||
ISR(PCINT0_vect) |
||||
{ |
||||
if (waiting_for_trigger && trigger_on()) { |
||||
measure_stop(); |
||||
} |
||||
} |
||||
|
||||
|
||||
/** timer 0 interrupt vector */ |
||||
ISR(TIM0_COMPA_vect) |
||||
{ |
||||
// increment only if not too high
|
||||
if (waiting_for_trigger && measure_counter < 0xFFFF) { |
||||
measure_counter++; |
||||
} |
||||
} |
||||
|
||||
|
||||
|
||||
/** Start counting time of interval */ |
||||
void |
||||
measure_start() |
||||
{ |
||||
measure_counter = 0; // reset the counter
|
||||
waiting_for_trigger = 1; // start waiting for trigger -> stop.
|
||||
|
||||
// enable CompMatch A interrupt
|
||||
} |
||||
|
||||
|
||||
/** Stop measuring, compute timing values */ |
||||
void |
||||
measure_stop() |
||||
{ |
||||
uint16_t prec = (measure_counter / (COLS)); |
||||
t_light = ((prec*7)/100); |
||||
t_gap = ((prec*3)/100); |
||||
|
||||
// if (t_light == 0) t_light=25;
|
||||
// if (t_gap == 0) t_gap=5;
|
||||
|
||||
waiting_for_trigger = 0; // stop waiting for trigger (new loop may start)
|
||||
} |
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/** send one byte into registers */ |
||||
void |
||||
send_byte(uint8_t b) |
||||
{ |
||||
for (uint8_t i=0; i<8; i++) { |
||||
set_bit(PORTB, PIN_DATA, get_bit(b, i)); |
||||
|
||||
bus_pulse(PORTB, PIN_CLOCK); // strobe
|
||||
} |
||||
} |
||||
|
||||
|
||||
/** send STROBE pulse */ |
||||
void |
||||
display() |
||||
{ |
||||
bus_pulse(PORTB, PIN_STROBE); |
||||
} |
||||
|
||||
|
||||
/**
|
||||
* Main function |
||||
*/ |
||||
int |
||||
main() |
||||
{ |
||||
sei(); |
||||
|
||||
while (1) { |
||||
|
||||
// while (waiting_for_trigger); // wait for interrupt on TRIGGER
|
||||
// _delay_ms(DEBOUNCE_MS); // debounce
|
||||
// while (trigger_on()); // wait for trigger to turn off
|
||||
// _delay_ms(DEBOUNCE_MS); // debounce
|
||||
// measure_start();
|
||||
|
||||
for(uint8_t i = DEBOUNCE_MS; i > 0; i--) { |
||||
while (trigger_on()); |
||||
_delay_ms(1); |
||||
} |
||||
measure_start(); |
||||
|
||||
for (uint8_t col = 0; col < COLS; col++) { |
||||
|
||||
if(trigger_on()) break; // emergency exit
|
||||
|
||||
// +++ light +++
|
||||
|
||||
// send light values
|
||||
for(uint8_t row = ROWS; row > 0; row--) { |
||||
send_byte(pgm_read_byte(&image[col][row-1])); |
||||
} |
||||
|
||||
// send STROBE
|
||||
display(); |
||||
|
||||
// Wait
|
||||
for(uint16_t i = t_light; i > 0; i--) { |
||||
_delay_us(100); |
||||
} |
||||
|
||||
|
||||
// +++ dark +++
|
||||
|
||||
// send zeros
|
||||
for(uint8_t row = ROWS; row > 0; row--) { |
||||
send_byte(0); |
||||
} |
||||
|
||||
// send STROBE
|
||||
display(); |
||||
|
||||
// Wait
|
||||
for(uint16_t i = t_gap; i > 0; i--) { |
||||
_delay_us(100); |
||||
} |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,11 @@ |
||||
|
||||
#define ROWS 2 |
||||
#define COLS 4 |
||||
|
||||
const uint8_t image[COLS][ROWS] PROGMEM = { |
||||
{ 0b10101010, 0b00000000 }, //█ █ █ █
|
||||
{ 0b10101011, 0b11000000 }, //█ █ █ ████
|
||||
{ 0b00000011, 0b11010101 }, // ████ █ █ █
|
||||
{ 0b00000000, 0b01010101 }, // █ █ █ █
|
||||
}; |
||||
|
@ -0,0 +1,14 @@ |
||||
#pragma once |
||||
|
||||
// general macros
|
||||
#define SECTION(pos) __attribute__((naked, used, section(pos))) |
||||
|
||||
|
||||
// pin manipulation
|
||||
#define sbi(port, bit) (port) |= _BV(bit) |
||||
#define cbi(port, bit) (port) &= ~ _BV(bit) |
||||
|
||||
#define set_bit(port, bit, value) (port) = (((port) & ~_BV(bit)) | ((value) << (bit))) |
||||
#define get_bit(port, bit) (((port) >> (bit)) & 1) |
||||
|
||||
#define bus_pulse(port, bit) { sbi(port, bit); cbi(port, bit); } |
Loading…
Reference in new issue