gfxlcd是图形lcd的处理程序:ili9328、ssd1306、nju6450、触摸屏:ad7843@raspberry pi。

gfxlcd的Python项目详细描述


它是什么
===


raspberry pi上的python图形lcd库。为支持的设备创建一个统一的接口



-ili9486通过spi
-ili9325通过gpio
-ssd1306通过spi
-nju6450通过gpio


是否使用irq
-ad7846/xpt2046


bonus

-hd44780 emulation(与charlcd一起使用)




wiring is below

demos are in demos directory


==
ssd1306
spi

spi

from driver.ssd1306.spi import spi
from driver.ssd1306.ssd1306 import ssd1306
drv=spi()
o=ssd1306(128,64,drv)
o.init()

drv)
o.init()

drv)
o.init()

自定义布线:

gfxlcd.driver.nju6450.gpio导入gpio
gfxlcd.driver.nju6450.nju6450导入nju6450
drv=gpio()
drv.pins={
"a0":17,
"e1":22,
"e2":21,
"d0":23,
"d1":24,
"d2":25,
"d3":12,
"d4":16,
"d5":20,
"d6":26,
"d7":19,
"rst":5,
}
o=nju6450(122,32,drv)
o.init()

drv)
o.init()

"db10":24,
"db11":5,
"db12":12,
"db13":16,
"db14":20,
"db15":21,
"rst":25,
"led":无,
"cs":无drv)
o.init()


o.rotation=270
o.init()



绘图函数
==
绘制像素(x,y)



绘制像素线(从x,从y,到x,到x,到y)


绘制矩形(x1,y1,x2,x2,x2,y2)


绘制圆弧(x1,y1,半径,x,y,x,y,y,y)



绘制圆弧(x1 x1,y1,y1,y1,x2 u角,到u角

fill矩形(x1,y1,x2,y2)

绘制图像(x,y,pil.image)


=[110,57]110-在绘制图像时跳过的颜色


字体
==
字体类实现字体抽象,是一个具有每个字符的字典的类:

(..)
[0x3c,0x66,0x03,0x73,0x66,0x7c,0x00],#U+0047(G)
(…)


目前只有一种字体,8x8,命名为**font8x8**,默认情况下使用。


==


(cs_pin))


可用于int_pin和cs_pin

def回调(位置):
打印('(x,y)',位置)


touch=ad7843(240、320、26、回调、17)
touch.init()

或不使用:


touch=AD7843(240,320)
touch.init()

为真:
尝试:
time.sleep(0.05)
ret=touch.get_position()
如果ret:
打印(ret[0],ret[1])


除了键盘中断:
touch.close()


没有自动校准。必须手动完成。

self.correction={
'x':364,
'y':430,
'ratio_x':14.35,
'ratio_y':10.59
}

==


ssd1306
\spi
spi
spi wiring+2个附加管脚。默认值:

lcd覆盆子pi
接地-----gnd
+3.3v-----+3.3v
scl-----g11
sda-----g10
rst-----g13
d/c-----g6


nju6450
gpio
接线:

lcd覆盆子pi
1(vss)----gnd
2(vdd)----+5v
3(v0)--[-\-]10k
\--gnd
4(a0)---g17
5(e1)---g22
6(e2)----G21
7(r/w)---地面
8(d0)---G23
9(d1)---G24
10(d2)---G25
11(d3)---G12
12(d4)---G16
13(d5)————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————pi 2b

gnd----------gnd
vcc----------3.3
rs----------g27(data[h]/cmd[l])
wr----------g17
rd----------3.3(从不从屏幕读取)
db8—————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————###spi
默认值:

rpi屏蔽
g17----------tp irq
g24----------rs
g25----------rst
g9----------lcd-cs
g7----------tp-cs


==

可以使用char lcd并模拟char lcd

ili drv=iligpio()
ili drv.pins['led']=6
ili drv.pins['cs']=18
lcd=ili9325(240,320,ILI_drv)
lcd.auto_flush=false
lcd.rotation=0

drv=hd44780(lcd)
lcd=charlcd(drv.width,drv.height,drv,0,0)
lcd.init()

lcd.write('-!第二个布拉格!)
lcd.write("-第二行",0,1)
lcd.flush()



欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java找不到当前线程的会话   同步Java同步方法调用非同步方法   这段代码的java时间复杂度是如何列出一个集合的所有子集的?   java Jetty SslConnectionFactory nextProtocol   为什么在java集合中使用游标而不是for循环   java如何对长函数进行单元测试?   如何从java中的文本输入创建数组   java工具栏内容未显示,尽管出现了片段内容   java MediaPlayer无法处理本地文件   java在多次读取时,从TCP服务器读取的数据将挂起   java组织。springframework。数据领域无法将PageImpl强制转换为   java如何使用@WithMockUser并从属性文件中传递用户名和密码?   JavaSpringBootGradle插件2。x如何使用自定义启动器布局工厂   sockets Java客户端和服务器之间使用字符串等进行通信的“行业标准”方法是什么   java变量引用不存在的资源:${project\u loc:project\u name}   搜索如何返回LDAP Java中所有用户的特定属性?   JDK1.8.016x的java密钥斗篷代理问题   spring如何使用Java中的Exchange获取邮件   java Kotlin+Dagger 2:Dagger*文件不会生成   如何在传入的double上执行操作,然后在Java中返回