<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.52pi.com/index.php?action=history&amp;feed=atom&amp;title=EP-0045</id>
	<title>EP-0045 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.52pi.com/index.php?action=history&amp;feed=atom&amp;title=EP-0045"/>
	<link rel="alternate" type="text/html" href="https://wiki.52pi.com/index.php?title=EP-0045&amp;action=history"/>
	<updated>2026-10-16T17:46:49Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.2</generator>
	<entry>
		<id>https://wiki.52pi.com/index.php?title=EP-0045&amp;diff=11197&amp;oldid=prev</id>
		<title>Yoyojacky: Yoyojacky moved page 52Pi-BPi LCD 1602 Module SKU:EP-0045 to EP-0045</title>
		<link rel="alternate" type="text/html" href="https://wiki.52pi.com/index.php?title=EP-0045&amp;diff=11197&amp;oldid=prev"/>
		<updated>2021-08-27T11:55:11Z</updated>

		<summary type="html">&lt;p&gt;Yoyojacky moved page &lt;a href=&quot;/index.php?title=52Pi-BPi_LCD_1602_Module_SKU:EP-0045&quot; class=&quot;mw-redirect&quot; title=&quot;52Pi-BPi LCD 1602 Module SKU:EP-0045&quot;&gt;52Pi-BPi LCD 1602 Module SKU:EP-0045&lt;/a&gt; to &lt;a href=&quot;/index.php?title=EP-0045&quot; title=&quot;EP-0045&quot;&gt;EP-0045&lt;/a&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:55, 27 August 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Yoyojacky</name></author>
	</entry>
	<entry>
		<id>https://wiki.52pi.com/index.php?title=EP-0045&amp;diff=1678&amp;oldid=prev</id>
		<title>Yoyojacky: Created page with &quot;=RPI RGB LCD1602= ==Description== It&#039;s a LCD display which can show two lines and 16 characters on it. and  it easy to use a blue and white 16x2 Character LCD.&lt;br&gt;  It&#039;s based...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.52pi.com/index.php?title=EP-0045&amp;diff=1678&amp;oldid=prev"/>
		<updated>2016-10-08T03:25:46Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;=RPI RGB LCD1602= ==Description== It&amp;#039;s a LCD display which can show two lines and 16 characters on it. and  it easy to use a blue and white 16x2 Character LCD.&amp;lt;br&amp;gt;  It&amp;#039;s based...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=RPI RGB LCD1602=&lt;br /&gt;
