Arduino uno 驱动Nokia5110显示屏

在树莓派使用Nokia5110显示屏显示系统信息中,学习了使用树莓派驱动Nokia5110显示屏。本篇文章教大家用Arduino驱动Nokia5110显示屏。

一、硬件连接

#define PIN_SCE                 7
#define PIN_RESET             6
#define PIN_DC             5
#define PIN_SDIN            4
#define PIN_SCLK                3
VCC         3.3V
Gng            地
BL            5V

在BL和5V之间连接不用加入其他的电阻和电容,经过我的测试,直接连接就可以了。

Arduino uno 驱动Nokia5110显示屏

二、下载Nokia5110驱动库

1、下载Arduino Nokia5110 驱动库.(科技爱好者博客下载:pcd8544-master)

2、打开Arduino IDE

3、“项目” – “加载库” -” 添加一个.zip库”。

三、运行程序

选择File > Examples > PCD8544 > HelloWorld打开Nokia 5110屏幕测试程序。编译下载即可看到显示的信息。

Arduino uno 驱动Nokia5110显示屏

四、Hello Word程序代码

 /*  * PCD8544 - Interface with Philips PCD8544 (or compatible) LCDs.  *  * Copyright (c) 2010 Carlos Rodrigues <cefrodrigues@gmail.com>  *  * Permission is hereby granted, free of charge, to any person obtaining a copy  * of this software and associated documentation files (the "Software"), to deal  * in the Software without restriction, including without limitation the rights  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell  * copies of the Software, and to permit persons to whom the Software is  * furnished to do so, subject to the following conditions:  *  * The above copyright notice and this permission notice shall be included in  * all copies or substantial portions of the Software.  *  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN  * THE SOFTWARE.  *//*  * To use this sketch, connect the eight pins from your LCD like thus:  *  * Pin 1 -> +3.3V (rightmost, when facing the display head-on)  * Pin 2 -> Arduino digital pin 3  * Pin 3 -> Arduino digital pin 4  * Pin 4 -> Arduino digital pin 5  * Pin 5 -> Arduino digital pin 7  * Pin 6 -> Ground  * Pin 7 -> 10uF capacitor -> Ground  * Pin 8 -> Arduino digital pin 6  *  * Since these LCDs are +3.3V devices, you have to add extra components to  * connect it to the digital pins of the Arduino (not necessary if you are  * using a 3.3V variant of the Arduino, such as Sparkfun's Arduino Pro).  */#include // A custom glyph (a smiley)...static const byte glyph[] = { B00010000, B00110100, B00110000, B00110100, B00010000 };static PCD8544 lcd;void setup() {   // PCD8544-compatible displays may have a different resolution...   lcd.begin(84, 48);    // Add the smiley to position "0" of the ASCII table...   lcd.createChar(0, glyph);}void loop() {   // Just to show the program is alive...   static int counter = 0;    // Write a piece of text on the first line...   lcd.setCursor(0, 0);   lcd.print("Hello, World!");    lcd.setCursor(0, 1);   lcd.print("Blog.lxx1.com");      // Write the counter on the second line...   lcd.setCursor(0, 3            );   lcd.print(counter, DEC);   lcd.write(' ');   lcd.write(0);  // write the smiley       // Use a potentiometer to set the LCD contrast...   // short level = map(analogRead(A0), 0, 1023, 0, 127);   // lcd.setContrast(level);    delay(100);   counter+=1;}/* EOF - HelloWorld.ino */

C