相信大家对 Microbit 这款开发板都是很熟悉的了, 之前发过一些 Micropython 开发板做的小实验, 大多数都用的 TPYboard 这款开发板今天我们这个实验将使用一款全新的开发板 Turnipbit, 使用和 Turnipbit 异曲同工, 更加适合青少年使用, 更加方便简介
准备工作
TurnipBit 开发套件(板子 + 扩展板) 1 套
Nokia LCD5110(PCD8544)显示屏 1 块
面包板 1 个
杜邦线 若干
可接入互联网的电脑 1 台(需要进入 TurnipBit 的在线编程器)
地址: http://turnipbit.com/PythonEditor/editor.html
实验步骤
1 参考的 TPYBoard v102 控制 5110 的实验和代码, 进行相应的修改链接如下:
http://docs.tpyboard.com/zh/latest/tpyboard/tutorial/v10x/script/
2 将 TurnipBit 开发板与扩展板对接起来, 连接实物图如下:
扩展板的作用就是将 TurnipBit 开发板上所有的引脚进行了引出, 同时还进行了分类, 增加了 3.3V5V 和 GND 的引脚, 方便大家开发使用
3 接下来将 lcd5110 显示屏与扩展板进行相应的连接接线图如下:
LCD5110 显示屏 TurnipBit 扩展板
- RST P0
- CE P1
- DC P5
- DIN P14
- CLK P13
- VCC 3.3V
- BL 3.3V(常亮, 也可接入其他引脚通过高低电平控制亮灭)
- GND GND
4 点击连接: http://turnipbit.com/PythonEditor/editor.html 进入 TurnipBit 的在线编程器录入一下代码:
- from microbit import *
- #127 character ascii font, 5x8 size characters
- font = bytearray(b'\x00\x00\x00\x00\x00\x00\x00\x5f\x00\x00\x00\x07\x00\x07\x00\x14\x7f\x14\x7f\x14\x24\x2a\x7f\x2a\x12\x23\x13\x08\x64\x62\x36\x49\x55\x22\x50\x00\x05\x03\x00\x00\x00\x1c\x22\x41\x00\x00\x41\x22\x1c\x00\x14\x08\x3e\x08\x14\x08\x08\x3e\x08\x08\x00\x50\x30\x00\x00\x08\x08\x08\x08\x08\x00\x60\x60\x00\x00\x20\x10\x08\x04\x02\x3e\x51\x49\x45\x3e\x00\x42\x7f\x40\x00\x42\x61\x51\x49\x46\x21\x41\x45\x4b\x31\x18\x14\x12\x7f\x10\x27\x45\x45\x45\x39\x3c\x4a\x49\x49\x30\x01\x71\x09\x05\x03\x36\x49\x49\x49\x36\x06\x49\x49\x29\x1e\x00\x36\x36\x00\x00\x00\x56\x36\x00\x00\x08\x14\x22\x41\x00\x14\x14\x14\x14\x14\x00\x41\x22\x14\x08\x02\x01\x51\x09\x06\x32\x49\x79\x41\x3e\x7e\x11\x11\x11\x7e\x7f\x49\x49\x49\x36\x3e\x41\x41\x41\x22\x7f\x41\x41\x22\x1c\x7f\x49\x49\x49\x41\x7f\x09\x09\x09\x01\x3e\x41\x49\x49\x7a\x7f\x08\x08\x08\x7f\x00\x41\x7f\x41\x00\x20\x40\x41\x3f\x01\x7f\x08\x14\x22\x41\x7f\x40\x40\x40\x40\x7f\x02\x0c\x02\x7f\x7f\x04\x08\x10\x7f\x3e\x41\x41\x41\x3e\x7f\x09\x09\x09\x06\x3e\x41\x51\x21\x5e\x7f\x09\x19\x29\x46\x46\x49\x49\x49\x31\x01\x01\x7f\x01\x01\x3f\x40\x40\x40\x3f\x1f\x20\x40\x20\x1f\x3f\x40\x38\x40\x3f\x63\x14\x08\x14\x63\x07\x08\x70\x08\x07\x61\x51\x49\x45\x43\x00\x7f\x41\x41\x00\x02\x04\x08\x10\x20\x00\x41\x41\x7f\x00\x04\x02\x01\x02\x04\x40\x40\x40\x40\x40\x00\x01\x02\x04\x00\x20\x54\x54\x54\x78\x7f\x48\x44\x44\x38\x38\x44\x44\x44\x20\x38\x44\x44\x48\x7f\x38\x54\x54\x54\x18\x08\x7e\x09\x01\x02\x0c\x52\x52\x52\x3e\x7f\x08\x04\x04\x78\x00\x44\x7d\x40\x00\x20\x40\x44\x3d\x00\x7f\x10\x28\x44\x00\x00\x41\x7f\x40\x00\x7c\x04\x18\x04\x78\x7c\x08\x04\x04\x78\x38\x44\x44\x44\x38\x7c\x14\x14\x14\x08\x08\x14\x14\x18\x7c\x7c\x08\x04\x04\x08\x48\x54\x54\x54\x20\x04\x3f\x44\x40\x20\x3c\x40\x40\x20\x7c\x1c\x20\x40\x20\x1c\x3c\x40\x30\x40\x3c\x44\x28\x10\x28\x44\x0c\x50\x50\x50\x3c\x44\x64\x54\x4c\x44\x00\x08\x36\x41\x00\x00\x00\x7f\x00\x00\x00\x41\x36\x08\x00\x10\x08\x08\x10\x08\x00\x00\x00\x00\x00')
- #reset
- def reset():
- pin0.write_digital(0) # RST on
- sleep(0.01)
- pin0.write_digital(1) # RST off
- def lcd_write(dc,data):
- pin5.write_digital(dc)#DC=0 select CMD DC=1 select DATA
- pin1.write_digital(0)
- spi.write(data)
- pin1.write_digital(1)
- def lcd_init():
- reset()
- # 初始化配置
- data=bytearray(b'\x21\xC8\x06\x13\x0C\x20\x0C')
- lcd_write(0,data)
- # 清屏
- data = bytearray(504)
- lcd_write(1,data)
- #X 0-83
- #Y 0-5
- def lcd_postion(x,y):
- val_x = bytearray()
- val_x.append (0x80 + x)
- lcd_write(0,val_x)
- val_y = bytearray()
- val_y.append (0x40 + y)
- lcd_write(0,val_y)
- def lcd_print_string(message,x,y):
- lcd_postion(x,y)
- data = bytearray()
- for letter in message:
- i = (ord(letter) - 32)*5
- for b in range (0,5):
- data.append(font[i+b])
- data.append(0x00)
- lcd_write(1, data)
- spi.init(baudrate = 328125, sclk = pin13, mosi = pin14)
- lcd_init()
- lcd_print_string('I am TurnipBit',0,2)
5 将 TurnipBit 通过 USB 数据线接入电脑, 电脑正常显示出 [TURNIPBIT] 可移动存储设备点击页面最底部的 [下载 hex] 按钮, 目录选择 [TURNIPBIT] 磁盘, 将代码下载到 TurnipBit 中
6 等待下载完毕, TurnipBit 会自动运行程序实物效果图:
`
来源: http://geek.csdn.net/news/detail/255545