扩展库使用说明——LCD1602 I2C
本帖最后由 陈哲东 于 2021-7-1 15:32 编辑1-硬件概述
1602A字符型液晶显示模块是专门用于显示字母、数字、符号等的点阵型液晶显示模块。分4位和8位数据传输方式。提供5×7点阵+游标的显示模式。提供显示数据缓冲区DDRAM、字符发生器CGROM和字符发生器CGRAM,可以使用CGRAM来存储自己定义的最多8个5×8点阵的图形字符的字模数据。提供了丰富的指令设置:清显示;游标回原点;显示开/关;游标开/关;显示字符闪烁;游标移位;显示移位等。
2-引脚定义
3-电路原理图
4-硬件连接
5-图形化模块
1.1602液晶屏引脚初始化
2.1602液晶屏清除
3.1602液晶屏显示字符,坐标设置
4.1602液晶屏显示字符串,坐标设置
5.1602液晶屏显示数字,坐标设置
6.1602液晶屏显示小数,小数精度设置,坐标设置
6-范例代码
#define SOFTIIC_SCL P1_5
#define SOFTIIC_SCL_OUT {P1M1|=0x20;P1M0|=0x20;}//P1_5开漏输出
#define SOFTIIC_SDA P1_4
#define SOFTIIC_SDA_IN {P1M1|=0x10;P1M0&=~0x10;}//P1_4高阻输入
#define SOFTIIC_SDA_OUT {P1M1|=0x10;P1M0|=0x10;}//P1_4开漏输出
#include <STC8HX.h>
uint32 sys_clk = 24000000;//设置PWM、定时器、串口、EEPROM频率参数
#include "mylib/liquidcrysta.h"
#include "lib/delay.h"
void setup()
{
liquidcrysta_init();//LIQUIDCRYSTA初始化
}
void loop()
{
liquidcrysta_clear();//液晶屏清除
liquidcrysta_show_char(0,0,'a');
delay(1000);
liquidcrysta_clear();//液晶屏清除
liquidcrysta_show_string(0,0,"abcd");
delay(1000);
liquidcrysta_clear();//液晶屏清除
liquidcrysta_show_num(0,0,123);
delay(1000);
liquidcrysta_clear();//液晶屏清除
liquidcrysta_show_float(0,0,1.2,1);
delay(1000);
}
void main(void)
{
setup();
while(1){
loop();
}
}
7-LCD测试ADJ值视频
http://www.haohaodada.com/video/new/bbs/LCD1602.mp4
手册资料:
鉴于这是IIC接口的,而不同于 http://www.haohaodada.com/new/bbs/forum.php?mod=viewthread&tid=305&highlight=1602
建议
1. 标题改为更明确的,"扩展库说明——LCD1602(I2C接口)"
2. 添加背面图
3. 图下方,添加一段“注意,这是I2C接口的LCD1602,与单独的LCD1602(http://www.haohaodada.com/new/bbs/forum.php?mod=viewthread&tid=305&highlight=1602)使用方法不同。” 为啥我这个拖拽产生的程序,编译出错呢?
谢谢
为啥我的lcd他不能显示东西啊
本帖最后由 isLucy 于 2021-7-2 11:50 编辑
//player.bilibili.com/player.html?bvid=BV17h411h7G1
要想LCD读取AD数字改怎么写? 接线没问题就是不显示
页:
[1]