Directly controlling an LCD alphanumeric display

Alternatively, you can also drive the screen directly from the Raspberry Pi with the following connections:

We are not using the I2C bus here.

LCD

VSS

VDD

V0

RS

RW

E

DB4

DB5

DB6

DB7

LCD Pin

1

2

3

4

5

6

11

12

13

14

Raspberry Pi GPIO

6 (GND)

2 (5V)

Contrast

11

13 (GND)

15

12

16

18

22

 

The preceding table lists the connections required between the Raspberry Pi and the HD44780-compatible, alphanumeric display module.

The contrast pin (V0) can be connected to a variable resistor as before (with one side connected to the 5 V supply and the other to GND); although, depending on the screen, you may find you can connect directly to GND/5 V to obtain the maximum contrast.

The wiringpi2 LCD library assumes that the RW pin is connected to GND (read only); this avoids the risk that the LCD will send data back if it is connected directly to the Raspberry Pi (this would be a problem since the screen is powered by 5 V and will send data using 5 V logic).

Ensure that you update the code with the new AF_XX references and refer to the physical pin number by changing the setup within the gpiosetup() function. We can also skip the setup of the MCP23017 device.

Have a look at the following commands:

wiringpi2.wiringPiSetup()
wiringpi2.mcp23017Setup(AF_BASE,0x20)  

Replace the preceding commands with the following command:

wiringpi.wiringPiSetupPhys()  

You can see that we only need to change the pin references to switch between using the I/O expander and not using it, which shows how convenient the wiringpi2 implementation is.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.144.15.154