12. [Micropython]TPYBoard v102 控制LCD1602显示字符¶
版权声明:翻译整理属于TPYBoard,转载时请以超链接形式标明文章原始出处和作者信息及本声明
12.1. 实验目的¶
- 学习在PC机系统中扩展简单I/O 接口的方法。
- 进一步学习编制数据输出程序的设计方法。
- LCD1602的硬件接线方法。
- TPYboard控制Lcd1602显示字符 。
12.2. 所需元器件¶
- TPYBoard v102开发板 1块
- LCD1602液晶屏 1块
- 电位器3296 1个
- 面包板 1块
- micro USB数据线 1条
- 杜邦线 若干
12.3. 硬件接线方法¶
LCD1602采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如下表所示:
12.4. LCD1602液晶模块引脚说明¶
第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可以从官网上下载,最后会告诉下载地址)。
12.5. 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)
if __name__ == "__main__":
main()