lcd1602按键显示不同数字_1602液晶显示屏

lcd1602按键显示不同数字_1602液晶显示屏1.直接与Arduino相连2.通过转接板利用I2C的方式与Arduino相连1.直接与Arduino相连直接与Arduino相连的好处是不用现另外购买转接板,但这样造成的后果就是要大量占用A

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1.直接与Arduino相连

2.通过转接板利用I2C的方式与Arduino相连

1. 直接与Arduino相连

直接与Arduino相连的好处是不用现另外购买转接板,但这样造成的后果就是要大量占用Arduino的IO口。如果你的项目外接的传感器不多,那还好,但如果你需要外接很多个传感器或者其他配件,那你的IO口就会告急了~

所需材料

  • 1x Arduino UNO
  • 1x LCD 16×2
  • 1x 10KΩ旋转变阻器
  • 1x 面包板

接线示意图

lcd1602按键显示不同数字_1602液晶显示屏

 

 
lcd1602按键显示不同数字_1602液晶显示屏

加载库文件

  • 在Arduino IDE 1.6.2 或者以上版本中, 项目->加载库->管理库中搜索LiquidCrystal,然后安装即可。

示例代码

// include the library code:
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
  // set up the LCD's number of columns and rows: 
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("hello, world!");
}

void loop() {
  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  lcd.setCursor(0, 1);
  // print the number of seconds since reset:
  lcd.print(millis()/1000);
}

参考文献

https://www.arduino.cc/en/Reference/LiquidCrystal

 

2.通过PCF8574T转接板与Arduino相连

通过此种方式,可以大大节省Arduino的IO口,前提是你还得购买一块PCF8574T转接板。

lcd1602按键显示不同数字_1602液晶显示屏

 


所需要材料

  • 1x Arduino UNO
  • 1x LCD 16×2
  • 1x PCF8574T转接板
  • 电烙铁、焊锡、松香等

接线

首先,把转接板焊接到LCD显示屏上(方向如上图)

lcd1602按键显示不同数字_1602液晶显示屏

  • SCL -> 最上面的口
  • SDA -> 第二个口

扫描I2C地址

将以下代码拷贝到Arduino IDE,并执行。然后选择工具->串口监视器,把右下角的波特率改为115200,即可读出I2C地址,如下图。

// I2C Scanner
// Written by Nick Gammon
// Date: 20th April 2011
#include <Wire.h>
void setup() { 
    Serial.begin (115200); // Leonardo: wait for serial port to connect 
    while (!Serial) { } 
    Serial.println (); 
    Serial.println ("I2C scanner. Scanning ..."); 
    byte count = 0; 
    Wire.begin(); 
    for (byte i = 8; i < 120; i++) { 
        Wire.beginTransmission (i); 
        if (Wire.endTransmission () == 0) { 
          Serial.print ("Found address: "); 
          Serial.print (i, DEC); 
          Serial.print (" (0x"); 
          Serial.print (i, HEX); 
          Serial.println (")"); 
          count++; 
          delay (1); // maybe unneeded? 
        } // end of good response 
    } // end of for loop 
    Serial.println ("Done."); 
    Serial.print ("Found "); 
    Serial.print (count, DEC); 
    Serial.println (" device(s).");
} // end of setup
void loop() {}

lcd1602按键显示不同数字_1602液晶显示屏

加载库文件

这里下载最新的New LiquidCrystal,手动添加到你的 Arduino IDE中。(ps:记得修改你的I2C地址,把LiquidCrystal_I2C lcd(0x3F,2,1,0,4,5,6,7);0x3F改为你的真实地址)

示例代码

