[Micropython]TPYBoardV10X控制LCD1602显示字符
原创版权归山东萝卜科技有限公司所有,转载必须以链接形式注明作者和原始出处。
1. 实验目的
1. 学习在PC机系统中扩展简单I/O 接口的方法。
2. 进一步学习编制数据输出程序的设计方法。
3. LCD1602的硬件接线方法。
4. TPYboard控制Lcd1602显示字符 。
2. 所需元器件
TPYBoard开发板一块
LCD1602液晶屏一块
电位器3296一个
面包板一块
数据线一条
杜邦线若干
硬件接线方法
1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如下表所示:
编号 | 符号 | 引脚说明 | 编号 | 符号 | 引脚说明 |
1 | VSS | 电源地 | 9 | D2 | 数据 |
2 | VDD | 电源正极 | 10 | D3 | 数据 |
3 | V0 | 液晶显示偏压 | 11 | D4 | 数据 |
4 | RS | 数据/命令选择 | 12 | D5 | 数据 |
5 | RW | 读/写选择 | 13 | D6 | 数据 |
6 | E | 使能信号 | 14 | D7 | 数据 |
7 | D0 | 数据 | 15 | A | 背光源正极 |
8 | D1 | 数据 | 16 | K | 背光源负极 |
1602液晶模块引脚说明:
第1脚:VSS为地电源。
第2脚:VDD接5V正电源。
第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度,下面是实物图与针脚图对应的关系。
第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。
第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
第7~14脚:D0~D7为8位双向数据线。
第15脚:背光源正极。
第16脚:背光源负极。
按照上面针脚对应关系接线ok后,并且导入tpyb_lcd1602.py文件和tpyb_gpio_lcd1602.py文件再可运行main.py了(tpyb_lcd1602.py和pyb_gpio_lcd1602..py可以从官网上下载,最后会告诉下载地址)。
main.py源代码:
# main.py -- put your code here! import pyb from pyb import Pin from pyb import delay, udelay,millis from tpyb_lcd1602 import TPYBoardLcd1602Api from tpyb_gpio_lcd1602 import TPYBoardGpioLcd1602 def main(): lcd = TPYBoardGpioLcd1602(rs_pin=Pin.board.Y10, enable_pin=Pin.board.Y9, d4_pin=Pin.board.Y5, d5_pin=Pin.board.Y6, d6_pin=Pin.board.Y7, d7_pin=Pin.board.Y8, num_lines=2, num_columns=16) lcd.lcd1602_write_string("Hi,TurnipSmart!\n This TPYBoard!") delay(5000) lcd.clear() lcd.lcd1602_write_string("This lcd1602!\n Start Work!") delay(5000) lcd.clear() count = 0 while True: lcd.move_to(0, 0) #%1d 宽度 返回运行当前程序的累计时间,单位是毫秒 lcd.lcd1602_write_string("%1d" % (millis() // 1000)) delay(1000) count += 1 print(count) main()
源代码下载: