Arduino与Proteus仿真实例-LCD1602液晶屏I2C(PCF8574)驱动仿真

LCD1602液晶屏I2C(PCF8574)驱动仿真

PCF8574/74A 通过两线双向 I2C 总线(串行时钟 (SCL)、串行数据 (SDA))提供通用远程 I/O 扩展。

LCD1602液晶显示器是广泛使用的一种字符型液晶显示模块。

在前面的实例中对PCF8574和LCD1602的已经做了详细介绍,请参考:

1、仿真电路原理图

在这里插入图片描述

2、仿真代码实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <Wire.h>
#include <LiquidCrystal\_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2); // PCF8574的通讯地址为0x27

char array1[]="Wellcome!";
char array2[]="hello, Arduino!";
int tim = 50;
unsigned char i = 0;

void setup(){
lcd.init(); // 初始化LCD
lcd.backlight();
}
void loop(){
i = 0;
lcd.setCursor(15,0); // 设置光标位置到第一行
while(array1[i] != NULL){
lcd.scrollDisplayLeft(); //将显示内容向左滚动一格。
lcd.print(array1[i]); // 显示内容
delay(tim); //wait for 250 ms
i++;
}
lcd.clear(); // 清屏
lcd.setCursor(0,1); // 设置光标位置到第二行
i = 0;
while(array2[i] != NULL){
lcd.scrollDisplayRight();
lcd.print(array2[i]);
delay(tim);
i++;
}
lcd.clear();
lcd.setCursor(0,0);
lcd.print(array1);
lcd.setCursor(0,1);
lcd.print(array2);
delay(2000);
}

3、仿真结果

在这里插入图片描述

文章来源: https://iotsmart.blog.csdn.net/article/details/121827815