/* Demonstration sketch for PCF8574T I2C LCD Backpack Uses library from https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads GNU General Public License, version 3 (GPL-3.0) */ 
#include <Wire.h> 
#include <LCD.h> 
#include <LiquidCrystal_I2C.h> 
LiquidCrystal_I2C lcd(0x3F,2,1,0,4,5,6,7); // 0x27 is the I2C bus address for an unmodified backpack 
void setup() { // activate LCD module 
  lcd.begin (16,2); // for 16 x 2 LCD module 
  lcd.setBacklightPin(3,POSITIVE); 
  lcd.setBacklight(HIGH); 
} 
void loop() { 
  lcd.home (); // set cursor to 0,0 
  lcd.print(" tronixlabs.com"); 
  lcd.setCursor (0,1); // go to start of 2nd line 
  lcd.print(millis()); 
  delay(1000); 
  lcd.setBacklight(LOW); // Backlight off delay(250);        
  lcd.setBacklight(HIGH); // Backlight on delay(1000); 
}

参考文献

http://www.instructables.com/id/Using-PCF8574-backpacks-with-LCD-modules-and-Ardui/?ALLSTEPS

本文摘自:http://www.jianshu.com/p/eee98fb5e68f

在这里感谢作者的贡献。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/167358.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 基于Spring MVC + Spring + MyBatis的【超市会员管理系统】

    基于Spring MVC + Spring + MyBatis的【超市会员管理系统】文章目录一、**语言和环境**二、**实现功能**三、**数据库设计**四、**具体要求及推荐实现步骤**五、**实现代码**MySQL数据库:JAVA代码:一、语言和环境实现语言:JAVA语言。使用:MyEclipse/Eclipse+Tomcat+MySql。使用技术:Jsp+Servlet+JavaBean或SpringMVC+Spring+Mybatis。二、实现功能随着信息化时代系统管理的普及,城市中各个每一个超市的会员管理也需要与时.

    2022年6月23日
    22
  • Srvctl命令详解(10g)「建议收藏」

    Srvctl命令详解(10g)「建议收藏」Srvctl命令 Srvctl命令式RAC维护中最常用的命令也是最复杂的命令。这个工具用来维护一下几种资源:Database,Instance,ASM,Service,Listener和NodeApplication,nodeApplication又包括GSD,ONS,VIP。 Srvctl命令的用法: [root@felix2bin]#./srvctl-help…

    2025年9月8日
    6
  • Java程序员如何从码农晋升为架构师,你跟架构师的差别在哪里?

    Java程序员如何从码农晋升为架构师,你跟架构师的差别在哪里?一、如何定义架构师Java架构师,首先要是一个Java程序员,熟练使用各种框架,并知道它们实现的原理。jvm虚拟机原理、调优,懂得jvm能让你写出性能更好的代码;池技术,什么对象池,怎么解决并发量、连接池,线程池。Java反射技术,写框架必备的技术,但是有严重的性能问题,替代方案Java字节码技术;nio,没什么好说的,值得注意的是”直接内存”的特点,使用场景;java多线程同步异步;ja…

    2022年7月8日
    82
  • python安装numpy后pycharm导入不了_如何导入numpy

    python安装numpy后pycharm导入不了_如何导入numpypycharm安装好后numpy的导入pipinstallnumpy使用pip命令在dos环境下出现平台不支持,python版本太高,numpy不匹配,刚开始下的3.7的最新版,重新下载3.6的版本,安装成功。python安装的时候自己选择路径,勾选自动配置环境变量,默认安装路径在一个隐藏的文件夹temp里面,临时文件,容易系统清除。配置项目解释器,将py

    2022年8月26日
    9
  • CentOS 怎么设置某个目录包括子目录的写入权限 777呢「建议收藏」

    CentOS 怎么设置某个目录包括子目录的写入权限 777呢「建议收藏」chmod-R777文件夹例如:chmod-R777/varvar的权限就变成777,var下的所有子目录和文件权限都将变成777

    2022年8月30日
    6
  • Vue分页导航_vue分页组件

    Vue分页导航_vue分页组件Vue分页导航原文链接:https://www.cnblogs.com/vivaxiaonan/p/9987985.html这里我用的是脚手架,粘Viva_nan大佬的代码封装了一个.vue组件。实现效果如下:封装组件newCom.vue代码:<template><divclass=”wrapper”><navclass=”zpagenav”><ulclass=”page-ul”>…

    2022年9月28日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号