• sales

    +86-0755-88291180

English Character Display Principle

let's learn how ASCII codes are displayed. The following takes the STM32 program of the 2.13-inch e-Paper HAT as an example to explain. To display characters, you must need fonts first. The files of the Fonts directory in the sample program correspond to different fonts. Open the file and you can see a bunch of data.



Each font has a structure that stores information about the font respectively. The structure includes an array pointer, font width, and font height.



The above fonts are copied from the stm32 official sample program. It is an ASCII character. Now let's explain how we make the font. The picture below is the font modulo of the "A" of Font8, we can use the font modulo software to get the data of the A character.



The font data can be got from the font modulo software which extracts the modulo of the font horizontally and vertically and displays each pixel with an array. For instance, if you want to display the "A" character, you can find the data of the "A" character and then display the font modulo point by point.



One thing to note here is the red box, the font array is stored in ASCII order, the first character is a space " ", and the data size of each character is the same. So subtract the ASCII code of the space bar from the ASCII code of A to find the starting position of the data for the character "A".


String display is to display each character.

TAG: electronic Tag 800x480 Arduino Thermal imaging camera Raspberry Pi 5 27W Power ESP32 C3 Round LCD Development Board Electronic EYE 0.71 inch Display Watch Screen GC9A01 160x160 series bus servos User Guide USB to CAN Sipeed Lichee Tang Nano 20K FPGA RISCV Open-Source Retro-Game Linux MINI Development Board GW2AR-18 CAN Analyzer Raspberry Pi 5 ESP32-S3 Development Board 3.16 inch LCD display 3.16inch Screen SD slot 320x820 RGB LED ST7701 Raspberry Pi5 PCIe TO M.2 MINI Support Gen2 and Gen3 SSD Compatible 2230 2242 ESP32 S3 AI 1.54inch Development Board 1.54 inch TouchScreen Display DeepSeek Raspberry Pi RP2040 Long-Rang MAX9296 GMSL Camera Adapter Board 2-Ch High-Speed And Low-Latency Transmission For Jetson Orin Nano/NX Raspberry Pi Pico 2 RP2350 ETH CH9120 TCP/UDP Ethernet Network For Arduino ESP32 2 inch Capacitive TouchScreen LCD Display ST7789 CST816D 240x320 For Arduino/Raspberry Pi/Pico luckfox-pico-ultra-w-gpio Use Cortex-A7