==Description==&lt;br /&gt;
It&amp;#039;s a LCD display which can show two lines and 16 characters on it. and  it easy to use a blue and white 16x2 Character LCD.&amp;lt;br&amp;gt; &lt;br /&gt;
It&amp;#039;s based on I2c protocol and it can communicate with your Pi with less wire. &amp;lt;br&amp;gt;&lt;br /&gt;
With this in mind, we wanted to make it easier for people to get these LCD into their projects so we devised a Pi plate that lets you control a 16x2 Character LCD,&amp;lt;br&amp;gt;&lt;br /&gt;
up to 3 led pins(RGB backlight) AND 5 keypad pins with  pull-up resister using only the two I2C pins on the R-Pi! &amp;lt;br&amp;gt;&lt;br /&gt;
The best part is you don&amp;#039;t really lose those two pins either, since you can stick i2c-based sensors, RTCs, etc and have them share the I2C bus.&amp;lt;br&amp;gt;&lt;br /&gt;
This is a super slick way to add a display without all the wiring hassle.&lt;br /&gt;
This pi plate is perfect for when you want to build a stand-alone project with its own user interface. &amp;lt;br&amp;gt;&lt;br /&gt;
The 4 directional buttons plus select button allows basic control without having to attach a bulky computer.&amp;lt;br&amp;gt;&lt;br /&gt;
The plate is designed for both Revision 1 and Revision 2 Raspberry Pi&amp;#039;s. It uses the I2C (SDA/SCL) pins, RGB backlight is controlled by Raspberry Pi GPIO pin and you can make it as breath light with softPWM. &amp;lt;br&amp;gt;&lt;br /&gt;
To keep them from shorting against the metal, a piece of electrical tape must be placed onto the USB ports.&amp;lt;br&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Feature==&lt;br /&gt;
*Display construction: 16 Characters * 2 Lines&lt;br /&gt;
*Dimensions: 5.74cm × 8.24cm&lt;br /&gt;
*Comes with a 16x2 Blue &amp;amp; White LCD&lt;br /&gt;
*Plug and play with any Raspberry Pi &lt;br /&gt;
*Uses only the I2C (SDA/SCL) pins&lt;br /&gt;
*This board/chip uses I2C 7-bit address 0x20&lt;br /&gt;
*RBG backlight&lt;br /&gt;
*Pluggable LCD1602 module&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Presentation==&lt;br /&gt;
[[File: 160201.jpg|thumb|left|300px]]&lt;br /&gt;
[[File: 160202.jpg|thumb|left|300px]]&lt;br /&gt;
[[File: 160203.jpg|thumb|left|300px]]&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear:both;&amp;quot; &amp;gt;&lt;br /&gt;
----&lt;br /&gt;
==Package includes==&lt;br /&gt;
* 1x RPI 16x2 LCD + Keypad Kit&lt;br /&gt;
----&lt;br /&gt;
==How to use==&lt;br /&gt;
*Setup your Pi with I2C tool.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt; sudo apt-get install python-smbus &amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt; sudo apt-get install i2c-tools &amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;sudo i2cdetect -y 0 (if you are using a version 1 Raspberry Pi) &amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;sudo i2cdetect -y 1 (if you are using a version 2 Raspberry Pi) &amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
*i2c-tools isn&amp;#039;t strictly required, but it&amp;#039;s a useful package since you can use it to scan for any I2C or SMBus devices connected to your board.&amp;lt;br&amp;gt;&lt;br /&gt;
If you know something is connected, but you don&amp;#039;t know it&amp;#039;s 7-bit I2C address, this library has a great little tool to help you find it.&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:I2c.jpg|thumb|left|300px]]&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear:both;&amp;quot;&amp;gt;&lt;br /&gt;
*Install  git-core and get wiringPi library. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt; sudo apt-get install git-core &amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt; git clone git://git.drogon.net/wiringPi&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt; cd wiringPi&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt; ./build&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
*Check wiringPi  function and version:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt; gpio -v&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt; gpio readall&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Gpio.jpg|thumb|left|300px]]&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear:both;&amp;quot; &amp;gt;&lt;br /&gt;
*Enable  I2C interface in your Pi by editing /etc/modules file and add two lines as following: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt; sudo nano /etc/modules &amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
i2c-bcm2708 &lt;br /&gt;
i2c-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
* Delete blacklist in /etc/modprobe.d/raspi-blacklist.conf, you can just use &amp;quot;#&amp;quot; to comment it.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt; sudo nano /etc/modprobe.d/raspi-blacklist.conf&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
blacklist spi-bcm2708&lt;br /&gt;
blacklist i2c-bcm2708&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
*Finally, reboot your Pi.&amp;lt;br&amp;gt;&lt;br /&gt;
*Create a file called whatever you want but with .c  as prefix: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt; sudo vim.tiny  mylcd1602.c &amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;                                                                        &lt;br /&gt;
#include &amp;lt;wiringPi.h&amp;gt;                                                             &lt;br /&gt;
#include &amp;lt;mcp23017.h&amp;gt;                                                         &lt;br /&gt;
#include &amp;lt;lcd.h&amp;gt;                                                            &lt;br /&gt;
 &lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
        int display,i,count;                                                      &lt;br /&gt;
        wiringPiSetup();                                                          &lt;br /&gt;
        mcp23017Setup (100, 0x20);                                               &lt;br /&gt;
        printf (&amp;quot;Raspberry Pi - MCP23017 Test\n&amp;quot;);&lt;br /&gt;
        for(i=0;i&amp;lt;16;i++)&lt;br /&gt;
          pinMode(100+i,OUTPUT);                                                &lt;br /&gt;
        digitalWrite(107,1);                                                       &lt;br /&gt;
        digitalWrite(101,0);                                                       &lt;br /&gt;
        display=lcdInit(2,16,4,100,102,103,104,105,106,0,0,0,0);               &lt;br /&gt;
        lcdHome(display);                                                          &lt;br /&gt;
        lcdClear(display);                                                               &lt;br /&gt;
        lcdPosition(display,0,0);                                                &lt;br /&gt;
        lcdPuts(display,&amp;quot;Hello World&amp;quot;);                                          &lt;br /&gt;
        while(1)&lt;br /&gt;
        {&lt;br /&gt;
                lcdPosition(display,0,1);                                                                                       &lt;br /&gt;
                lcdPrintf(display,&amp;quot;%d&amp;quot;,count++);                                         &lt;br /&gt;
                delay(300);                                                           &lt;br /&gt;
                printf(&amp;quot;lcd1602\n&amp;quot;);&lt;br /&gt;
        }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
*Compile it with gcc, and run it. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt; sudo gcc  mylcd1602.c   /home/pi/wiringPi/devLib/lcd.o  -lwiringPi  -o   mylcd1602 &amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt; sudo ./mylcd1602 &amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: 160203.jpg|thumb|left|300px]]&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear:both;&amp;quot; &amp;gt;&lt;br /&gt;
----&lt;/div&gt;</summary>
		<author><name>Yoyojacky</name></author>
	</entry>
</feed>