Skip to content

Character Encoding

Overview

This module defines the characters that will be supported on our display. For this part, focus will be on drawn to implementing the basic characters only.

Suppose that we want to display text on the display;

  • how do we uniquely identify each character signal and then manipulate pixels to create a visual illustration of the character (glyph) itself?

Well, this is where fonts come into play. But first, we need to list all characters to support and tag them.

Character Set

The character set will contain the following characters;

  • Space
  • Letters - uppercase A ... Z
  • Digits - 0 ... 9
  • Special Symbols - . : , ; ( ) * ! ? < > / | [ ] = + - _ { } # $ ^ " ' `

The size of this character set is 64. This is small but perfect. Because;

  • it takes 6 bits for values ranging between 0 - 63
  • all essential characters included: alphabetic, numeric, and punctuation marks
  • all 64 slots occupied

Character Codes

Each character in the charset is assigned a unique number so that it can be identified and the correct graphical representation rendered.

Code (Decimal)Code (Hex)Code (Binary)CharacterDescription
00x00000000SpaceWhitespace (space)
10x01000001AUppercase A
20x02000010BUppercase B
30x03000011CUppercase C
40x04000100DUppercase D
50x05000101EUppercase E
60x06000110FUppercase F
70x07000111GUppercase G
80x08001000HUppercase H
90x09001001IUppercase I
100x0A001010JUppercase J
110x0B001011KUppercase K
120x0C001100LUppercase L
130x0D001101MUppercase M
140x0E001110NUppercase N
150x0F001111OUppercase O
160x10010000PUppercase P
170x11010001QUppercase Q
180x12010010RUppercase R
190x13010011SUppercase S
200x14010100TUppercase T
210x15010101UUppercase U
220x16010110VUppercase V
230x17010111WUppercase W
240x18011000XUppercase X
250x19011001YUppercase Y
260x1A011010ZUppercase Z
270x1B0110110Digit 0
280x1C0111001Digit 1
290x1D0111012Digit 2
300x1E0111103Digit 3
310x1F0111114Digit 4
320x201000005Digit 5
330x211000016Digit 6
340x221000107Digit 7
350x231000118Digit 8
360x241001009Digit 9
370x25100101.Period
380x26100110:Colon
390x27100111,Comma
400x28101000;Semicolon
410x29101001(Left parenthesis
420x2A101010)Right parenthesis
430x2B101011*Asterisk
440x2C101100!Exclamation mark
450x2D101101?Question mark
460x2E101110<Less-than sign
470x2F101111>Greater-than sign
480x30110000/Slash/Forward Slash
490x31110001|Pipe (vertical bar)
500x32110010[Left square bracket
510x33110011]Right square bracket
520x34110100=Equals sign
530x35110101+Plus sign
540x36110110-Hyphen/Minus sign
550x37110111_Underscore
560x38111000{Left brace
570x39111001}Right brace
580x3A111010#Hash/Pound sign
590x3B111011$Dollar sign
600x3C111100^Caret (circumflex)
610x3D111101"Double quote
620x3E111110'Single quote
630x3F111111`Backtick (grave accent)

References