极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 21222|回复: 7

IIC SPI 1602液晶模块

[复制链接]
发表于 2014-6-20 08:19:36 | 显示全部楼层 |阅读模式
本帖最后由 迷你强 于 2016-11-12 21:14 编辑

IIC SPI 1602液晶模块其主要特点是只需要使用4-5根线就可以驱动一块1602液晶屏,极大的降低了接线的复杂程度。

模块默认为IIC驱动模式,接线为
* 5V to 5V pin
* GND to GND pin
* CLK to SCL pin
* DAT to SDA pin

IIC模式下如果我们需要使用多块该模块,我们可以使用不同地址位。在模块背面有A0,A1,A2三个焊盘,用焊锡把焊盘引脚相连,我们就能变化地址位,这样子就可以驱动多块1602液晶了。

IIC模式驱动代码如下


  1. /*
  2. 连线:
  3. * 5V to 5V pin
  4. * GND to GND pin
  5. * CLK to SCL pin
  6. * DAT to SDA pin
  7. */

  8. #include "Wire.h"
  9. #include "LiquidCrystal.h"

  10. // 初始化,地址为0
  11. LiquidCrystal lcd(0);

  12. void setup() {
  13.   // 16x2
  14.   lcd.begin(16, 2);
  15.   // 打印 HelloWorld
  16.   lcd.print("hello, world!");
  17. }

  18. void loop() {
  19.   // 光标位置(行,列):1,0
  20.   lcd.setCursor(0, 1);
  21.   // 打印执行时间,单位:S
  22.   lcd.print(millis()/1000);
  23.   // 背光闪烁
  24.   lcd.setBacklight(HIGH);
  25.   delay(500);
  26.   lcd.setBacklight(LOW);
  27.   delay(500);
  28. }
复制代码


使用SPI驱动方式我们需要在模块背面找到SPI Enable焊盘,用一些焊锡把两个焊盘连通,就可以使用SPI模式了。

SPI模式下接线为
* 5V to 5V pin
* GND to GND pin
* CLK to Digital 2
* DAT to Digital 3
* LAT to Digital 4
D2-D4接口是随意的数字IO口就可以。

SPI模式驱动代码如下


  1. /*
  2. 连线:
  3. * 5V to 5V pin
  4. * GND to GND pin
  5. * CLK to Digital 2
  6. * DAT to Digital 3
  7. * LAT to Digital 4
  8. */

  9. #include "Wire.h"
  10. #include "LiquidCrystal.h"

  11. // 初始化
  12. LiquidCrystal lcd(3, 2, 4);

  13. void setup() {
  14.   // 16x2
  15.   lcd.begin(16, 2);
  16.   // 打印 HelloWorld
  17.   lcd.print("hello, world!");
  18. }

  19. void loop() {

  20.   // 光标位置(行,列):1,0
  21.   lcd.setCursor(0, 1);
  22.   // 打印执行时间,单位:S
  23.   lcd.print(millis()/1000);
  24.   // 背光闪烁
  25.   lcd.setBacklight(HIGH);
  26.   delay(500);
  27.   lcd.setBacklight(LOW);
  28.   delay(500);
  29. }
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2014-8-6 08:26:39 | 显示全部楼层
这个和四位接法 然后利用liquid crystal 库 来驱动 少了几个接口 但是这些lcd里面的函数好像是一样的? 另外,为什么要包含 wire.h 这个文件? 我看下面的代码 都是lquid crystal.h 里面 和四位接法的没有特别差别啊
回复 支持 反对

使用道具 举报

发表于 2014-8-6 08:28:01 | 显示全部楼层
SPI IIC 这些指的都是通讯方式吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-8-7 12:12:23 | 显示全部楼层
Friday 发表于 2014-8-6 08:26
这个和四位接法 然后利用liquid crystal 库 来驱动 少了几个接口 但是这些lcd里面的函数好像是一样的? 另外 ...

wire.h是IIC通信库。语法和lquid crystal库是没有区别的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-8-7 12:12:44 | 显示全部楼层
Friday 发表于 2014-8-6 08:28
SPI IIC 这些指的都是通讯方式吗?

恩,指的是通信协议方式。
回复 支持 反对

使用道具 举报

发表于 2016-12-10 22:06:11 | 显示全部楼层
开发了用一根驱动1602的小模块
即只要一根线,就可驱动1602,这对ATTiny85等只有8个脚的单片机非常有利!
回复 支持 反对

使用道具 举报

发表于 2017-3-20 09:56:18 | 显示全部楼层
hubertdong 发表于 2016-12-10 22:06
开发了用一根驱动1602的小模块
即只要一根线,就可驱动1602,这对ATTiny85等只有8个脚的单片机非常 ...

                   分享一下
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-23 22:34 , Processed in 0.040227 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表