I2C & Serial 20x4 LCD Module With Keypad Controller

This is for one 20x4 display with controller (BV4618) attached to a 20x4 display as shown. This controller has both I2C and Serial interfaces. Also there is a connection for a 4x4 (or less) keypad. The controller is fitted and tested with the device as shown, nor soldering required.

The display is a lower cost version to the ones shown elsewhere in this shop and so tends to be a bit slower. It is ideal for displaying static text but for faster moving displays; e.g. volt meters UV meters and the like the more expensive version should be used.

Controller

The keypad is not supplied or fitted. However the membrane type keypad is plug compatible also available in the shop.

This can form a complete user interface using either serial or I2C communication. It is user configurable and set fo a 16x2 line display by default so two simple commands are used to set it to 20 x 4. Automatic scrolling takes place at the end of a line and also at the bottom of the display freeing the host software form mundane tasks. The display as 3 interface options that are automatically selected when that interface is connected:

1) Serial Interface

The serial interface has automatic Baud Rate selection form a set of pre-defined Baud rates up to 115200. The selection is done on receiving the first character that is carriage return (byte value 13 or \r). All bytes sent to the display will be displayed and automatic scrolling takes place at the end of a line and bottom of the screen. There is also a set of commands starting with ESC (byte value 27) that are used to control the display such as clearing a line, character positioning, clearing the display etc. Escape commands are also used to input bytes from the keypad.

2) RS232

The controller will also accept input directly from a COM port and automatically detect this. The interface is then the same as the serial interface.

3) I2C Interface

This option is automatically detected because the I2C data line has a pull up resistor. The I2C address is user configurable in software and held in EEPROM. Controlling the display is via commands in exactly the same way as the serial interface.

Keypad Interface

There is provision for up to a 4x4 (16 key) keypad. The keypad is connected to the controller via the pads provided. There is also an interrupt output that will go low when there is any key in the 16 byte buffer and goes high when all the values have been removed from the buffer. The host software need not monitor the controller constantly as any key pressed will be captured by the controller for later access.

This is the controller that is fitted to the display. There are no pins on the keypad interface but the serial and I2C interfaces are fitted with 90 degree pin head, pins..