Это старая версия документа!


Эксперимент 49. Графический интерфейс секундомера

Попробуем создать первое полезное устройство с использованием TFT дисплея. Пусть это будет простой секундомер. На дисплее будут отображаться часы, минуты и секунды, которые будет отсчитывать секундомер. Также снабдим его кнопкой по нажатию на которую, секундомер будет запускаться и останавливаться. Для красоты дополнительно выведем на дисплей картинку.

Схема эксперимента

Рисунок 1. Монтажная схема эксперимента

Программный код эксперимента

Напишем приветственную надпись на дисплее.

Exp49.py
  1. from machine import Pin, SPI
  2. from tft import TFT_GREEN
  3. import font
  4. import time
  5. _init()
  6. machine.freq(160000000)
  7.  
  8.  
  9. dc = Pin(4, Pin.OUT)
  10. cs = Pin(2, Pin.OUT)
  11. rst = Pin(5, Pin.OUT)
  12.  
  13. spi = SPI(1, baudrate=40000000, polarity=0, phase=0)
  14. tft = TFT_GREEN(128, 160, spi, dc, cs, rst, rotate=0)
  15.  
  16. tft.initr()
  17. tft.clear(tft.rgbcolor(255,251,240))
  18. tft.draw_bmp(0,0,'time.bmp')
  19.  
  20. fontcolor = tft.rgbcolor(39,40,51)
  21.  
  22. tft.text(5, 125, '00', font.terminalfont, fontcolor, 3)
  23. tft.text(41, 125, ":", font.terminalfont, fontcolor, 3)
  24. tft.text(55, 125, '00', font.terminalfont, fontcolor, 3)
  25. tft.text(90, 130, ":", font.terminalfont, fontcolor, 2)
  26. tft.text(98, 132, '00', font.terminalfont, fontcolor, 2)