MicroPython动手做(38)——控制触摸屏-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

123
返回列表 发新帖
楼主: eagler8

MicroPython动手做(38)——控制触摸屏

[复制链接]
 楼主| 发表于 2020-7-7 15:00 | 显示全部楼层
11、实验之六:红绿灯触摸滑动自锁转换开关


  1. #MicroPython动手做(38)——控制触摸屏
  2. #实验之六:红绿灯触摸滑动自锁转换开关

  3. import touchscreen as ts
  4. import time
  5. import mixno
  6. import lcd
  7. import image
  8. from machine import I2C


  9. lcd.init(freq=15000000,color=0)
  10. i2c = I2C(I2C.I2C0, freq=400000, scl=30, sda=31)
  11. ts.init(i2c)
  12. image = image.Image()
  13. LED_R=mixno.pin(7,mixno.GPIO.OUT)
  14. LED_G=mixno.pin(6,mixno.GPIO.OUT)
  15. x = 0
  16. image = image.draw_rectangle([50,80,60,80],7936,1,1)
  17. while True:
  18.     if 50 < ts.read()[1] < 110 and 80 < ts.read()[2] < 160:
  19.         while 50 < ts.read()[1] < 110 and 80 < ts.read()[2] < 160:
  20.             time.sleep_ms(12)
  21.         x = not x
  22.     if x == 0:
  23.         LED_R.value(0)
  24.     else:
  25.         LED_R.value(1)
  26.     if x == 1:
  27.         LED_G.value(0)
  28.     else:
  29.         LED_G.value(1)
  30.     lcd.display(image)
复制代码


 楼主| 发表于 2020-7-7 15:04 | 显示全部楼层
实验六的场景示意图

32.gif
 楼主| 发表于 2020-7-7 15:07 | 显示全部楼层
MixPY 实验六的图形编程

33.jpg
 楼主| 发表于 2020-7-7 15:30 | 显示全部楼层
12、实验之七:触控全屏变色灯


  1. #MicroPython动手做(38)——控制触摸屏
  2. #实验之七:触控全屏变色灯

  3. import touchscreen as ts
  4. import time
  5. import mixno
  6. import lcd
  7. from machine import I2C


  8. lcd.init(freq=20000000,color=0)
  9. i2c = I2C(I2C.I2C0, freq=400000, scl=30, sda=31)
  10. ts.init(i2c)
  11. LED_R=mixno.pin(7,mixno.GPIO.OUT)
  12. LED_G=mixno.pin(6,mixno.GPIO.OUT)
  13. LED_B=mixno.pin(8,mixno.GPIO.OUT)
  14. while True:
  15.     if ts.read()[0] == 2:
  16.         lcd.clear(248)
  17.         LED_R.value(0)
  18.         time.sleep_ms(500)
  19.         LED_R.value(1)
  20.         lcd.clear(57351)
  21.         LED_G.value(0)
  22.         time.sleep_ms(500)
  23.         LED_G.value(1)
  24.         lcd.clear(7936)
  25.         LED_B.value(0)
  26.         time.sleep_ms(500)
  27.         LED_B.value(1)
  28.     else:
  29.         lcd.clear(0)
  30.         LED_R.value(1)
  31.         LED_G.value(1)
  32.         LED_B.value(1)
复制代码


 楼主| 发表于 2020-7-7 15:51 | 显示全部楼层
MixPY 实验七的图形编程

34.jpg
 楼主| 发表于 2020-7-7 16:13 | 显示全部楼层
实验七的场景示意图

39.gif
 楼主| 发表于 2020-7-7 16:46 | 显示全部楼层
13、实验之八:屏幕触控显示Hello world
  1. #MicroPython动手做(38)——控制触摸屏
  2. #实验之八:屏幕触控显示Hello world

  3. import touchscreen as ts
  4. import time
  5. import mixno
  6. import lcd
  7. import image
  8. from machine import I2C


  9. lcd.init(freq=20000000,color=0)
  10. i2c = I2C(I2C.I2C0, freq=400000, scl=30, sda=31)
  11. ts.init(i2c)
  12. image = image.Image()
  13. LED_G=mixno.pin(6,mixno.GPIO.OUT)
  14. while True:
  15.     if ts.read()[0] == 2:
  16.         print(image.draw_string(0,50,'''Hello
  17.         world''',248,7,mono_space=0))
  18.         lcd.display(image)
  19.         LED_G.value(0)
  20.         time.sleep_ms(3000)
  21.     else:
  22.         LED_G.value(1)
  23.         lcd.clear(0)
复制代码



 楼主| 发表于 2020-7-7 16:56 | 显示全部楼层
实验八的场景示意图

43.gif
 楼主| 发表于 2020-7-7 16:59 | 显示全部楼层
MixPY 实验八的图形编程

40.jpg
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-12-28 01:25 , Processed in 0.203376 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表