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


Эксперимент 47. Графические примитивы

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

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

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

Выведем на дисплей различные примитивы.

Exp47.py
  1. from machine import Pin, SPI
  2. from tft import TFT_GREEN
  3. import font
  4. _init()
  5.  
  6.  
  7. dc = Pin(4, Pin.OUT)
  8. cs = Pin(2, Pin.OUT)
  9. rst = Pin(5, Pin.OUT)
  10. spi = SPI(1, baudrate=40000000, polarity=0, phase=0)
  11.  
  12. tft = TFT_GREEN(128, 160, spi, dc, cs, rst, rotate=0)
  13.  
  14. tft.initr()
  15.  
  16. # Заливка всего дисплея черным цветом
  17. tft.clear(tft.COLOR_BLACK)
  18.  
  19. # Отображаем текст "Size 1" синим цветом, размером 1 с началом в точке с координатой 0, 0
  20. tft.text(0,0,"Size 1", font.terminalfont, tft.COLOR_BLUE, 1)
  21.  
  22. # Отображаем текст "Long text, Long text, Long text" красным цветом, размером 1 с началом в точке с координатой 0, 10.
  23. # Длинный текст автоматически переносится на новую строку
  24. tft.text(0,10,"Long text, Long text, Long text", font.terminalfont, tft.COLOR_RED, 1)
  25.  
  26. # Отображаем текст "Size 2" зеленым цветом, размером 2 с началом в точке с координатой 0, 30
  27. tft.text(0,30,"Size 2", font.terminalfont, tft.COLOR_GREEN, 2)
  28.  
  29. # Отображаем текст "Size 4" голубым цветом, размером 4 с началом в точке с координатой 0, 50
  30. tft.text(0,50,"Size4", font.terminalfont, tft.rgbcolor(0, 255, 255), 4)
  31.  
  32. # Отображаем точку красным цветом с координатой 20, 80
  33. tft.pixel(20, 80, tft.COLOR_RED)
  34.  
  35. # Отображаем закрашенный прямоугольник фиолетовым цветом, началом в точке с координатой 30, 80, шириной 60 и высотой 10
  36. tft.rect(30, 80, 60, 10, tft.COLOR_MAGENTA)
  37.  
  38. # Отображаем горизонтальную линию синим цветом с началом в точке с координатой 20, 95 и шириной 60
  39. tft.hline(20, 95, 60, tft.COLOR_BLUE)
  40.  
  41. # Отображаем вертикальную линию зеленого цвета с началом в точке 10, 95 и высотой 30
  42. tft.vline(10, 95, 30, tft.COLOR_GREEN)
  43.  
  44. # Отображаем линию произвольной направленности красного цвета с началом в точке 15, 100 и концом в точке 100, 160
  45. tft.line(15, 100, 100, 160, tft.COLOR_RED)

tft.clear — очищает дисплей. Закрашивает его целиком одним цветом. Значение цвета передается в качестве параметра.

tft.text — выводит на дисплей текст. Первые два параметра — координаты, третий — строка таксты для вывода, четвертый — шрифт, пятый — цвет, шестой — размер шрифта.

tft.pixel — отображает точку на дисплее. Первые два параметра — координаты, третий — цвет.

tft.rect — рисует на дисплее прямоугольник. Первые два параметра — координаты угла, третий и четвертый — ширину и высоту прямоугольника, пятый — цвет

tft.hline — рисует горизонтальную линию. Первые два параметра — координаты левого конца линии, третий — ширина и четвертый — цвет линии.

tft.vline — рисует вертикальную линию. Первые два параметра — координаты верхнего конца линии, третий — высота и четвертый — цвет линии.

tft.line — рисует линию произвольно направленности. Первые два параметра — координаты одного конца линии, третий и четвертый — координаты второго конца линии, пятый — цвет.

Дополнительное задание

  1. Нарисуй треугольник