“指间ESP按键操作”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
 
(未显示同一用户的1个中间版本)
第34行: 第34行:
 
**该程序使用板载TFT屏幕画出两个圆角矩形用于标识状态,非按下时为青色,按下时为黄色。
 
**该程序使用板载TFT屏幕画出两个圆角矩形用于标识状态,非按下时为青色,按下时为黄色。
 
[[File:Tftbutton.png|600px|center]]
 
[[File:Tftbutton.png|600px|center]]
*import为引用所需文件,包括display(屏幕驱动),Pin(IO口驱动)。之后声明按键A与B,初始化TFT并使用背景色"bkcolor"填充屏幕。主程序中扫描按键,按下则绘制黄色圆角矩形,否则绘制青色圆角矩形
+
**程序详解:import为引用所需文件,包括display(屏幕驱动),Pin(IO口驱动)
 +
<source lang="c++">
 +
import machine, display
 +
from machine import Pin
 +
</source>
 +
之后声明按键A与B
 +
<source lang="c++">
 +
btA = Pin(0, Pin.IN)
 +
btB = Pin(35, Pin.IN)
 +
</source>
 +
初始化TFT并使用背景色"bkcolor"填充屏幕
 +
<source lang="c++">
 +
bkcolor = 0x333333
 +
 
 +
tft = display.TFT()
 +
tft.init(tft.ST7789)
 +
 
 +
tft.clear()
 +
tft.rect(0, 0, 240, 240, bkcolor, bkcolor)
 +
</source>
 +
主程序中扫描按键,按下则绘制黄色圆角矩形,否则绘制青色圆角矩形
 +
<source lang="c++">
 +
while True:
 +
    if btA.value():
 +
        tft.roundrect(10, 110, 50, 50, 10, bkcolor, 0x00F0F0)
 +
    else:
 +
        tft.roundrect(10, 110, 50, 50, 10, bkcolor, 0xF0F000)
 +
    if btB.value():
 +
        tft.roundrect(180, 110, 50, 50, 10, bkcolor, 0x00F0F0)
 +
    else:
 +
        tft.roundrect(180, 110, 50, 50, 10, bkcolor, 0xF0F000)
 +
</source>
 
<br>
 
<br>
 
|}
 
|}

2019年7月25日 (四) 06:39的最新版本

指间ESP按键操作


指间ESP开发板板载了左右两个按键,分别对应IO0(左)、IO35(右),该示例展示了如何驱动两个按键读取按下状态

import machine, display 
from machine import Pin

btA = Pin(0, Pin.IN)
btB = Pin(35, Pin.IN)

bkcolor = 0x333333

tft = display.TFT()
tft.init(tft.ST7789)

tft.clear()
tft.rect(0, 0, 240, 240, bkcolor, bkcolor)

while True:
    if btA.value():
        tft.roundrect(10, 110, 50, 50, 10, bkcolor, 0x00F0F0)
    else:
        tft.roundrect(10, 110, 50, 50, 10, bkcolor, 0xF0F000)
    if btB.value():
        tft.roundrect(180, 110, 50, 50, 10, bkcolor, 0x00F0F0)
    else:
        tft.roundrect(180, 110, 50, 50, 10, bkcolor, 0xF0F000)
    • 该程序使用板载TFT屏幕画出两个圆角矩形用于标识状态,非按下时为青色,按下时为黄色。
Tftbutton.png
    • 程序详解:import为引用所需文件,包括display(屏幕驱动),Pin(IO口驱动)
import machine, display 
from machine import Pin

之后声明按键A与B

btA = Pin(0, Pin.IN)
btB = Pin(35, Pin.IN)

初始化TFT并使用背景色"bkcolor"填充屏幕

bkcolor = 0x333333

tft = display.TFT()
tft.init(tft.ST7789)

tft.clear()
tft.rect(0, 0, 240, 240, bkcolor, bkcolor)

主程序中扫描按键,按下则绘制黄色圆角矩形,否则绘制青色圆角矩形

while True:
    if btA.value():
        tft.roundrect(10, 110, 50, 50, 10, bkcolor, 0x00F0F0)
    else:
        tft.roundrect(10, 110, 50, 50, 10, bkcolor, 0xF0F000)
    if btB.value():
        tft.roundrect(180, 110, 50, 50, 10, bkcolor, 0x00F0F0)
    else:
        tft.roundrect(180, 110, 50, 50, 10, bkcolor, 0xF0F000)




返回指间ESP开发板编程手册界面