The conventional way of displaying a character or text on a 16x2 LCD uses English alphabets. But with the concept presented here, it is possible to display Hindi alphabets as well. The idea is to create custom characters on a 5x8 pixel matrix element corresponding to Hindi letters. These letters once created can be invoked and displayed as and when desired by interfacing LCD with AT89C51.
There are 8 symbol locations in LCD’s controller where a custom character can be stored. These locations can have a particular bitmap layout which would correspond to a custom made character. In this case these bitmap layouts are set according to Hindi alphabets. To display '' , the bitmap values are mapped to first base address location 64 (ASCII code 0).
This is achieved by first sending the address location (64) to LCD command register. Next, the bitmap values (31, 4, 14, 21, 13, 4, 4, 0) are sent to the LCD data register. Now the ‘’ alphabet gets stored at this address. Similarly other alphabets can also be stored at different (up to 8) addresses. Now whenever an alphabet is to be displayed, its location should be sent as a command instruction to LCD.
Here port P2 is used to send the data byte to data pins of the LCD. The control pins (pin 4, 5 & 6) of LCD are connected to pins 0, 1 & 6, respectively, of port P3. LCD’s pin 3 is connected to a preset of 10k to adjust the contrast on LCD screen.
There are 8 symbol locations in LCD’s controller where a custom character can be stored. These locations can have a particular bitmap layout which would correspond to a custom made character. In this case these bitmap layouts are set according to Hindi alphabets. To display '' , the bitmap values are mapped to first base address location 64 (ASCII code 0).
This is achieved by first sending the address location (64) to LCD command register. Next, the bitmap values (31, 4, 14, 21, 13, 4, 4, 0) are sent to the LCD data register. Now the ‘’ alphabet gets stored at this address. Similarly other alphabets can also be stored at different (up to 8) addresses. Now whenever an alphabet is to be displayed, its location should be sent as a command instruction to LCD.
Here port P2 is used to send the data byte to data pins of the LCD. The control pins (pin 4, 5 & 6) of LCD are connected to pins 0, 1 & 6, respectively, of port P3. LCD’s pin 3 is connected to a preset of 10k to adjust the contrast on LCD screen.
To download the code click on the below button