2021-05-06 06:14:24 +00:00
<!DOCTYPE html>
< html class = "writer-html5" lang = "en" >
< head >
< meta charset = "utf-8" / >
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" / >
< title > st7789py — st7789py 0.1.0 documentation< / title >
2021-12-23 18:54:40 +00:00
< link rel = "stylesheet" href = "../_static/pygments.css" type = "text/css" / >
< link rel = "stylesheet" href = "../_static/css/theme.css" type = "text/css" / >
2021-05-06 06:14:24 +00:00
<!-- [if lt IE 9]>
< script src = "../_static/js/html5shiv.min.js" > < / script >
<![endif]-->
2023-11-18 23:31:25 +00:00
< script src = "../_static/jquery.js?v=5d32c60e" > < / script >
< script src = "../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c" > < / script >
< script src = "../_static/documentation_options.js?v=01f34227" > < / script >
< script src = "../_static/doctools.js?v=888ff710" > < / script >
< script src = "../_static/sphinx_highlight.js?v=dc90522c" > < / script >
2021-12-23 18:54:40 +00:00
< script src = "../_static/js/theme.js" > < / script >
2021-05-06 06:14:24 +00:00
< link rel = "index" title = "Index" href = "../genindex.html" / >
< link rel = "search" title = "Search" href = "../search.html" / >
< / head >
2021-12-23 18:54:40 +00:00
< body class = "wy-body-for-nav" >
2021-05-06 06:14:24 +00:00
< div class = "wy-grid-for-nav" >
< nav data-toggle = "wy-nav-shift" class = "wy-nav-side" >
< div class = "wy-side-scroll" >
< div class = "wy-side-nav-search" style = "background: #2980B9" >
2023-11-18 23:31:25 +00:00
< a href = "../index.html" class = "icon icon-home" >
st7789py
2021-05-06 06:14:24 +00:00
< / a >
< div role = "search" >
< form id = "rtd-search-form" class = "wy-form" action = "../search.html" method = "get" >
2023-11-18 23:31:25 +00:00
< input type = "text" name = "q" placeholder = "Search docs" aria-label = "Search docs" / >
2021-05-06 06:14:24 +00:00
< input type = "hidden" name = "check_keywords" value = "yes" / >
< input type = "hidden" name = "area" value = "default" / >
< / form >
< / div >
2021-12-23 18:54:40 +00:00
< / div > < div class = "wy-menu wy-menu-vertical" data-spy = "affix" role = "navigation" aria-label = "Navigation menu" >
2021-08-12 15:54:15 +00:00
< p class = "caption" role = "heading" > < span class = "caption-text" > Contents:< / span > < / p >
2021-05-06 06:14:24 +00:00
< ul >
< li class = "toctree-l1" > < a class = "reference internal" href = "../index.html" > st7789py Driver< / a > < / li >
2023-11-18 23:31:25 +00:00
< li class = "toctree-l1" > < a class = "reference internal" href = "../st7789py.html" > st7789py Reference< / a > < ul >
< li class = "toctree-l2" > < a class = "reference internal" href = "../st7789py.html#st7789py.color565" > < code class = "docutils literal notranslate" > < span class = "pre" > color565()< / span > < / code > < / a > < / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789< / span > < / code > < / a > < ul >
2023-11-30 01:56:48 +00:00
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.init" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.init()< / span > < / code > < / a > < / li >
2023-11-18 23:31:25 +00:00
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.hard_reset" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.hard_reset()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.soft_reset" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.soft_reset()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.sleep_mode" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.sleep_mode()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.inversion_mode" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.inversion_mode()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.rotation" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.rotation()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.vline" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.vline()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.hline" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.hline()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.pixel" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.pixel()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.blit_buffer" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.blit_buffer()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.rect" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.rect()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.fill_rect" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.fill_rect()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.fill" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.fill()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.line" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.line()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.vscrdef" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.vscrdef()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.vscsad" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.vscsad()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.text" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.text()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.bitmap" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.bitmap()< / span > < / code > < / a > < / li >
2023-11-30 01:56:48 +00:00
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.pbitmap" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.pbitmap()< / span > < / code > < / a > < / li >
2023-11-18 23:31:25 +00:00
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.write" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.write()< / span > < / code > < / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.write_width" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.write_width()< / span > < / code > < / a > < / li >
2023-11-30 01:56:48 +00:00
< li class = "toctree-l3" > < a class = "reference internal" href = "../st7789py.html#st7789py.ST7789.polygon" > < code class = "docutils literal notranslate" > < span class = "pre" > ST7789.polygon()< / span > < / code > < / a > < / li >
2023-11-18 23:31:25 +00:00
< / ul >
< / li >
< / ul >
< / li >
2021-05-06 06:14:24 +00:00
< li class = "toctree-l1" > < a class = "reference internal" href = "../examples.html" > Example Programs< / a > < ul >
2023-11-30 01:56:48 +00:00
< li class = "toctree-l2" > < a class = "reference internal" href = "../examples.html#configuration-modules" > Configuration modules< / a > < ul >
< li class = "toctree-l3" > < a class = "reference internal" href = "../configs/atom_s3.html" > M5STACK AtomS3 128x128 (GC9107)< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/atom_s3.html#tft-configs-atom-s3-tft-config-py" > tft_configs/atom_s3/tft_config.py< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/atom_s3.html#tft-configs-atom-s3-tft-buttons-py" > tft_configs/atom_s3/tft_buttons.py< / a > < / li >
2023-11-18 23:31:25 +00:00
< / ul >
< / li >
2023-11-30 01:56:48 +00:00
< li class = "toctree-l3" > < a class = "reference internal" href = "../configs/esp32_320x240.html" > Generic ESP32 320x240< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/esp32_320x240.html#tft-configs-esp32-320x240-tft-config-py" > tft_configs/esp32_320x240/tft_config.py< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/esp32_320x240.html#tft-configs-esp32-320x240-tft-buttons-py" > tft_configs/esp32_320x240/tft_buttons.py< / a > < / li >
2023-11-18 23:31:25 +00:00
< / ul >
< / li >
2023-11-30 01:56:48 +00:00
< li class = "toctree-l3" > < a class = "reference internal" href = "../configs/m5stack_core.html" > M5STACK CORE 320x240 (ILI9342)< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/m5stack_core.html#tft-configs-m5stack-core-tft-config-py" > tft_configs/m5stack_core/tft_config.py< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/m5stack_core.html#tft-configs-m5stack-core-tft-buttons-py" > tft_configs/m5stack_core/tft_buttons.py< / a > < / li >
2021-12-23 18:54:40 +00:00
< / ul >
< / li >
2023-11-30 01:56:48 +00:00
< li class = "toctree-l3" > < a class = "reference internal" href = "../configs/m5stack_core2.html" > M5STACK CORE2 320x240 (ILI9342)< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/m5stack_core2.html#tft-configs-m5stack-core2-tft-config-py" > tft_configs/m5stack_core2/tft_config.py< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/m5stack_core2.html#tft-configs-m5stack-core2-tft-buttons-py" > tft_configs/m5stack_core2/tft_buttons.py< / a > < / li >
2023-11-18 23:31:25 +00:00
< / ul >
< / li >
2023-11-30 01:56:48 +00:00
< li class = "toctree-l3" > < a class = "reference internal" href = "../configs/m5stack_core3.html" > M5STACK CoreS3 320x240 (ILI9342)< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/m5stack_core3.html#tft-configs-m5stack-core3-tft-config-py" > tft_configs/m5stack_core3/tft_config.py< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/m5stack_core3.html#tft-configs-m5stack-core3-tft-buttons-py" > tft_configs/m5stack_core3/tft_buttons.py< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../configs/rp2040_touch_lcd_128.html" > RP2040-Touch-LCD-1.28 240x240 (GC9A01)< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/rp2040_touch_lcd_128.html#tft-configs-rp2040-touch-lcd-128-tft-config-py" > tft_configs/rp2040_touch_lcd_128/tft_config.py< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/rp2040_touch_lcd_128.html#tft-configs-rp2040-touch-lcd-128-tft-buttons-py" > tft_configs/rp2040_touch_lcd_128/tft_buttons.py< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../configs/t-dongle-s3.html" > LilyGo T-Dongle-S3 80x160 (ST7735)< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/t-dongle-s3.html#tft-configs-t-dongle-s3-tft-config-py" > tft_configs/t-dongle-s3/tft_config.py< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/t-dongle-s3.html#tft-configs-t-dongle-s3-tft-buttons-py" > tft_configs/t-dongle-s3/tft_buttons.py< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../configs/t-embed.html" > LilyGo T-embed 170x320< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/t-embed.html#tft-configs-t-embed-tft-config-py" > tft_configs/t-embed/tft_config.py< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/t-embed.html#tft-configs-t-embed-tft-buttons-py" > tft_configs/t-embed/tft_buttons.py< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../configs/t_qt_pro.html" > LilyGo T-QT Pro 128x128 (GC9107)< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/t_qt_pro.html#tft-configs-t-qt-pro-tft-config-py" > tft_configs/t_qt_pro/tft_config.py< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/t_qt_pro.html#tft-configs-t-qt-pro-tft-buttons-py" > tft_configs/t_qt_pro/tft_buttons.py< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../configs/ttgo_tdisplay.html" > LilyGo T-DISPLAY 135x240< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/ttgo_tdisplay.html#tft-configs-ttgo-tdisplay-tft-config-py" > tft_configs/ttgo_tdisplay/tft_config.py< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/ttgo_tdisplay.html#tft-configs-ttgo-tdisplay-tft-buttons-py" > tft_configs/ttgo_tdisplay/tft_buttons.py< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../configs/ttgo_tdisplay_rp2040.html" > LilyGo T-DISPLAY RP2040 135x240< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/ttgo_tdisplay_rp2040.html#tft-configs-ttgo-tdisplay-rp2040-tft-config-py" > tft_configs/ttgo_tdisplay_rp2040/tft_config.py< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/ttgo_tdisplay_rp2040.html#tft-configs-ttgo-tdisplay-rp2040-tft-buttons-py" > tft_configs/ttgo_tdisplay_rp2040/tft_buttons.py< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../configs/waveshare_114.html" > Waveshare Pico LCD 1.14 135x240< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/waveshare_114.html#tft-configs-waveshare-114-tft-config-py" > tft_configs/waveshare_114/tft_config.py< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/waveshare_114.html#tft-configs-waveshare-114-tft-buttons-py" > tft_configs/waveshare_114/tft_buttons.py< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../configs/waveshare_13.html" > Waveshare Pico LCD 1.3 240x240< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/waveshare_13.html#tft-configs-waveshare-13-tft-config-py" > tft_configs/waveshare_13/tft_config.py< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/waveshare_13.html#tft-configs-waveshare-13-tft-buttons-py" > tft_configs/waveshare_13/tft_buttons.py< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../configs/waveshare_2.html" > Waveshare Pico LCD 2 240x320< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/waveshare_2.html#tft-configs-waveshare-2-tft-config-py" > tft_configs/waveshare_2/tft_config.py< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../configs/waveshare_2.html#tft-configs-waveshare-2-tft-buttons-py" > tft_configs/waveshare_2/tft_buttons.py< / a > < / li >
< / ul >
< / li >
< / ul >
< / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "../examples.html#examples" > Examples< / a > < ul >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/alien.html" > alien.py< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/boxlines.html" > boxlines.py< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/chango.html" > chango.py< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/color_test.html" > color_test.py< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/colorbars.html" > colorbars.py< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/feathers.html" > feathers.py< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/fonts.html" > fonts.py< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/hello.html" > hello.py< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/noto_fonts.html" > noto_fonts.py< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/proverbs.html" > proverbs.py< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/roids.html" > roids.py< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/rotations.html" > rotations.py< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/scroll.html" > scroll.py< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/tiny_hello.html" > tiny_hello.py< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../examples/tiny_toasters.html" > tiny_toasters.py< / a > < / li >
2021-12-23 18:54:40 +00:00
< / ul >
< / li >
2021-05-06 06:14:24 +00:00
< / ul >
< / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "../fonts.html" > Fonts< / a > < ul >
2023-11-30 01:56:48 +00:00
< li class = "toctree-l2" > < a class = "reference internal" href = "../fonts.html#bitmap-fonts" > Bitmap Fonts< / a > < ul >
< li class = "toctree-l3" > < a class = "reference internal" href = "../fonts.html#bitmap-font-conversion" > Bitmap Font Conversion< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../fonts.html#bitmap-font-samples" > Bitmap Font Samples< / a > < ul >
< li class = "toctree-l4" > < a class = "reference internal" href = "../fonts.html#x8-rom-fonts" > 8x8 Rom Fonts< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../fonts.html#x16-rom-fonts" > 8x16 Rom Fonts< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../fonts.html#id2" > 16x16 Rom Fonts< / a > < / li >
< li class = "toctree-l4" > < a class = "reference internal" href = "../fonts.html#x32-rom-fonts" > 16x32 Rom Fonts< / a > < / li >
< / ul >
< / li >
< / ul >
< / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "../fonts.html#true-type-fonts" > True Type fonts< / a > < ul >
< li class = "toctree-l3" > < a class = "reference internal" href = "../fonts.html#true-type-font-conversion" > True-Type Font Conversion< / a > < / li >
< / ul >
< / li >
< / ul >
< / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "../utilities.html" > Utilities< / a > < ul >
< li class = "toctree-l2" > < a class = "reference internal" href = "../utilities/create_png_examples.html" > create_png_examples.py< / a > < ul >
< li class = "toctree-l3" > < a class = "reference internal" href = "../utilities/create_png_examples.html#example" > Example< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../utilities/create_png_examples.html#usage" > Usage< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "../utilities/image_converter.html" > image_converter.py< / a > < ul >
< li class = "toctree-l3" > < a class = "reference internal" href = "../utilities/image_converter.html#example" > Example< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../utilities/image_converter.html#usage" > Usage< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "../utilities/make_colorbars_bitmap.html" > make_colorbars_bitmap.py< / a > < ul >
< li class = "toctree-l3" > < a class = "reference internal" href = "../utilities/make_colorbars_bitmap.html#example" > Example< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../utilities/make_colorbars_bitmap.html#usage" > Usage< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "../utilities/sprites_converter.html" > sprites_converter.py< / a > < ul >
< li class = "toctree-l3" > < a class = "reference internal" href = "../utilities/sprites_converter.html#example" > Example< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../utilities/sprites_converter.html#usage" > Usage< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "../utilities/text_font_converter.html" > text_font_converter.py< / a > < ul >
< li class = "toctree-l3" > < a class = "reference internal" href = "../utilities/text_font_converter.html#example" > Example< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../utilities/text_font_converter.html#usage" > Usage< / a > < / li >
< / ul >
< / li >
< li class = "toctree-l2" > < a class = "reference internal" href = "../utilities/write_font_converter.html" > write_font_converter.py< / a > < ul >
< li class = "toctree-l3" > < a class = "reference internal" href = "../utilities/write_font_converter.html#example" > Example< / a > < / li >
< li class = "toctree-l3" > < a class = "reference internal" href = "../utilities/write_font_converter.html#usage" > Usage< / a > < / li >
< / ul >
< / li >
2021-05-06 06:14:24 +00:00
< / ul >
< / li >
2023-11-30 01:56:48 +00:00
< li class = "toctree-l1" > < a class = "reference internal" href = "../genindex.html" > Index< / a > < / li >
2021-05-06 06:14:24 +00:00
< / ul >
< / div >
< / div >
< / nav >
2021-12-23 18:54:40 +00:00
< section data-toggle = "wy-nav-shift" class = "wy-nav-content-wrap" > < nav class = "wy-nav-top" aria-label = "Mobile navigation menu" style = "background: #2980B9" >
2021-05-06 06:14:24 +00:00
< i data-toggle = "wy-nav-top" class = "fa fa-bars" > < / i >
< a href = "../index.html" > st7789py< / a >
< / nav >
< div class = "wy-nav-content" >
< div class = "rst-content style-external-links" >
2021-12-23 18:54:40 +00:00
< div role = "navigation" aria-label = "Page navigation" >
2021-05-06 06:14:24 +00:00
< ul class = "wy-breadcrumbs" >
2023-11-18 23:31:25 +00:00
< li > < a href = "../index.html" class = "icon icon-home" aria-label = "Home" > < / a > < / li >
< li class = "breadcrumb-item" > < a href = "index.html" > Module code< / a > < / li >
< li class = "breadcrumb-item active" > st7789py< / li >
2021-05-06 06:14:24 +00:00
< li class = "wy-breadcrumbs-aside" >
< / li >
< / ul >
< hr / >
< / div >
< div role = "main" class = "document" itemscope = "itemscope" itemtype = "http://schema.org/Article" >
< div itemprop = "articleBody" >
2021-12-23 18:54:40 +00:00
2021-05-06 06:14:24 +00:00
< h1 > Source code for st7789py< / h1 > < div class = "highlight" > < pre >
< span > < / span > < span class = "sd" > " " " < / span >
2023-11-18 23:31:25 +00:00
< span class = "sd" > MIT License< / span >
2021-05-06 06:14:24 +00:00
2023-11-18 23:31:25 +00:00
< span class = "sd" > Copyright (c) 2020-2023 Russ Hughes< / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Copyright (c) 2019 Ivan Belokobylskiy< / span >
< span class = "sd" > Permission is hereby granted, free of charge, to any person obtaining a copy< / span >
< span class = "sd" > of this software and associated documentation files (the " Software" ), to deal< / span >
< span class = "sd" > in the Software without restriction, including without limitation the rights< / span >
< span class = "sd" > to use, copy, modify, merge, publish, distribute, sublicense, and/or sell< / span >
< span class = "sd" > copies of the Software, and to permit persons to whom the Software is< / span >
< span class = "sd" > furnished to do so, subject to the following conditions:< / span >
2023-11-18 23:31:25 +00:00
< span class = "sd" > The above copyright notice and this permission notice shall be included in all< / span >
< span class = "sd" > copies or substantial portions of the Software.< / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > THE SOFTWARE IS PROVIDED " AS IS" , WITHOUT WARRANTY OF ANY KIND, EXPRESS OR< / span >
< span class = "sd" > IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,< / span >
< span class = "sd" > FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE< / span >
< span class = "sd" > AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER< / span >
< span class = "sd" > LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,< / span >
2023-11-18 23:31:25 +00:00
< span class = "sd" > OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE< / span >
< span class = "sd" > SOFTWARE.< / span >
2021-05-06 06:14:24 +00:00
2021-05-06 18:04:01 +00:00
< span class = "sd" > The driver is based on devbis' st7789py_mpy module from< / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > https://github.com/devbis/st7789py_mpy.< / span >
2023-11-18 23:31:25 +00:00
< span class = "sd" > This driver supports:< / span >
2021-05-06 18:04:01 +00:00
2023-11-18 23:31:25 +00:00
< span class = "sd" > - 320x240, 240x240, 135x240 and 128x128 pixel displays< / span >
2021-05-06 18:04:01 +00:00
< span class = "sd" > - Display rotation< / span >
2023-11-18 23:31:25 +00:00
< span class = "sd" > - RGB and BGR color orders< / span >
2021-05-06 18:04:01 +00:00
< span class = "sd" > - Hardware based scrolling< / span >
< span class = "sd" > - Drawing text using 8 and 16 bit wide bitmap fonts with heights that are< / span >
< span class = "sd" > multiples of 8. Included are 12 bitmap fonts derived from classic pc< / span >
< span class = "sd" > BIOS text mode fonts.< / span >
< span class = "sd" > - Drawing text using converted TrueType fonts.< / span >
< span class = "sd" > - Drawing converted bitmaps< / span >
2023-11-18 23:31:25 +00:00
< span class = "sd" > - Named color constants< / span >
< span class = "sd" > - BLACK< / span >
< span class = "sd" > - BLUE< / span >
< span class = "sd" > - RED< / span >
< span class = "sd" > - GREEN< / span >
< span class = "sd" > - CYAN< / span >
< span class = "sd" > - MAGENTA< / span >
< span class = "sd" > - YELLOW< / span >
< span class = "sd" > - WHITE< / span >
2021-05-06 18:04:01 +00:00
2021-05-06 06:14:24 +00:00
< span class = "sd" > " " " < / span >
2023-11-30 01:56:48 +00:00
< span class = "kn" > from< / span > < span class = "nn" > math< / span > < span class = "kn" > import< / span > < span class = "n" > sin< / span > < span class = "p" > ,< / span > < span class = "n" > cos< / span >
< span class = "c1" > #< / span >
< span class = "c1" > # This allows sphinx to build the docs< / span >
< span class = "c1" > #< / span >
< span class = "k" > try< / span > < span class = "p" > :< / span >
< span class = "kn" > from< / span > < span class = "nn" > time< / span > < span class = "kn" > import< / span > < span class = "n" > sleep_ms< / span >
< span class = "k" > except< / span > < span class = "ne" > ImportError< / span > < span class = "p" > :< / span >
< span class = "n" > sleep_ms< / span > < span class = "o" > =< / span > < span class = "k" > lambda< / span > < span class = "n" > ms< / span > < span class = "p" > :< / span > < span class = "kc" > None< / span >
< span class = "n" > uint< / span > < span class = "o" > =< / span > < span class = "nb" > int< / span >
< span class = "n" > const< / span > < span class = "o" > =< / span > < span class = "k" > lambda< / span > < span class = "n" > x< / span > < span class = "p" > :< / span > < span class = "n" > x< / span >
< span class = "k" > class< / span > < span class = "nc" > micropython< / span > < span class = "p" > :< / span >
< span class = "nd" > @staticmethod< / span >
< span class = "k" > def< / span > < span class = "nf" > viper< / span > < span class = "p" > (< / span > < span class = "n" > func< / span > < span class = "p" > ):< / span >
< span class = "k" > return< / span > < span class = "n" > func< / span >
< span class = "nd" > @staticmethod< / span >
< span class = "k" > def< / span > < span class = "nf" > native< / span > < span class = "p" > (< / span > < span class = "n" > func< / span > < span class = "p" > ):< / span >
< span class = "k" > return< / span > < span class = "n" > func< / span >
< span class = "c1" > #< / span >
< span class = "c1" > # If you don' t need to build the docs, you can remove all of the lines between< / span >
< span class = "c1" > # here and the comment above except for the " from time import sleep_ms" line.< / span >
< span class = "c1" > #< / span >
< span class = "kn" > import< / span > < span class = "nn" > struct< / span >
< span class = "c1" > # ST7789 commands< / span >
< span class = "n" > _ST7789_SWRESET< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x01< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_SLPIN< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x10< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_SLPOUT< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x11< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_NORON< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x13< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_INVOFF< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x20< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_INVON< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x21< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_DISPOFF< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x28< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_DISPON< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x29< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_CASET< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x2a< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_RASET< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x2b< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_RAMWR< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x2c< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_VSCRDEF< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x33< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_COLMOD< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x3a< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_MADCTL< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x36< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_VSCSAD< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \x37< / span > < span class = "s2" > " < / span >
< span class = "n" > _ST7789_RAMCTL< / span > < span class = "o" > =< / span > < span class = "sa" > b< / span > < span class = "s2" > " < / span > < span class = "se" > \xb0< / span > < span class = "s2" > " < / span >
< span class = "c1" > # MADCTL bits< / span >
< span class = "n" > _ST7789_MADCTL_MY< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x80< / span > < span class = "p" > )< / span >
< span class = "n" > _ST7789_MADCTL_MX< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x40< / span > < span class = "p" > )< / span >
< span class = "n" > _ST7789_MADCTL_MV< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x20< / span > < span class = "p" > )< / span >
< span class = "n" > _ST7789_MADCTL_ML< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x10< / span > < span class = "p" > )< / span >
< span class = "n" > _ST7789_MADCTL_BGR< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x08< / span > < span class = "p" > )< / span >
< span class = "n" > _ST7789_MADCTL_MH< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x04< / span > < span class = "p" > )< / span >
< span class = "n" > _ST7789_MADCTL_RGB< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x00< / span > < span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
2023-11-18 23:31:25 +00:00
< span class = "n" > RGB< / span > < span class = "o" > =< / span > < span class = "mh" > 0x00< / span >
< span class = "n" > BGR< / span > < span class = "o" > =< / span > < span class = "mh" > 0x08< / span >
2023-11-30 01:56:48 +00:00
< span class = "c1" > # Color modes< / span >
< span class = "n" > _COLOR_MODE_65K< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x50< / span > < span class = "p" > )< / span >
< span class = "n" > _COLOR_MODE_262K< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x60< / span > < span class = "p" > )< / span >
< span class = "n" > _COLOR_MODE_12BIT< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x03< / span > < span class = "p" > )< / span >
< span class = "n" > _COLOR_MODE_16BIT< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x05< / span > < span class = "p" > )< / span >
< span class = "n" > _COLOR_MODE_18BIT< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x06< / span > < span class = "p" > )< / span >
< span class = "n" > _COLOR_MODE_16M< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x07< / span > < span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "c1" > # Color definitions< / span >
< span class = "n" > BLACK< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x0000< / span > < span class = "p" > )< / span >
< span class = "n" > BLUE< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x001F< / span > < span class = "p" > )< / span >
< span class = "n" > RED< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0xF800< / span > < span class = "p" > )< / span >
< span class = "n" > GREEN< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x07E0< / span > < span class = "p" > )< / span >
< span class = "n" > CYAN< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x07FF< / span > < span class = "p" > )< / span >
< span class = "n" > MAGENTA< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0xF81F< / span > < span class = "p" > )< / span >
< span class = "n" > YELLOW< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0xFFE0< / span > < span class = "p" > )< / span >
< span class = "n" > WHITE< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0xFFFF< / span > < span class = "p" > )< / span >
2023-11-30 01:56:48 +00:00
< span class = "n" > _ENCODE_PIXEL< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "s2" > " > H" < / span > < span class = "p" > )< / span >
< span class = "n" > _ENCODE_PIXEL_SWAPPED< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "s2" > " < H" < / span > < span class = "p" > )< / span >
< span class = "n" > _ENCODE_POS< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "s2" > " > HH" < / span > < span class = "p" > )< / span >
< span class = "n" > _ENCODE_POS_16< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "s2" > " < HH" < / span > < span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
2023-11-30 01:56:48 +00:00
< span class = "c1" > # must be at least 128 for 8 bit wide fonts< / span >
< span class = "c1" > # must be at least 256 for 16 bit wide fonts< / span >
2021-05-06 06:14:24 +00:00
< span class = "n" > _BUFFER_SIZE< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mi" > 256< / span > < span class = "p" > )< / span >
< span class = "n" > _BIT7< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x80< / span > < span class = "p" > )< / span >
< span class = "n" > _BIT6< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x40< / span > < span class = "p" > )< / span >
< span class = "n" > _BIT5< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x20< / span > < span class = "p" > )< / span >
< span class = "n" > _BIT4< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x10< / span > < span class = "p" > )< / span >
< span class = "n" > _BIT3< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x08< / span > < span class = "p" > )< / span >
< span class = "n" > _BIT2< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x04< / span > < span class = "p" > )< / span >
< span class = "n" > _BIT1< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x02< / span > < span class = "p" > )< / span >
< span class = "n" > _BIT0< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mh" > 0x01< / span > < span class = "p" > )< / span >
2023-11-30 01:56:48 +00:00
< span class = "c1" > # fmt: off< / span >
< span class = "c1" > # Rotation tables< / span >
< span class = "c1" > # (madctl, width, height, xstart, ystart, needs_swap)[rotation % 4]< / span >
< span class = "n" > _DISPLAY_240x320< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< span class = "p" > (< / span > < span class = "mh" > 0x00< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 320< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mh" > 0x60< / span > < span class = "p" > ,< / span > < span class = "mi" > 320< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mh" > 0xc0< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 320< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mh" > 0xa0< / span > < span class = "p" > ,< / span > < span class = "mi" > 320< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ))< / span >
< span class = "n" > _DISPLAY_240x240< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< span class = "p" > (< / span > < span class = "mh" > 0x00< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mh" > 0x60< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mh" > 0xc0< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "mi" > 80< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mh" > 0xa0< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 80< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ))< / span >
< span class = "n" > _DISPLAY_135x240< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< span class = "p" > (< / span > < span class = "mh" > 0x00< / span > < span class = "p" > ,< / span > < span class = "mi" > 135< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 52< / span > < span class = "p" > ,< / span > < span class = "mi" > 40< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mh" > 0x60< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 135< / span > < span class = "p" > ,< / span > < span class = "mi" > 40< / span > < span class = "p" > ,< / span > < span class = "mi" > 53< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mh" > 0xc0< / span > < span class = "p" > ,< / span > < span class = "mi" > 135< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 53< / span > < span class = "p" > ,< / span > < span class = "mi" > 40< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mh" > 0xa0< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 135< / span > < span class = "p" > ,< / span > < span class = "mi" > 40< / span > < span class = "p" > ,< / span > < span class = "mi" > 52< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ))< / span >
< span class = "n" > _DISPLAY_128x128< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< span class = "p" > (< / span > < span class = "mh" > 0x00< / span > < span class = "p" > ,< / span > < span class = "mi" > 128< / span > < span class = "p" > ,< / span > < span class = "mi" > 128< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mh" > 0x60< / span > < span class = "p" > ,< / span > < span class = "mi" > 128< / span > < span class = "p" > ,< / span > < span class = "mi" > 128< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mh" > 0xc0< / span > < span class = "p" > ,< / span > < span class = "mi" > 128< / span > < span class = "p" > ,< / span > < span class = "mi" > 128< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mh" > 0xa0< / span > < span class = "p" > ,< / span > < span class = "mi" > 128< / span > < span class = "p" > ,< / span > < span class = "mi" > 128< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > ,< / span > < span class = "kc" > False< / span > < span class = "p" > ))< / span >
< span class = "c1" > # index values into rotation table< / span >
< span class = "n" > _WIDTH< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mi" > 0< / span > < span class = "p" > )< / span >
< span class = "n" > _HEIGHT< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mi" > 1< / span > < span class = "p" > )< / span >
< span class = "n" > _XSTART< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mi" > 2< / span > < span class = "p" > )< / span >
< span class = "n" > _YSTART< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mi" > 3< / span > < span class = "p" > )< / span >
< span class = "n" > _NEEDS_SWAP< / span > < span class = "o" > =< / span > < span class = "n" > const< / span > < span class = "p" > (< / span > < span class = "mi" > 4< / span > < span class = "p" > )< / span >
< span class = "c1" > # Supported displays (physical width, physical height, rotation table)< / span >
< span class = "n" > _SUPPORTED_DISPLAYS< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< span class = "p" > (< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 320< / span > < span class = "p" > ,< / span > < span class = "n" > _DISPLAY_240x320< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "n" > _DISPLAY_240x240< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mi" > 135< / span > < span class = "p" > ,< / span > < span class = "mi" > 240< / span > < span class = "p" > ,< / span > < span class = "n" > _DISPLAY_135x240< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "mi" > 128< / span > < span class = "p" > ,< / span > < span class = "mi" > 128< / span > < span class = "p" > ,< / span > < span class = "n" > _DISPLAY_128x128< / span > < span class = "p" > ))< / span >
< span class = "c1" > # init tuple format (b' command' , b' data' , delay_ms)< / span >
< span class = "n" > _ST7789_INIT_CMDS< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x11< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x00< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 120< / span > < span class = "p" > ),< / span > < span class = "c1" > # Exit sleep mode< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x13< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x00< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "c1" > # Turn on the display< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xb6< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x0a\x82< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "c1" > # Set display function control< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x3a< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x55< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 10< / span > < span class = "p" > ),< / span > < span class = "c1" > # Set pixel format to 16 bits per pixel (RGB565)< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xb2< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x0c\x0c\x00\x33\x33< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "c1" > # Set porch control< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xb7< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x35< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "c1" > # Set gate control< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xbb< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x28< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "c1" > # Set VCOMS setting< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xc0< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x0c< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "c1" > # Set power control 1< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xc2< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x01\xff< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "c1" > # Set power control 2< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xc3< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x10< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "c1" > # Set power control 3< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xc4< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x20< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "c1" > # Set power control 4< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xc6< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x0f< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "c1" > # Set VCOM control 1< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xd0< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xa4\xa1< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "c1" > # Set power control A< / span >
< span class = "c1" > # Set gamma curve positive polarity< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xe0< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xd0\x00\x02\x07\x0a\x28\x32\x44\x42\x06\x0e\x12\x14\x17< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span >
< span class = "c1" > # Set gamma curve negative polarity< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xe1< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \xd0\x00\x02\x07\x0a\x28\x31\x54\x47\x0e\x1c\x17\x1b\x1e< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x21< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x00< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "c1" > # Enable display inversion< / span >
< span class = "p" > (< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x29< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "sa" > b< / span > < span class = "s1" > ' < / span > < span class = "se" > \x00< / span > < span class = "s1" > ' < / span > < span class = "p" > ,< / span > < span class = "mi" > 120< / span > < span class = "p" > )< / span > < span class = "c1" > # Turn on the display< / span >
< span class = "p" > )< / span >
< span class = "c1" > # fmt: on< / span >
2021-05-06 18:04:01 +00:00
2021-05-06 06:14:24 +00:00
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "color565" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.color565" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > color565< / span > < span class = "p" > (< / span > < span class = "n" > red< / span > < span class = "p" > ,< / span > < span class = "n" > green< / span > < span class = "o" > =< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "n" > blue< / span > < span class = "o" > =< / span > < span class = "mi" > 0< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Convert red, green and blue values (0-255) into a 16-bit 565 encoding.< / span >
< span class = "sd" > " " " < / span >
2023-11-30 01:56:48 +00:00
< span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > red< / span > < span class = "p" > ,< / span > < span class = "p" > (< / span > < span class = "nb" > tuple< / span > < span class = "p" > ,< / span > < span class = "nb" > list< / span > < span class = "p" > )):< / span >
< span class = "n" > red< / span > < span class = "p" > ,< / span > < span class = "n" > green< / span > < span class = "p" > ,< / span > < span class = "n" > blue< / span > < span class = "o" > =< / span > < span class = "n" > red< / span > < span class = "p" > [:< / span > < span class = "mi" > 3< / span > < span class = "p" > ]< / span >
< span class = "k" > return< / span > < span class = "p" > (< / span > < span class = "n" > red< / span > < span class = "o" > & < / span > < span class = "mh" > 0xF8< / span > < span class = "p" > )< / span > < span class = "o" > < < < / span > < span class = "mi" > 8< / span > < span class = "o" > |< / span > < span class = "p" > (< / span > < span class = "n" > green< / span > < span class = "o" > & < / span > < span class = "mh" > 0xFC< / span > < span class = "p" > )< / span > < span class = "o" > < < < / span > < span class = "mi" > 3< / span > < span class = "o" > |< / span > < span class = "n" > blue< / span > < span class = "o" > > > < / span > < span class = "mi" > 3< / span > < / div >
2021-05-06 06:14:24 +00:00
2023-11-18 23:31:25 +00:00
2021-05-06 06:14:24 +00:00
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789" > [docs]< / a >
2023-11-30 01:56:48 +00:00
< span class = "k" > class< / span > < span class = "nc" > ST7789< / span > < span class = "p" > :< / span >
2023-11-18 23:31:25 +00:00
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > ST7789 driver class< / span >
< span class = "sd" > Args:< / span >
2021-08-12 15:54:15 +00:00
< span class = "sd" > spi (spi): spi object **Required**< / span >
< span class = "sd" > width (int): display width **Required**< / span >
< span class = "sd" > height (int): display height **Required**< / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > reset (pin): reset pin< / span >
2021-08-12 15:54:15 +00:00
< span class = "sd" > dc (pin): dc pin **Required**< / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > cs (pin): cs pin< / span >
< span class = "sd" > backlight(pin): backlight pin< / span >
2023-11-18 23:31:25 +00:00
< span class = "sd" > rotation (int):< / span >
< span class = "sd" > - 0-Portrait< / span >
< span class = "sd" > - 1-Landscape< / span >
< span class = "sd" > - 2-Inverted Portrait< / span >
< span class = "sd" > - 3-Inverted Landscape< / span >
< span class = "sd" > color_order (int):< / span >
< span class = "sd" > - RGB: Red, Green Blue, default< / span >
< span class = "sd" > - BGR: Blue, Green, Red< / span >
2023-11-30 01:56:48 +00:00
< span class = "sd" > custom_init (tuple): custom initialization commands< / span >
< span class = "sd" > - ((b' command' , b' data' , delay_ms), ...)< / span >
< span class = "sd" > custom_rotations (tuple): custom rotation definitions< / span >
< span class = "sd" > - ((width, height, xstart, ystart, madctl, needs_swap), ...)< / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > " " " < / span >
2023-11-30 01:56:48 +00:00
< span class = "k" > def< / span > < span class = "fm" > __init__< / span > < span class = "p" > (< / span >
< span class = "bp" > self< / span > < span class = "p" > ,< / span >
< span class = "n" > spi< / span > < span class = "p" > ,< / span >
< span class = "n" > width< / span > < span class = "p" > ,< / span >
< span class = "n" > height< / span > < span class = "p" > ,< / span >
< span class = "n" > reset< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span >
< span class = "n" > dc< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span >
< span class = "n" > cs< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span >
< span class = "n" > backlight< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span >
< span class = "n" > rotation< / span > < span class = "o" > =< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span >
< span class = "n" > color_order< / span > < span class = "o" > =< / span > < span class = "n" > BGR< / span > < span class = "p" > ,< / span >
< span class = "n" > custom_init< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span >
< span class = "n" > custom_rotations< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span >
< span class = "p" > ):< / span >
2023-11-18 23:31:25 +00:00
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Initialize display.< / span >
< span class = "sd" > " " " < / span >
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > rotations< / span > < span class = "o" > =< / span > < span class = "n" > custom_rotations< / span > < span class = "ow" > or< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _find_rotations< / span > < span class = "p" > (< / span > < span class = "n" > width< / span > < span class = "p" > ,< / span > < span class = "n" > height< / span > < span class = "p" > )< / span >
< span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > rotations< / span > < span class = "p" > :< / span >
< span class = "n" > supported_displays< / span > < span class = "o" > =< / span > < span class = "s2" > " , " < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span >
< span class = "p" > [< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "n" > display< / span > < span class = "p" > [< / span > < span class = "mi" > 0< / span > < span class = "p" > ]< / span > < span class = "si" > }< / span > < span class = "s2" > x< / span > < span class = "si" > {< / span > < span class = "n" > display< / span > < span class = "p" > [< / span > < span class = "mi" > 1< / span > < span class = "p" > ]< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span > < span class = "k" > for< / span > < span class = "n" > display< / span > < span class = "ow" > in< / span > < span class = "n" > _SUPPORTED_DISPLAYS< / span > < span class = "p" > ]< / span >
< span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > raise< / span > < span class = "ne" > ValueError< / span > < span class = "p" > (< / span >
2023-11-30 01:56:48 +00:00
< span class = "sa" > f< / span > < span class = "s2" > " Unsupported < / span > < span class = "si" > {< / span > < span class = "n" > width< / span > < span class = "si" > }< / span > < span class = "s2" > x< / span > < span class = "si" > {< / span > < span class = "n" > height< / span > < span class = "si" > }< / span > < span class = "s2" > display. Supported displays: < / span > < span class = "si" > {< / span > < span class = "n" > supported_displays< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
2021-05-06 06:14:24 +00:00
< span class = "p" > )< / span >
2021-08-12 15:54:15 +00:00
< span class = "k" > if< / span > < span class = "n" > dc< / span > < span class = "ow" > is< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< span class = "k" > raise< / span > < span class = "ne" > ValueError< / span > < span class = "p" > (< / span > < span class = "s2" > " dc pin is required." < / span > < span class = "p" > )< / span >
2023-11-18 23:31:25 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > physical_width< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > width< / span > < span class = "o" > =< / span > < span class = "n" > width< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > physical_height< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > height< / span > < span class = "o" > =< / span > < span class = "n" > height< / span >
2021-05-06 18:04:01 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > xstart< / span > < span class = "o" > =< / span > < span class = "mi" > 0< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > ystart< / span > < span class = "o" > =< / span > < span class = "mi" > 0< / span >
2021-05-06 06:14:24 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > spi< / span > < span class = "o" > =< / span > < span class = "n" > spi< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > reset< / span > < span class = "o" > =< / span > < span class = "n" > reset< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > dc< / span > < span class = "o" > =< / span > < span class = "n" > dc< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > cs< / span > < span class = "o" > =< / span > < span class = "n" > cs< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > backlight< / span > < span class = "o" > =< / span > < span class = "n" > backlight< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _rotation< / span > < span class = "o" > =< / span > < span class = "n" > rotation< / span > < span class = "o" > %< / span > < span class = "mi" > 4< / span >
2023-11-18 23:31:25 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > color_order< / span > < span class = "o" > =< / span > < span class = "n" > color_order< / span >
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > init_cmds< / span > < span class = "o" > =< / span > < span class = "n" > custom_init< / span > < span class = "ow" > or< / span > < span class = "n" > _ST7789_INIT_CMDS< / span >
2021-05-06 06:14:24 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > hard_reset< / span > < span class = "p" > ()< / span >
2023-11-30 01:56:48 +00:00
< span class = "c1" > # yes, twice, once is not always enough< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > init< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > init_cmds< / span > < span class = "p" > )< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > init< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > init_cmds< / span > < span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > rotation< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _rotation< / span > < span class = "p" > )< / span >
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > needs_swap< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > fill< / span > < span class = "p" > (< / span > < span class = "mh" > 0x0< / span > < span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > if< / span > < span class = "n" > backlight< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< span class = "n" > backlight< / span > < span class = "o" > .< / span > < span class = "n" > value< / span > < span class = "p" > (< / span > < span class = "mi" > 1< / span > < span class = "p" > )< / span >
2023-11-30 01:56:48 +00:00
< span class = "nd" > @staticmethod< / span >
< span class = "k" > def< / span > < span class = "nf" > _find_rotations< / span > < span class = "p" > (< / span > < span class = "n" > width< / span > < span class = "p" > ,< / span > < span class = "n" > height< / span > < span class = "p" > ):< / span >
< span class = "k" > for< / span > < span class = "n" > display< / span > < span class = "ow" > in< / span > < span class = "n" > _SUPPORTED_DISPLAYS< / span > < span class = "p" > :< / span >
< span class = "k" > if< / span > < span class = "n" > display< / span > < span class = "p" > [< / span > < span class = "mi" > 0< / span > < span class = "p" > ]< / span > < span class = "o" > ==< / span > < span class = "n" > width< / span > < span class = "ow" > and< / span > < span class = "n" > display< / span > < span class = "p" > [< / span > < span class = "mi" > 1< / span > < span class = "p" > ]< / span > < span class = "o" > ==< / span > < span class = "n" > height< / span > < span class = "p" > :< / span >
< span class = "k" > return< / span > < span class = "n" > display< / span > < span class = "p" > [< / span > < span class = "mi" > 2< / span > < span class = "p" > ]< / span >
< span class = "k" > return< / span > < span class = "kc" > None< / span >
< div class = "viewcode-block" id = "ST7789.init" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.init" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > init< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > commands< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
< span class = "sd" > Initialize display.< / span >
< span class = "sd" > " " " < / span >
< span class = "k" > for< / span > < span class = "n" > command< / span > < span class = "p" > ,< / span > < span class = "n" > data< / span > < span class = "p" > ,< / span > < span class = "n" > delay< / span > < span class = "ow" > in< / span > < span class = "n" > commands< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "n" > command< / span > < span class = "p" > ,< / span > < span class = "n" > data< / span > < span class = "p" > )< / span >
< span class = "n" > sleep_ms< / span > < span class = "p" > (< / span > < span class = "n" > delay< / span > < span class = "p" > )< / span > < / div >
2021-05-06 06:14:24 +00:00
< span class = "k" > def< / span > < span class = "nf" > _write< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > command< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span > < span class = "n" > data< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span > < span class = "p" > ):< / span >
2023-11-18 23:31:25 +00:00
< span class = "w" > < / span > < span class = "sd" > " " " SPI write to the device: commands and data." " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > cs< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > cs< / span > < span class = "o" > .< / span > < span class = "n" > off< / span > < span class = "p" > ()< / span >
< span class = "k" > if< / span > < span class = "n" > command< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > dc< / span > < span class = "o" > .< / span > < span class = "n" > off< / span > < span class = "p" > ()< / span >
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > spi< / span > < span class = "o" > .< / span > < span class = "n" > write< / span > < span class = "p" > (< / span > < span class = "n" > command< / span > < span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > if< / span > < span class = "n" > data< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > dc< / span > < span class = "o" > .< / span > < span class = "n" > on< / span > < span class = "p" > ()< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > spi< / span > < span class = "o" > .< / span > < span class = "n" > write< / span > < span class = "p" > (< / span > < span class = "n" > data< / span > < span class = "p" > )< / span >
< span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > cs< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > cs< / span > < span class = "o" > .< / span > < span class = "n" > on< / span > < span class = "p" > ()< / span >
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.hard_reset" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.hard_reset" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > hard_reset< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Hard reset display.< / span >
< span class = "sd" > " " " < / span >
< span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > cs< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > cs< / span > < span class = "o" > .< / span > < span class = "n" > off< / span > < span class = "p" > ()< / span >
< span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > reset< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > reset< / span > < span class = "o" > .< / span > < span class = "n" > on< / span > < span class = "p" > ()< / span >
2023-11-30 01:56:48 +00:00
< span class = "n" > sleep_ms< / span > < span class = "p" > (< / span > < span class = "mi" > 10< / span > < span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > reset< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > reset< / span > < span class = "o" > .< / span > < span class = "n" > off< / span > < span class = "p" > ()< / span >
2023-11-30 01:56:48 +00:00
< span class = "n" > sleep_ms< / span > < span class = "p" > (< / span > < span class = "mi" > 10< / span > < span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > reset< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > reset< / span > < span class = "o" > .< / span > < span class = "n" > on< / span > < span class = "p" > ()< / span >
2023-11-30 01:56:48 +00:00
< span class = "n" > sleep_ms< / span > < span class = "p" > (< / span > < span class = "mi" > 120< / span > < span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > cs< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > cs< / span > < span class = "o" > .< / span > < span class = "n" > on< / span > < span class = "p" > ()< / span > < / div >
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.soft_reset" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.soft_reset" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > soft_reset< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Soft reset display.< / span >
< span class = "sd" > " " " < / span >
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "n" > _ST7789_SWRESET< / span > < span class = "p" > )< / span >
< span class = "n" > sleep_ms< / span > < span class = "p" > (< / span > < span class = "mi" > 150< / span > < span class = "p" > )< / span > < / div >
2021-05-06 06:14:24 +00:00
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.sleep_mode" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.sleep_mode" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > sleep_mode< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > value< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Enable or disable display sleep mode.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > value (bool): if True enable sleep mode. if False disable sleep< / span >
< span class = "sd" > mode< / span >
< span class = "sd" > " " " < / span >
< span class = "k" > if< / span > < span class = "n" > value< / span > < span class = "p" > :< / span >
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "n" > _ST7789_SLPIN< / span > < span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > else< / span > < span class = "p" > :< / span >
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "n" > _ST7789_SLPOUT< / span > < span class = "p" > )< / span > < / div >
2021-05-06 06:14:24 +00:00
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.inversion_mode" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.inversion_mode" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > inversion_mode< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > value< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Enable or disable display inversion mode.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > value (bool): if True enable inversion mode. if False disable< / span >
< span class = "sd" > inversion mode< / span >
< span class = "sd" > " " " < / span >
< span class = "k" > if< / span > < span class = "n" > value< / span > < span class = "p" > :< / span >
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "n" > _ST7789_INVON< / span > < span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > else< / span > < span class = "p" > :< / span >
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "n" > _ST7789_INVOFF< / span > < span class = "p" > )< / span > < / div >
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.rotation" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.rotation" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > rotation< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > rotation< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Set display rotation.< / span >
< span class = "sd" > Args:< / span >
2021-05-06 18:04:01 +00:00
< span class = "sd" > rotation (int):< / span >
< span class = "sd" > - 0-Portrait< / span >
< span class = "sd" > - 1-Landscape< / span >
< span class = "sd" > - 2-Inverted Portrait< / span >
< span class = "sd" > - 3-Inverted Landscape< / span >
2021-05-06 06:14:24 +00:00
2023-11-30 01:56:48 +00:00
< span class = "sd" > custom_rotations can have any number of rotations< / span >
< span class = "sd" > " " " < / span >
< span class = "n" > rotation< / span > < span class = "o" > %=< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > rotations< / span > < span class = "p" > )< / span >
2021-05-06 18:04:01 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _rotation< / span > < span class = "o" > =< / span > < span class = "n" > rotation< / span >
2023-11-30 01:56:48 +00:00
< span class = "p" > (< / span >
< span class = "n" > madctl< / span > < span class = "p" > ,< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > width< / span > < span class = "p" > ,< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > height< / span > < span class = "p" > ,< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > xstart< / span > < span class = "p" > ,< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > ystart< / span > < span class = "p" > ,< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > needs_swap< / span > < span class = "p" > ,< / span >
< span class = "p" > )< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > rotations< / span > < span class = "p" > [< / span > < span class = "n" > rotation< / span > < span class = "p" > ]< / span >
< span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > color_order< / span > < span class = "o" > ==< / span > < span class = "n" > BGR< / span > < span class = "p" > :< / span >
< span class = "n" > madctl< / span > < span class = "o" > |=< / span > < span class = "n" > _ST7789_MADCTL_BGR< / span >
2021-05-06 18:04:01 +00:00
< span class = "k" > else< / span > < span class = "p" > :< / span >
2023-11-30 01:56:48 +00:00
< span class = "n" > madctl< / span > < span class = "o" > & =< / span > < span class = "o" > ~< / span > < span class = "n" > _ST7789_MADCTL_BGR< / span >
2021-05-06 06:14:24 +00:00
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "n" > _ST7789_MADCTL< / span > < span class = "p" > ,< / span > < span class = "nb" > bytes< / span > < span class = "p" > ([< / span > < span class = "n" > madctl< / span > < span class = "p" > ]))< / span > < / div >
2021-05-06 06:14:24 +00:00
< span class = "k" > def< / span > < span class = "nf" > _set_window< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > x0< / span > < span class = "p" > ,< / span > < span class = "n" > y0< / span > < span class = "p" > ,< / span > < span class = "n" > x1< / span > < span class = "p" > ,< / span > < span class = "n" > y1< / span > < span class = "p" > ):< / span >
2023-11-18 23:31:25 +00:00
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Set window to column and row address.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > x0 (int): column start address< / span >
< span class = "sd" > y0 (int): row start address< / span >
< span class = "sd" > x1 (int): column end address< / span >
< span class = "sd" > y1 (int): row end address< / span >
< span class = "sd" > " " " < / span >
2023-11-30 01:56:48 +00:00
< span class = "k" > if< / span > < span class = "n" > x0< / span > < span class = "o" > < =< / span > < span class = "n" > x1< / span > < span class = "o" > < =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > width< / span > < span class = "ow" > and< / span > < span class = "n" > y0< / span > < span class = "o" > < =< / span > < span class = "n" > y1< / span > < span class = "o" > < =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > height< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span >
< span class = "n" > _ST7789_CASET< / span > < span class = "p" > ,< / span >
< span class = "n" > struct< / span > < span class = "o" > .< / span > < span class = "n" > pack< / span > < span class = "p" > (< / span > < span class = "n" > _ENCODE_POS< / span > < span class = "p" > ,< / span > < span class = "n" > x0< / span > < span class = "o" > +< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > xstart< / span > < span class = "p" > ,< / span > < span class = "n" > x1< / span > < span class = "o" > +< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > xstart< / span > < span class = "p" > ),< / span >
< span class = "p" > )< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span >
< span class = "n" > _ST7789_RASET< / span > < span class = "p" > ,< / span >
< span class = "n" > struct< / span > < span class = "o" > .< / span > < span class = "n" > pack< / span > < span class = "p" > (< / span > < span class = "n" > _ENCODE_POS< / span > < span class = "p" > ,< / span > < span class = "n" > y0< / span > < span class = "o" > +< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > ystart< / span > < span class = "p" > ,< / span > < span class = "n" > y1< / span > < span class = "o" > +< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > ystart< / span > < span class = "p" > ),< / span >
< span class = "p" > )< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "n" > _ST7789_RAMWR< / span > < span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.vline" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.vline" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > vline< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > length< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Draw vertical line at the given location and color.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > x (int): x coordinate< / span >
< span class = "sd" > Y (int): y coordinate< / span >
< span class = "sd" > length (int): length of line< / span >
< span class = "sd" > color (int): 565 encoded color< / span >
< span class = "sd" > " " " < / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > fill_rect< / span > < span class = "p" > (< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ,< / span > < span class = "n" > length< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > )< / span > < / div >
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.hline" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.hline" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > hline< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > length< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Draw horizontal line at the given location and color.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > x (int): x coordinate< / span >
< span class = "sd" > Y (int): y coordinate< / span >
< span class = "sd" > length (int): length of line< / span >
< span class = "sd" > color (int): 565 encoded color< / span >
< span class = "sd" > " " " < / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > fill_rect< / span > < span class = "p" > (< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > length< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > )< / span > < / div >
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.pixel" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.pixel" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > pixel< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Draw a pixel at the given location and color.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > x (int): x coordinate< / span >
< span class = "sd" > Y (int): y coordinate< / span >
< span class = "sd" > color (int): 565 encoded color< / span >
< span class = "sd" > " " " < / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _set_window< / span > < span class = "p" > (< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > )< / span >
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span >
< span class = "kc" > None< / span > < span class = "p" > ,< / span >
< span class = "n" > struct< / span > < span class = "o" > .< / span > < span class = "n" > pack< / span > < span class = "p" > (< / span >
< span class = "n" > _ENCODE_PIXEL_SWAPPED< / span > < span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > needs_swap< / span > < span class = "k" > else< / span > < span class = "n" > _ENCODE_PIXEL< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span >
< span class = "p" > ),< / span >
< span class = "p" > )< / span > < / div >
2021-05-06 06:14:24 +00:00
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.blit_buffer" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.blit_buffer" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > blit_buffer< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > buffer< / span > < span class = "p" > ,< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > width< / span > < span class = "p" > ,< / span > < span class = "n" > height< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Copy buffer to display at the given location.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > buffer (bytes): Data to copy to display< / span >
< span class = "sd" > x (int): Top left corner x coordinate< / span >
< span class = "sd" > Y (int): Top left corner y coordinate< / span >
< span class = "sd" > width (int): Width< / span >
< span class = "sd" > height (int): Height< / span >
< span class = "sd" > " " " < / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _set_window< / span > < span class = "p" > (< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > x< / span > < span class = "o" > +< / span > < span class = "n" > width< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "o" > +< / span > < span class = "n" > height< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span > < span class = "p" > )< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span > < span class = "n" > buffer< / span > < span class = "p" > )< / span > < / div >
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.rect" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.rect" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > rect< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > w< / span > < span class = "p" > ,< / span > < span class = "n" > h< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Draw a rectangle at the given location, size and color.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > x (int): Top left corner x coordinate< / span >
< span class = "sd" > y (int): Top left corner y coordinate< / span >
< span class = "sd" > width (int): Width in pixels< / span >
< span class = "sd" > height (int): Height in pixels< / span >
< span class = "sd" > color (int): 565 encoded color< / span >
< span class = "sd" > " " " < / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > hline< / span > < span class = "p" > (< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > w< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > )< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > vline< / span > < span class = "p" > (< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > h< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > )< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > vline< / span > < span class = "p" > (< / span > < span class = "n" > x< / span > < span class = "o" > +< / span > < span class = "n" > w< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > h< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > )< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > hline< / span > < span class = "p" > (< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "o" > +< / span > < span class = "n" > h< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span > < span class = "p" > ,< / span > < span class = "n" > w< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > )< / span > < / div >
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.fill_rect" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.fill_rect" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > fill_rect< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > width< / span > < span class = "p" > ,< / span > < span class = "n" > height< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Draw a rectangle at the given location, size and filled with color.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > x (int): Top left corner x coordinate< / span >
< span class = "sd" > y (int): Top left corner y coordinate< / span >
< span class = "sd" > width (int): Width in pixels< / span >
< span class = "sd" > height (int): Height in pixels< / span >
< span class = "sd" > color (int): 565 encoded color< / span >
< span class = "sd" > " " " < / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _set_window< / span > < span class = "p" > (< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > x< / span > < span class = "o" > +< / span > < span class = "n" > width< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "o" > +< / span > < span class = "n" > height< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span > < span class = "p" > )< / span >
< span class = "n" > chunks< / span > < span class = "p" > ,< / span > < span class = "n" > rest< / span > < span class = "o" > =< / span > < span class = "nb" > divmod< / span > < span class = "p" > (< / span > < span class = "n" > width< / span > < span class = "o" > *< / span > < span class = "n" > height< / span > < span class = "p" > ,< / span > < span class = "n" > _BUFFER_SIZE< / span > < span class = "p" > )< / span >
2023-11-30 01:56:48 +00:00
< span class = "n" > pixel< / span > < span class = "o" > =< / span > < span class = "n" > struct< / span > < span class = "o" > .< / span > < span class = "n" > pack< / span > < span class = "p" > (< / span >
< span class = "n" > _ENCODE_PIXEL_SWAPPED< / span > < span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > needs_swap< / span > < span class = "k" > else< / span > < span class = "n" > _ENCODE_PIXEL< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span >
< span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > dc< / span > < span class = "o" > .< / span > < span class = "n" > on< / span > < span class = "p" > ()< / span >
< span class = "k" > if< / span > < span class = "n" > chunks< / span > < span class = "p" > :< / span >
< span class = "n" > data< / span > < span class = "o" > =< / span > < span class = "n" > pixel< / span > < span class = "o" > *< / span > < span class = "n" > _BUFFER_SIZE< / span >
< span class = "k" > for< / span > < span class = "n" > _< / span > < span class = "ow" > in< / span > < span class = "nb" > range< / span > < span class = "p" > (< / span > < span class = "n" > chunks< / span > < span class = "p" > ):< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span > < span class = "n" > data< / span > < span class = "p" > )< / span >
< span class = "k" > if< / span > < span class = "n" > rest< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span > < span class = "n" > pixel< / span > < span class = "o" > *< / span > < span class = "n" > rest< / span > < span class = "p" > )< / span > < / div >
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.fill" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.fill" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > fill< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Fill the entire FrameBuffer with the specified color.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > color (int): 565 encoded color< / span >
< span class = "sd" > " " " < / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > fill_rect< / span > < span class = "p" > (< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > width< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > height< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > )< / span > < / div >
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.line" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.line" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > line< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > x0< / span > < span class = "p" > ,< / span > < span class = "n" > y0< / span > < span class = "p" > ,< / span > < span class = "n" > x1< / span > < span class = "p" > ,< / span > < span class = "n" > y1< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Draw a single pixel wide line starting at x0, y0 and ending at x1, y1.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > x0 (int): Start point x coordinate< / span >
< span class = "sd" > y0 (int): Start point y coordinate< / span >
< span class = "sd" > x1 (int): End point x coordinate< / span >
< span class = "sd" > y1 (int): End point y coordinate< / span >
< span class = "sd" > color (int): 565 encoded color< / span >
< span class = "sd" > " " " < / span >
< span class = "n" > steep< / span > < span class = "o" > =< / span > < span class = "nb" > abs< / span > < span class = "p" > (< / span > < span class = "n" > y1< / span > < span class = "o" > -< / span > < span class = "n" > y0< / span > < span class = "p" > )< / span > < span class = "o" > > < / span > < span class = "nb" > abs< / span > < span class = "p" > (< / span > < span class = "n" > x1< / span > < span class = "o" > -< / span > < span class = "n" > x0< / span > < span class = "p" > )< / span >
< span class = "k" > if< / span > < span class = "n" > steep< / span > < span class = "p" > :< / span >
< span class = "n" > x0< / span > < span class = "p" > ,< / span > < span class = "n" > y0< / span > < span class = "o" > =< / span > < span class = "n" > y0< / span > < span class = "p" > ,< / span > < span class = "n" > x0< / span >
< span class = "n" > x1< / span > < span class = "p" > ,< / span > < span class = "n" > y1< / span > < span class = "o" > =< / span > < span class = "n" > y1< / span > < span class = "p" > ,< / span > < span class = "n" > x1< / span >
< span class = "k" > if< / span > < span class = "n" > x0< / span > < span class = "o" > > < / span > < span class = "n" > x1< / span > < span class = "p" > :< / span >
< span class = "n" > x0< / span > < span class = "p" > ,< / span > < span class = "n" > x1< / span > < span class = "o" > =< / span > < span class = "n" > x1< / span > < span class = "p" > ,< / span > < span class = "n" > x0< / span >
< span class = "n" > y0< / span > < span class = "p" > ,< / span > < span class = "n" > y1< / span > < span class = "o" > =< / span > < span class = "n" > y1< / span > < span class = "p" > ,< / span > < span class = "n" > y0< / span >
< span class = "n" > dx< / span > < span class = "o" > =< / span > < span class = "n" > x1< / span > < span class = "o" > -< / span > < span class = "n" > x0< / span >
< span class = "n" > dy< / span > < span class = "o" > =< / span > < span class = "nb" > abs< / span > < span class = "p" > (< / span > < span class = "n" > y1< / span > < span class = "o" > -< / span > < span class = "n" > y0< / span > < span class = "p" > )< / span >
< span class = "n" > err< / span > < span class = "o" > =< / span > < span class = "n" > dx< / span > < span class = "o" > //< / span > < span class = "mi" > 2< / span >
2021-12-23 18:54:40 +00:00
< span class = "n" > ystep< / span > < span class = "o" > =< / span > < span class = "mi" > 1< / span > < span class = "k" > if< / span > < span class = "n" > y0< / span > < span class = "o" > < < / span > < span class = "n" > y1< / span > < span class = "k" > else< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > while< / span > < span class = "n" > x0< / span > < span class = "o" > < =< / span > < span class = "n" > x1< / span > < span class = "p" > :< / span >
< span class = "k" > if< / span > < span class = "n" > steep< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > pixel< / span > < span class = "p" > (< / span > < span class = "n" > y0< / span > < span class = "p" > ,< / span > < span class = "n" > x0< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > )< / span >
< span class = "k" > else< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > pixel< / span > < span class = "p" > (< / span > < span class = "n" > x0< / span > < span class = "p" > ,< / span > < span class = "n" > y0< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > )< / span >
< span class = "n" > err< / span > < span class = "o" > -=< / span > < span class = "n" > dy< / span >
< span class = "k" > if< / span > < span class = "n" > err< / span > < span class = "o" > < < / span > < span class = "mi" > 0< / span > < span class = "p" > :< / span >
< span class = "n" > y0< / span > < span class = "o" > +=< / span > < span class = "n" > ystep< / span >
< span class = "n" > err< / span > < span class = "o" > +=< / span > < span class = "n" > dx< / span >
< span class = "n" > x0< / span > < span class = "o" > +=< / span > < span class = "mi" > 1< / span > < / div >
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.vscrdef" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.vscrdef" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > vscrdef< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > tfa< / span > < span class = "p" > ,< / span > < span class = "n" > vsa< / span > < span class = "p" > ,< / span > < span class = "n" > bfa< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Set Vertical Scrolling Definition.< / span >
< span class = "sd" > To scroll a 135x240 display these values should be 40, 240, 40.< / span >
< span class = "sd" > There are 40 lines above the display that are not shown followed by< / span >
< span class = "sd" > 240 lines that are shown followed by 40 more lines that are not shown.< / span >
< span class = "sd" > You could write to these areas off display and scroll them into view by< / span >
< span class = "sd" > changing the TFA, VSA and BFA values.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > tfa (int): Top Fixed Area< / span >
< span class = "sd" > vsa (int): Vertical Scrolling Area< / span >
< span class = "sd" > bfa (int): Bottom Fixed Area< / span >
< span class = "sd" > " " " < / span >
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "n" > _ST7789_VSCRDEF< / span > < span class = "p" > ,< / span > < span class = "n" > struct< / span > < span class = "o" > .< / span > < span class = "n" > pack< / span > < span class = "p" > (< / span > < span class = "s2" > " > HHH" < / span > < span class = "p" > ,< / span > < span class = "n" > tfa< / span > < span class = "p" > ,< / span > < span class = "n" > vsa< / span > < span class = "p" > ,< / span > < span class = "n" > bfa< / span > < span class = "p" > ))< / span > < / div >
2021-05-06 06:14:24 +00:00
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.vscsad" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.vscsad" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > vscsad< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > vssa< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Set Vertical Scroll Start Address of RAM.< / span >
< span class = "sd" > Defines which line in the Frame Memory will be written as the first< / span >
< span class = "sd" > line after the last line of the Top Fixed Area on the display< / span >
< span class = "sd" > Example:< / span >
< span class = "sd" > for line in range(40, 280, 1):< / span >
< span class = "sd" > tft.vscsad(line)< / span >
< span class = "sd" > utime.sleep(0.01)< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > vssa (int): Vertical Scrolling Start Address< / span >
< span class = "sd" > " " " < / span >
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "n" > _ST7789_VSCSAD< / span > < span class = "p" > ,< / span > < span class = "n" > struct< / span > < span class = "o" > .< / span > < span class = "n" > pack< / span > < span class = "p" > (< / span > < span class = "s2" > " > H" < / span > < span class = "p" > ,< / span > < span class = "n" > vssa< / span > < span class = "p" > ))< / span > < / div >
< span class = "nd" > @micropython< / span > < span class = "o" > .< / span > < span class = "n" > viper< / span >
< span class = "nd" > @staticmethod< / span >
< span class = "k" > def< / span > < span class = "nf" > _pack8< / span > < span class = "p" > (< / span > < span class = "n" > glyphs< / span > < span class = "p" > ,< / span > < span class = "n" > idx< / span > < span class = "p" > :< / span > < span class = "n" > uint< / span > < span class = "p" > ,< / span > < span class = "n" > fg_color< / span > < span class = "p" > :< / span > < span class = "n" > uint< / span > < span class = "p" > ,< / span > < span class = "n" > bg_color< / span > < span class = "p" > :< / span > < span class = "n" > uint< / span > < span class = "p" > ):< / span >
< span class = "n" > buffer< / span > < span class = "o" > =< / span > < span class = "nb" > bytearray< / span > < span class = "p" > (< / span > < span class = "mi" > 128< / span > < span class = "p" > )< / span >
< span class = "n" > bitmap< / span > < span class = "o" > =< / span > < span class = "n" > ptr16< / span > < span class = "p" > (< / span > < span class = "n" > buffer< / span > < span class = "p" > )< / span >
< span class = "n" > glyph< / span > < span class = "o" > =< / span > < span class = "n" > ptr8< / span > < span class = "p" > (< / span > < span class = "n" > glyphs< / span > < span class = "p" > )< / span >
< span class = "k" > for< / span > < span class = "n" > i< / span > < span class = "ow" > in< / span > < span class = "nb" > range< / span > < span class = "p" > (< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "mi" > 64< / span > < span class = "p" > ,< / span > < span class = "mi" > 8< / span > < span class = "p" > ):< / span >
< span class = "n" > byte< / span > < span class = "o" > =< / span > < span class = "n" > glyph< / span > < span class = "p" > [< / span > < span class = "n" > idx< / span > < span class = "p" > ]< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT7< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 1< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT6< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 2< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT5< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 3< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT4< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 4< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT3< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 5< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT2< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 6< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT1< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 7< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT0< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > idx< / span > < span class = "o" > +=< / span > < span class = "mi" > 1< / span >
< span class = "k" > return< / span > < span class = "n" > buffer< / span >
< span class = "nd" > @micropython< / span > < span class = "o" > .< / span > < span class = "n" > viper< / span >
< span class = "nd" > @staticmethod< / span >
< span class = "k" > def< / span > < span class = "nf" > _pack16< / span > < span class = "p" > (< / span > < span class = "n" > glyphs< / span > < span class = "p" > ,< / span > < span class = "n" > idx< / span > < span class = "p" > :< / span > < span class = "n" > uint< / span > < span class = "p" > ,< / span > < span class = "n" > fg_color< / span > < span class = "p" > :< / span > < span class = "n" > uint< / span > < span class = "p" > ,< / span > < span class = "n" > bg_color< / span > < span class = "p" > :< / span > < span class = "n" > uint< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
< span class = "sd" > Pack a character into a byte array.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > char (str): character to pack< / span >
2021-05-06 06:14:24 +00:00
2023-11-30 01:56:48 +00:00
< span class = "sd" > Returns:< / span >
< span class = "sd" > 128 bytes: character bitmap in color565 format< / span >
< span class = "sd" > " " " < / span >
2023-11-18 23:31:25 +00:00
2023-11-30 01:56:48 +00:00
< span class = "n" > buffer< / span > < span class = "o" > =< / span > < span class = "nb" > bytearray< / span > < span class = "p" > (< / span > < span class = "mi" > 256< / span > < span class = "p" > )< / span >
< span class = "n" > bitmap< / span > < span class = "o" > =< / span > < span class = "n" > ptr16< / span > < span class = "p" > (< / span > < span class = "n" > buffer< / span > < span class = "p" > )< / span >
< span class = "n" > glyph< / span > < span class = "o" > =< / span > < span class = "n" > ptr8< / span > < span class = "p" > (< / span > < span class = "n" > glyphs< / span > < span class = "p" > )< / span >
< span class = "k" > for< / span > < span class = "n" > i< / span > < span class = "ow" > in< / span > < span class = "nb" > range< / span > < span class = "p" > (< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "mi" > 128< / span > < span class = "p" > ,< / span > < span class = "mi" > 16< / span > < span class = "p" > ):< / span >
< span class = "n" > byte< / span > < span class = "o" > =< / span > < span class = "n" > glyph< / span > < span class = "p" > [< / span > < span class = "n" > idx< / span > < span class = "p" > ]< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT7< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 1< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT6< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 2< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT5< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 3< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT4< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 4< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT3< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 5< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT2< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 6< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT1< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 7< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT0< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > idx< / span > < span class = "o" > +=< / span > < span class = "mi" > 1< / span >
< span class = "n" > byte< / span > < span class = "o" > =< / span > < span class = "n" > glyph< / span > < span class = "p" > [< / span > < span class = "n" > idx< / span > < span class = "p" > ]< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 8< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT7< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 9< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT6< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 10< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT5< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 11< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT4< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 12< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT3< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 13< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT2< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 14< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT1< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > bitmap< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 15< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_color< / span > < span class = "k" > if< / span > < span class = "n" > byte< / span > < span class = "o" > & < / span > < span class = "n" > _BIT0< / span > < span class = "k" > else< / span > < span class = "n" > bg_color< / span >
< span class = "n" > idx< / span > < span class = "o" > +=< / span > < span class = "mi" > 1< / span >
< span class = "k" > return< / span > < span class = "n" > buffer< / span >
< span class = "k" > def< / span > < span class = "nf" > _text8< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > font< / span > < span class = "p" > ,< / span > < span class = "n" > text< / span > < span class = "p" > ,< / span > < span class = "n" > x0< / span > < span class = "p" > ,< / span > < span class = "n" > y0< / span > < span class = "p" > ,< / span > < span class = "n" > fg_color< / span > < span class = "o" > =< / span > < span class = "n" > WHITE< / span > < span class = "p" > ,< / span > < span class = "n" > bg_color< / span > < span class = "o" > =< / span > < span class = "n" > BLACK< / span > < span class = "p" > ):< / span >
2023-11-18 23:31:25 +00:00
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Internal method to write characters with width of 8 and< / span >
< span class = "sd" > heights of 8 or 16.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > font (module): font module to use< / span >
< span class = "sd" > text (str): text to write< / span >
< span class = "sd" > x0 (int): column to start drawing at< / span >
< span class = "sd" > y0 (int): row to start drawing at< / span >
< span class = "sd" > color (int): 565 encoded color to use for characters< / span >
< span class = "sd" > background (int): 565 encoded color to use for background< / span >
< span class = "sd" > " " " < / span >
2023-11-30 01:56:48 +00:00
2021-05-06 06:14:24 +00:00
< span class = "k" > for< / span > < span class = "n" > char< / span > < span class = "ow" > in< / span > < span class = "n" > text< / span > < span class = "p" > :< / span >
< span class = "n" > ch< / span > < span class = "o" > =< / span > < span class = "nb" > ord< / span > < span class = "p" > (< / span > < span class = "n" > char< / span > < span class = "p" > )< / span >
2023-11-30 01:56:48 +00:00
< span class = "k" > if< / span > < span class = "p" > (< / span >
< span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > FIRST< / span > < span class = "o" > < =< / span > < span class = "n" > ch< / span > < span class = "o" > < < / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > LAST< / span >
< span class = "ow" > and< / span > < span class = "n" > x0< / span > < span class = "o" > +< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > WIDTH< / span > < span class = "o" > < =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > width< / span >
< span class = "ow" > and< / span > < span class = "n" > y0< / span > < span class = "o" > +< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > HEIGHT< / span > < span class = "o" > < =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > height< / span >
< span class = "p" > ):< / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > if< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > HEIGHT< / span > < span class = "o" > ==< / span > < span class = "mi" > 8< / span > < span class = "p" > :< / span >
< span class = "n" > passes< / span > < span class = "o" > =< / span > < span class = "mi" > 1< / span >
< span class = "n" > size< / span > < span class = "o" > =< / span > < span class = "mi" > 8< / span >
< span class = "n" > each< / span > < span class = "o" > =< / span > < span class = "mi" > 0< / span >
< span class = "k" > else< / span > < span class = "p" > :< / span >
< span class = "n" > passes< / span > < span class = "o" > =< / span > < span class = "mi" > 2< / span >
< span class = "n" > size< / span > < span class = "o" > =< / span > < span class = "mi" > 16< / span >
< span class = "n" > each< / span > < span class = "o" > =< / span > < span class = "mi" > 8< / span >
< span class = "k" > for< / span > < span class = "n" > line< / span > < span class = "ow" > in< / span > < span class = "nb" > range< / span > < span class = "p" > (< / span > < span class = "n" > passes< / span > < span class = "p" > ):< / span >
2023-11-30 01:56:48 +00:00
< span class = "n" > idx< / span > < span class = "o" > =< / span > < span class = "p" > (< / span > < span class = "n" > ch< / span > < span class = "o" > -< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > FIRST< / span > < span class = "p" > )< / span > < span class = "o" > *< / span > < span class = "n" > size< / span > < span class = "o" > +< / span > < span class = "p" > (< / span > < span class = "n" > each< / span > < span class = "o" > *< / span > < span class = "n" > line< / span > < span class = "p" > )< / span >
< span class = "n" > buffer< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _pack8< / span > < span class = "p" > (< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > FONT< / span > < span class = "p" > ,< / span > < span class = "n" > idx< / span > < span class = "p" > ,< / span > < span class = "n" > fg_color< / span > < span class = "p" > ,< / span > < span class = "n" > bg_color< / span > < span class = "p" > )< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > blit_buffer< / span > < span class = "p" > (< / span > < span class = "n" > buffer< / span > < span class = "p" > ,< / span > < span class = "n" > x0< / span > < span class = "p" > ,< / span > < span class = "n" > y0< / span > < span class = "o" > +< / span > < span class = "mi" > 8< / span > < span class = "o" > *< / span > < span class = "n" > line< / span > < span class = "p" > ,< / span > < span class = "mi" > 8< / span > < span class = "p" > ,< / span > < span class = "mi" > 8< / span > < span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "n" > x0< / span > < span class = "o" > +=< / span > < span class = "mi" > 8< / span >
2023-11-30 01:56:48 +00:00
< span class = "k" > def< / span > < span class = "nf" > _text16< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > font< / span > < span class = "p" > ,< / span > < span class = "n" > text< / span > < span class = "p" > ,< / span > < span class = "n" > x0< / span > < span class = "p" > ,< / span > < span class = "n" > y0< / span > < span class = "p" > ,< / span > < span class = "n" > fg_color< / span > < span class = "o" > =< / span > < span class = "n" > WHITE< / span > < span class = "p" > ,< / span > < span class = "n" > bg_color< / span > < span class = "o" > =< / span > < span class = "n" > BLACK< / span > < span class = "p" > ):< / span >
2023-11-18 23:31:25 +00:00
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Internal method to draw characters with width of 16 and heights of 16< / span >
< span class = "sd" > or 32.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > font (module): font module to use< / span >
< span class = "sd" > text (str): text to write< / span >
< span class = "sd" > x0 (int): column to start drawing at< / span >
< span class = "sd" > y0 (int): row to start drawing at< / span >
< span class = "sd" > color (int): 565 encoded color to use for characters< / span >
< span class = "sd" > background (int): 565 encoded color to use for background< / span >
< span class = "sd" > " " " < / span >
2023-11-30 01:56:48 +00:00
2021-05-06 06:14:24 +00:00
< span class = "k" > for< / span > < span class = "n" > char< / span > < span class = "ow" > in< / span > < span class = "n" > text< / span > < span class = "p" > :< / span >
< span class = "n" > ch< / span > < span class = "o" > =< / span > < span class = "nb" > ord< / span > < span class = "p" > (< / span > < span class = "n" > char< / span > < span class = "p" > )< / span >
2023-11-30 01:56:48 +00:00
< span class = "k" > if< / span > < span class = "p" > (< / span >
< span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > FIRST< / span > < span class = "o" > < =< / span > < span class = "n" > ch< / span > < span class = "o" > < < / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > LAST< / span >
< span class = "ow" > and< / span > < span class = "n" > x0< / span > < span class = "o" > +< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > WIDTH< / span > < span class = "o" > < =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > width< / span >
< span class = "ow" > and< / span > < span class = "n" > y0< / span > < span class = "o" > +< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > HEIGHT< / span > < span class = "o" > < =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > height< / span >
< span class = "p" > ):< / span >
2021-12-23 18:54:40 +00:00
< span class = "n" > each< / span > < span class = "o" > =< / span > < span class = "mi" > 16< / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > if< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > HEIGHT< / span > < span class = "o" > ==< / span > < span class = "mi" > 16< / span > < span class = "p" > :< / span >
< span class = "n" > passes< / span > < span class = "o" > =< / span > < span class = "mi" > 2< / span >
< span class = "n" > size< / span > < span class = "o" > =< / span > < span class = "mi" > 32< / span >
< span class = "k" > else< / span > < span class = "p" > :< / span >
< span class = "n" > passes< / span > < span class = "o" > =< / span > < span class = "mi" > 4< / span >
< span class = "n" > size< / span > < span class = "o" > =< / span > < span class = "mi" > 64< / span >
< span class = "k" > for< / span > < span class = "n" > line< / span > < span class = "ow" > in< / span > < span class = "nb" > range< / span > < span class = "p" > (< / span > < span class = "n" > passes< / span > < span class = "p" > ):< / span >
2023-11-30 01:56:48 +00:00
< span class = "n" > idx< / span > < span class = "o" > =< / span > < span class = "p" > (< / span > < span class = "n" > ch< / span > < span class = "o" > -< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > FIRST< / span > < span class = "p" > )< / span > < span class = "o" > *< / span > < span class = "n" > size< / span > < span class = "o" > +< / span > < span class = "p" > (< / span > < span class = "n" > each< / span > < span class = "o" > *< / span > < span class = "n" > line< / span > < span class = "p" > )< / span >
< span class = "n" > buffer< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _pack16< / span > < span class = "p" > (< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > FONT< / span > < span class = "p" > ,< / span > < span class = "n" > idx< / span > < span class = "p" > ,< / span > < span class = "n" > fg_color< / span > < span class = "p" > ,< / span > < span class = "n" > bg_color< / span > < span class = "p" > )< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > blit_buffer< / span > < span class = "p" > (< / span > < span class = "n" > buffer< / span > < span class = "p" > ,< / span > < span class = "n" > x0< / span > < span class = "p" > ,< / span > < span class = "n" > y0< / span > < span class = "o" > +< / span > < span class = "mi" > 8< / span > < span class = "o" > *< / span > < span class = "n" > line< / span > < span class = "p" > ,< / span > < span class = "mi" > 16< / span > < span class = "p" > ,< / span > < span class = "mi" > 8< / span > < span class = "p" > )< / span >
< span class = "n" > x0< / span > < span class = "o" > +=< / span > < span class = "mi" > 16< / span >
2021-05-06 06:14:24 +00:00
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.text" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.text" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > text< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > font< / span > < span class = "p" > ,< / span > < span class = "n" > text< / span > < span class = "p" > ,< / span > < span class = "n" > x0< / span > < span class = "p" > ,< / span > < span class = "n" > y0< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "o" > =< / span > < span class = "n" > WHITE< / span > < span class = "p" > ,< / span > < span class = "n" > background< / span > < span class = "o" > =< / span > < span class = "n" > BLACK< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Draw text on display in specified font and colors. 8 and 16 bit wide< / span >
< span class = "sd" > fonts are supported.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > font (module): font module to use.< / span >
< span class = "sd" > text (str): text to write< / span >
< span class = "sd" > x0 (int): column to start drawing at< / span >
< span class = "sd" > y0 (int): row to start drawing at< / span >
< span class = "sd" > color (int): 565 encoded color to use for characters< / span >
< span class = "sd" > background (int): 565 encoded color to use for background< / span >
< span class = "sd" > " " " < / span >
2023-11-30 01:56:48 +00:00
< span class = "n" > fg_color< / span > < span class = "o" > =< / span > < span class = "n" > color< / span > < span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > needs_swap< / span > < span class = "k" > else< / span > < span class = "p" > ((< / span > < span class = "n" > color< / span > < span class = "o" > < < < / span > < span class = "mi" > 8< / span > < span class = "p" > )< / span > < span class = "o" > & < / span > < span class = "mh" > 0xFF00< / span > < span class = "p" > )< / span > < span class = "o" > |< / span > < span class = "p" > (< / span > < span class = "n" > color< / span > < span class = "o" > > > < / span > < span class = "mi" > 8< / span > < span class = "p" > )< / span >
< span class = "n" > bg_color< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< span class = "n" > background< / span >
< span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > needs_swap< / span >
< span class = "k" > else< / span > < span class = "p" > ((< / span > < span class = "n" > background< / span > < span class = "o" > < < < / span > < span class = "mi" > 8< / span > < span class = "p" > )< / span > < span class = "o" > & < / span > < span class = "mh" > 0xFF00< / span > < span class = "p" > )< / span > < span class = "o" > |< / span > < span class = "p" > (< / span > < span class = "n" > background< / span > < span class = "o" > > > < / span > < span class = "mi" > 8< / span > < span class = "p" > )< / span >
< span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > if< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > WIDTH< / span > < span class = "o" > ==< / span > < span class = "mi" > 8< / span > < span class = "p" > :< / span >
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _text8< / span > < span class = "p" > (< / span > < span class = "n" > font< / span > < span class = "p" > ,< / span > < span class = "n" > text< / span > < span class = "p" > ,< / span > < span class = "n" > x0< / span > < span class = "p" > ,< / span > < span class = "n" > y0< / span > < span class = "p" > ,< / span > < span class = "n" > fg_color< / span > < span class = "p" > ,< / span > < span class = "n" > bg_color< / span > < span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > else< / span > < span class = "p" > :< / span >
2023-11-30 01:56:48 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _text16< / span > < span class = "p" > (< / span > < span class = "n" > font< / span > < span class = "p" > ,< / span > < span class = "n" > text< / span > < span class = "p" > ,< / span > < span class = "n" > x0< / span > < span class = "p" > ,< / span > < span class = "n" > y0< / span > < span class = "p" > ,< / span > < span class = "n" > fg_color< / span > < span class = "p" > ,< / span > < span class = "n" > bg_color< / span > < span class = "p" > )< / span > < / div >
2021-05-06 06:14:24 +00:00
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.bitmap" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.bitmap" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > bitmap< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > bitmap< / span > < span class = "p" > ,< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > index< / span > < span class = "o" > =< / span > < span class = "mi" > 0< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Draw a bitmap on display at the specified column and row< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > bitmap (bitmap_module): The module containing the bitmap to draw< / span >
< span class = "sd" > x (int): column to start drawing at< / span >
< span class = "sd" > y (int): row to start drawing at< / span >
< span class = "sd" > index (int): Optional index of bitmap to draw from multiple bitmap< / span >
< span class = "sd" > module< / span >
< span class = "sd" > " " " < / span >
2023-11-30 01:56:48 +00:00
< span class = "n" > width< / span > < span class = "o" > =< / span > < span class = "n" > bitmap< / span > < span class = "o" > .< / span > < span class = "n" > WIDTH< / span >
< span class = "n" > height< / span > < span class = "o" > =< / span > < span class = "n" > bitmap< / span > < span class = "o" > .< / span > < span class = "n" > HEIGHT< / span >
< span class = "n" > to_col< / span > < span class = "o" > =< / span > < span class = "n" > x< / span > < span class = "o" > +< / span > < span class = "n" > width< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span >
< span class = "n" > to_row< / span > < span class = "o" > =< / span > < span class = "n" > y< / span > < span class = "o" > +< / span > < span class = "n" > height< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span >
< span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > width< / span > < span class = "o" > < =< / span > < span class = "n" > to_col< / span > < span class = "ow" > or< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > height< / span > < span class = "o" > < =< / span > < span class = "n" > to_row< / span > < span class = "p" > :< / span >
< span class = "k" > return< / span >
< span class = "n" > bitmap_size< / span > < span class = "o" > =< / span > < span class = "n" > height< / span > < span class = "o" > *< / span > < span class = "n" > width< / span >
2021-05-06 06:14:24 +00:00
< span class = "n" > buffer_len< / span > < span class = "o" > =< / span > < span class = "n" > bitmap_size< / span > < span class = "o" > *< / span > < span class = "mi" > 2< / span >
2023-11-30 01:56:48 +00:00
< span class = "n" > bpp< / span > < span class = "o" > =< / span > < span class = "n" > bitmap< / span > < span class = "o" > .< / span > < span class = "n" > BPP< / span >
< span class = "n" > bs_bit< / span > < span class = "o" > =< / span > < span class = "n" > bpp< / span > < span class = "o" > *< / span > < span class = "n" > bitmap_size< / span > < span class = "o" > *< / span > < span class = "n" > index< / span > < span class = "c1" > # if index > 0 else 0< / span >
< span class = "n" > palette< / span > < span class = "o" > =< / span > < span class = "n" > bitmap< / span > < span class = "o" > .< / span > < span class = "n" > PALETTE< / span >
< span class = "n" > needs_swap< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > needs_swap< / span >
2021-05-06 06:14:24 +00:00
< span class = "n" > buffer< / span > < span class = "o" > =< / span > < span class = "nb" > bytearray< / span > < span class = "p" > (< / span > < span class = "n" > buffer_len< / span > < span class = "p" > )< / span >
< span class = "k" > for< / span > < span class = "n" > i< / span > < span class = "ow" > in< / span > < span class = "nb" > range< / span > < span class = "p" > (< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "n" > buffer_len< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > ):< / span >
< span class = "n" > color_index< / span > < span class = "o" > =< / span > < span class = "mi" > 0< / span >
2023-11-30 01:56:48 +00:00
< span class = "k" > for< / span > < span class = "n" > _< / span > < span class = "ow" > in< / span > < span class = "nb" > range< / span > < span class = "p" > (< / span > < span class = "n" > bpp< / span > < span class = "p" > ):< / span >
< span class = "n" > color_index< / span > < span class = "o" > =< / span > < span class = "p" > (< / span > < span class = "n" > color_index< / span > < span class = "o" > < < < / span > < span class = "mi" > 1< / span > < span class = "p" > )< / span > < span class = "o" > |< / span > < span class = "p" > (< / span >
< span class = "p" > (< / span > < span class = "n" > bitmap< / span > < span class = "o" > .< / span > < span class = "n" > BITMAP< / span > < span class = "p" > [< / span > < span class = "n" > bs_bit< / span > < span class = "o" > > > < / span > < span class = "mi" > 3< / span > < span class = "p" > ]< / span > < span class = "o" > > > < / span > < span class = "p" > (< / span > < span class = "mi" > 7< / span > < span class = "o" > -< / span > < span class = "p" > (< / span > < span class = "n" > bs_bit< / span > < span class = "o" > & < / span > < span class = "mi" > 7< / span > < span class = "p" > )))< / span > < span class = "o" > & < / span > < span class = "mi" > 1< / span >
< span class = "p" > )< / span >
2021-05-06 06:14:24 +00:00
< span class = "n" > bs_bit< / span > < span class = "o" > +=< / span > < span class = "mi" > 1< / span >
2023-11-30 01:56:48 +00:00
< span class = "n" > color< / span > < span class = "o" > =< / span > < span class = "n" > palette< / span > < span class = "p" > [< / span > < span class = "n" > color_index< / span > < span class = "p" > ]< / span >
< span class = "k" > if< / span > < span class = "n" > needs_swap< / span > < span class = "p" > :< / span >
< span class = "n" > buffer< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > color< / span > < span class = "o" > & < / span > < span class = "mh" > 0xFF< / span >
< span class = "n" > buffer< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 1< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > color< / span > < span class = "o" > > > < / span > < span class = "mi" > 8< / span >
< span class = "k" > else< / span > < span class = "p" > :< / span >
< span class = "n" > buffer< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > color< / span > < span class = "o" > > > < / span > < span class = "mi" > 8< / span >
< span class = "n" > buffer< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 1< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > color< / span > < span class = "o" > & < / span > < span class = "mh" > 0xFF< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _set_window< / span > < span class = "p" > (< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > to_col< / span > < span class = "p" > ,< / span > < span class = "n" > to_row< / span > < span class = "p" > )< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span > < span class = "n" > buffer< / span > < span class = "p" > )< / span > < / div >
2021-05-06 06:14:24 +00:00
2023-11-30 01:56:48 +00:00
< div class = "viewcode-block" id = "ST7789.pbitmap" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.pbitmap" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > pbitmap< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > bitmap< / span > < span class = "p" > ,< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > index< / span > < span class = "o" > =< / span > < span class = "mi" > 0< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
< span class = "sd" > Draw a bitmap on display at the specified column and row one row at a time< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > bitmap (bitmap_module): The module containing the bitmap to draw< / span >
< span class = "sd" > x (int): column to start drawing at< / span >
< span class = "sd" > y (int): row to start drawing at< / span >
< span class = "sd" > index (int): Optional index of bitmap to draw from multiple bitmap< / span >
< span class = "sd" > module< / span >
< span class = "sd" > " " " < / span >
< span class = "n" > width< / span > < span class = "o" > =< / span > < span class = "n" > bitmap< / span > < span class = "o" > .< / span > < span class = "n" > WIDTH< / span >
< span class = "n" > height< / span > < span class = "o" > =< / span > < span class = "n" > bitmap< / span > < span class = "o" > .< / span > < span class = "n" > HEIGHT< / span >
< span class = "n" > bitmap_size< / span > < span class = "o" > =< / span > < span class = "n" > height< / span > < span class = "o" > *< / span > < span class = "n" > width< / span >
< span class = "n" > bpp< / span > < span class = "o" > =< / span > < span class = "n" > bitmap< / span > < span class = "o" > .< / span > < span class = "n" > BPP< / span >
< span class = "n" > bs_bit< / span > < span class = "o" > =< / span > < span class = "n" > bpp< / span > < span class = "o" > *< / span > < span class = "n" > bitmap_size< / span > < span class = "o" > *< / span > < span class = "n" > index< / span > < span class = "c1" > # if index > 0 else 0< / span >
< span class = "n" > palette< / span > < span class = "o" > =< / span > < span class = "n" > bitmap< / span > < span class = "o" > .< / span > < span class = "n" > PALETTE< / span >
< span class = "n" > needs_swap< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > needs_swap< / span >
< span class = "n" > buffer< / span > < span class = "o" > =< / span > < span class = "nb" > bytearray< / span > < span class = "p" > (< / span > < span class = "n" > bitmap< / span > < span class = "o" > .< / span > < span class = "n" > WIDTH< / span > < span class = "o" > *< / span > < span class = "mi" > 2< / span > < span class = "p" > )< / span >
< span class = "k" > for< / span > < span class = "n" > row< / span > < span class = "ow" > in< / span > < span class = "nb" > range< / span > < span class = "p" > (< / span > < span class = "n" > height< / span > < span class = "p" > ):< / span >
< span class = "k" > for< / span > < span class = "n" > col< / span > < span class = "ow" > in< / span > < span class = "nb" > range< / span > < span class = "p" > (< / span > < span class = "n" > width< / span > < span class = "p" > ):< / span >
< span class = "n" > color_index< / span > < span class = "o" > =< / span > < span class = "mi" > 0< / span >
< span class = "k" > for< / span > < span class = "n" > _< / span > < span class = "ow" > in< / span > < span class = "nb" > range< / span > < span class = "p" > (< / span > < span class = "n" > bpp< / span > < span class = "p" > ):< / span >
< span class = "n" > color_index< / span > < span class = "o" > < < =< / span > < span class = "mi" > 1< / span >
< span class = "n" > color_index< / span > < span class = "o" > |=< / span > < span class = "p" > (< / span >
< span class = "n" > bitmap< / span > < span class = "o" > .< / span > < span class = "n" > BITMAP< / span > < span class = "p" > [< / span > < span class = "n" > bs_bit< / span > < span class = "o" > //< / span > < span class = "mi" > 8< / span > < span class = "p" > ]< / span > < span class = "o" > & < / span > < span class = "mi" > 1< / span > < span class = "o" > < < < / span > < span class = "p" > (< / span > < span class = "mi" > 7< / span > < span class = "o" > -< / span > < span class = "p" > (< / span > < span class = "n" > bs_bit< / span > < span class = "o" > %< / span > < span class = "mi" > 8< / span > < span class = "p" > ))< / span >
< span class = "p" > )< / span > < span class = "o" > > < / span > < span class = "mi" > 0< / span >
< span class = "n" > bs_bit< / span > < span class = "o" > +=< / span > < span class = "mi" > 1< / span >
< span class = "n" > color< / span > < span class = "o" > =< / span > < span class = "n" > palette< / span > < span class = "p" > [< / span > < span class = "n" > color_index< / span > < span class = "p" > ]< / span >
< span class = "k" > if< / span > < span class = "n" > needs_swap< / span > < span class = "p" > :< / span >
< span class = "n" > buffer< / span > < span class = "p" > [< / span > < span class = "n" > col< / span > < span class = "o" > *< / span > < span class = "mi" > 2< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > color< / span > < span class = "o" > & < / span > < span class = "mh" > 0xFF< / span >
< span class = "n" > buffer< / span > < span class = "p" > [< / span > < span class = "n" > col< / span > < span class = "o" > *< / span > < span class = "mi" > 2< / span > < span class = "o" > +< / span > < span class = "mi" > 1< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > color< / span > < span class = "o" > > > < / span > < span class = "mi" > 8< / span > < span class = "o" > & < / span > < span class = "mh" > 0xFF< / span >
< span class = "k" > else< / span > < span class = "p" > :< / span >
< span class = "n" > buffer< / span > < span class = "p" > [< / span > < span class = "n" > col< / span > < span class = "o" > *< / span > < span class = "mi" > 2< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > color< / span > < span class = "o" > > > < / span > < span class = "mi" > 8< / span > < span class = "o" > & < / span > < span class = "mh" > 0xFF< / span >
< span class = "n" > buffer< / span > < span class = "p" > [< / span > < span class = "n" > col< / span > < span class = "o" > *< / span > < span class = "mi" > 2< / span > < span class = "o" > +< / span > < span class = "mi" > 1< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > color< / span > < span class = "o" > & < / span > < span class = "mh" > 0xFF< / span >
< span class = "n" > to_col< / span > < span class = "o" > =< / span > < span class = "n" > x< / span > < span class = "o" > +< / span > < span class = "n" > width< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span >
< span class = "n" > to_row< / span > < span class = "o" > =< / span > < span class = "n" > y< / span > < span class = "o" > +< / span > < span class = "n" > row< / span >
< span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > width< / span > < span class = "o" > > < / span > < span class = "n" > to_col< / span > < span class = "ow" > and< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > height< / span > < span class = "o" > > < / span > < span class = "n" > to_row< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _set_window< / span > < span class = "p" > (< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "o" > +< / span > < span class = "n" > row< / span > < span class = "p" > ,< / span > < span class = "n" > to_col< / span > < span class = "p" > ,< / span > < span class = "n" > to_row< / span > < span class = "p" > )< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span > < span class = "n" > buffer< / span > < span class = "p" > )< / span > < / div >
2021-05-06 06:14:24 +00:00
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.write" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.write" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > write< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > font< / span > < span class = "p" > ,< / span > < span class = "n" > string< / span > < span class = "p" > ,< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > fg< / span > < span class = "o" > =< / span > < span class = "n" > WHITE< / span > < span class = "p" > ,< / span > < span class = "n" > bg< / span > < span class = "o" > =< / span > < span class = "n" > BLACK< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Write a string using a converted true-type font on the display starting< / span >
< span class = "sd" > at the specified column and row< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > font (font): The module containing the converted true-type font< / span >
< span class = "sd" > s (string): The string to write< / span >
< span class = "sd" > x (int): column to start writing< / span >
< span class = "sd" > y (int): row to start writing< / span >
< span class = "sd" > fg (int): foreground color, optional, defaults to WHITE< / span >
< span class = "sd" > bg (int): background color, optional, defaults to BLACK< / span >
< span class = "sd" > " " " < / span >
< span class = "n" > buffer_len< / span > < span class = "o" > =< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > HEIGHT< / span > < span class = "o" > *< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > MAX_WIDTH< / span > < span class = "o" > *< / span > < span class = "mi" > 2< / span >
< span class = "n" > buffer< / span > < span class = "o" > =< / span > < span class = "nb" > bytearray< / span > < span class = "p" > (< / span > < span class = "n" > buffer_len< / span > < span class = "p" > )< / span >
2023-11-30 01:56:48 +00:00
< span class = "n" > fg_hi< / span > < span class = "o" > =< / span > < span class = "n" > fg< / span > < span class = "o" > > > < / span > < span class = "mi" > 8< / span >
< span class = "n" > fg_lo< / span > < span class = "o" > =< / span > < span class = "n" > fg< / span > < span class = "o" > & < / span > < span class = "mh" > 0xFF< / span >
2021-05-06 06:14:24 +00:00
2023-11-30 01:56:48 +00:00
< span class = "n" > bg_hi< / span > < span class = "o" > =< / span > < span class = "n" > bg< / span > < span class = "o" > > > < / span > < span class = "mi" > 8< / span >
< span class = "n" > bg_lo< / span > < span class = "o" > =< / span > < span class = "n" > bg< / span > < span class = "o" > & < / span > < span class = "mh" > 0xFF< / span >
2021-05-06 06:14:24 +00:00
< span class = "k" > for< / span > < span class = "n" > character< / span > < span class = "ow" > in< / span > < span class = "n" > string< / span > < span class = "p" > :< / span >
< span class = "k" > try< / span > < span class = "p" > :< / span >
< span class = "n" > char_index< / span > < span class = "o" > =< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > MAP< / span > < span class = "o" > .< / span > < span class = "n" > index< / span > < span class = "p" > (< / span > < span class = "n" > character< / span > < span class = "p" > )< / span >
< span class = "n" > offset< / span > < span class = "o" > =< / span > < span class = "n" > char_index< / span > < span class = "o" > *< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > OFFSET_WIDTH< / span >
< span class = "n" > bs_bit< / span > < span class = "o" > =< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > OFFSETS< / span > < span class = "p" > [< / span > < span class = "n" > offset< / span > < span class = "p" > ]< / span >
< span class = "k" > if< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > OFFSET_WIDTH< / span > < span class = "o" > > < / span > < span class = "mi" > 1< / span > < span class = "p" > :< / span >
< span class = "n" > bs_bit< / span > < span class = "o" > =< / span > < span class = "p" > (< / span > < span class = "n" > bs_bit< / span > < span class = "o" > < < < / span > < span class = "mi" > 8< / span > < span class = "p" > )< / span > < span class = "o" > +< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > OFFSETS< / span > < span class = "p" > [< / span > < span class = "n" > offset< / span > < span class = "o" > +< / span > < span class = "mi" > 1< / span > < span class = "p" > ]< / span >
< span class = "k" > if< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > OFFSET_WIDTH< / span > < span class = "o" > > < / span > < span class = "mi" > 2< / span > < span class = "p" > :< / span >
< span class = "n" > bs_bit< / span > < span class = "o" > =< / span > < span class = "p" > (< / span > < span class = "n" > bs_bit< / span > < span class = "o" > < < < / span > < span class = "mi" > 8< / span > < span class = "p" > )< / span > < span class = "o" > +< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > OFFSETS< / span > < span class = "p" > [< / span > < span class = "n" > offset< / span > < span class = "o" > +< / span > < span class = "mi" > 2< / span > < span class = "p" > ]< / span >
< span class = "n" > char_width< / span > < span class = "o" > =< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > WIDTHS< / span > < span class = "p" > [< / span > < span class = "n" > char_index< / span > < span class = "p" > ]< / span >
< span class = "n" > buffer_needed< / span > < span class = "o" > =< / span > < span class = "n" > char_width< / span > < span class = "o" > *< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > HEIGHT< / span > < span class = "o" > *< / span > < span class = "mi" > 2< / span >
< span class = "k" > for< / span > < span class = "n" > i< / span > < span class = "ow" > in< / span > < span class = "nb" > range< / span > < span class = "p" > (< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "n" > buffer_needed< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > ):< / span >
< span class = "k" > if< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > BITMAPS< / span > < span class = "p" > [< / span > < span class = "n" > bs_bit< / span > < span class = "o" > //< / span > < span class = "mi" > 8< / span > < span class = "p" > ]< / span > < span class = "o" > & < / span > < span class = "mi" > 1< / span > < span class = "o" > < < < / span > < span class = "p" > (< / span > < span class = "mi" > 7< / span > < span class = "o" > -< / span > < span class = "p" > (< / span > < span class = "n" > bs_bit< / span > < span class = "o" > %< / span > < span class = "mi" > 8< / span > < span class = "p" > ))< / span > < span class = "o" > > < / span > < span class = "mi" > 0< / span > < span class = "p" > :< / span >
< span class = "n" > buffer< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_hi< / span >
< span class = "n" > buffer< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 1< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > fg_lo< / span >
< span class = "k" > else< / span > < span class = "p" > :< / span >
< span class = "n" > buffer< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > bg_hi< / span >
< span class = "n" > buffer< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > +< / span > < span class = "mi" > 1< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "n" > bg_lo< / span >
< span class = "n" > bs_bit< / span > < span class = "o" > +=< / span > < span class = "mi" > 1< / span >
< span class = "n" > to_col< / span > < span class = "o" > =< / span > < span class = "n" > x< / span > < span class = "o" > +< / span > < span class = "n" > char_width< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span >
< span class = "n" > to_row< / span > < span class = "o" > =< / span > < span class = "n" > y< / span > < span class = "o" > +< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > HEIGHT< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span >
< span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > width< / span > < span class = "o" > > < / span > < span class = "n" > to_col< / span > < span class = "ow" > and< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > height< / span > < span class = "o" > > < / span > < span class = "n" > to_row< / span > < span class = "p" > :< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _set_window< / span > < span class = "p" > (< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > to_col< / span > < span class = "p" > ,< / span > < span class = "n" > to_row< / span > < span class = "p" > )< / span >
2021-12-23 18:54:40 +00:00
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _write< / span > < span class = "p" > (< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span > < span class = "n" > buffer< / span > < span class = "p" > [:< / span > < span class = "n" > buffer_needed< / span > < span class = "p" > ])< / span >
2021-05-06 06:14:24 +00:00
< span class = "n" > x< / span > < span class = "o" > +=< / span > < span class = "n" > char_width< / span >
< span class = "k" > except< / span > < span class = "ne" > ValueError< / span > < span class = "p" > :< / span >
< span class = "k" > pass< / span > < / div >
2023-11-18 23:31:25 +00:00
< div class = "viewcode-block" id = "ST7789.write_width" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.write_width" > [docs]< / a >
< span class = "k" > def< / span > < span class = "nf" > write_width< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > font< / span > < span class = "p" > ,< / span > < span class = "n" > string< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > Returns the width in pixels of the string if it was written with the< / span >
< span class = "sd" > specified font< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > font (font): The module containing the converted true-type font< / span >
< span class = "sd" > string (string): The string to measure< / span >
2023-11-30 01:56:48 +00:00
< span class = "sd" > Returns:< / span >
< span class = "sd" > int: The width of the string in pixels< / span >
2021-05-06 06:14:24 +00:00
< span class = "sd" > " " " < / span >
< span class = "n" > width< / span > < span class = "o" > =< / span > < span class = "mi" > 0< / span >
< span class = "k" > for< / span > < span class = "n" > character< / span > < span class = "ow" > in< / span > < span class = "n" > string< / span > < span class = "p" > :< / span >
< span class = "k" > try< / span > < span class = "p" > :< / span >
< span class = "n" > char_index< / span > < span class = "o" > =< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > MAP< / span > < span class = "o" > .< / span > < span class = "n" > index< / span > < span class = "p" > (< / span > < span class = "n" > character< / span > < span class = "p" > )< / span >
< span class = "n" > width< / span > < span class = "o" > +=< / span > < span class = "n" > font< / span > < span class = "o" > .< / span > < span class = "n" > WIDTHS< / span > < span class = "p" > [< / span > < span class = "n" > char_index< / span > < span class = "p" > ]< / span >
< span class = "k" > except< / span > < span class = "ne" > ValueError< / span > < span class = "p" > :< / span >
< span class = "k" > pass< / span >
2023-11-18 23:31:25 +00:00
< span class = "k" > return< / span > < span class = "n" > width< / span > < / div >
2023-11-30 01:56:48 +00:00
< div class = "viewcode-block" id = "ST7789.polygon" >
< a class = "viewcode-back" href = "../st7789py.html#st7789py.ST7789.polygon" > [docs]< / a >
< span class = "nd" > @micropython< / span > < span class = "o" > .< / span > < span class = "n" > native< / span >
< span class = "k" > def< / span > < span class = "nf" > polygon< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > points< / span > < span class = "p" > ,< / span > < span class = "n" > x< / span > < span class = "p" > ,< / span > < span class = "n" > y< / span > < span class = "p" > ,< / span > < span class = "n" > color< / span > < span class = "p" > ,< / span > < span class = "n" > angle< / span > < span class = "o" > =< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "n" > center_x< / span > < span class = "o" > =< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / span > < span class = "n" > center_y< / span > < span class = "o" > =< / span > < span class = "mi" > 0< / span > < span class = "p" > ):< / span >
< span class = "w" > < / span > < span class = "sd" > " " " < / span >
< span class = "sd" > Draw a polygon on the display.< / span >
< span class = "sd" > Args:< / span >
< span class = "sd" > points (list): List of points to draw.< / span >
< span class = "sd" > x (int): X-coordinate of the polygon' s position.< / span >
< span class = "sd" > y (int): Y-coordinate of the polygon' s position.< / span >
< span class = "sd" > color (int): 565 encoded color.< / span >
< span class = "sd" > angle (float): Rotation angle in radians (default: 0).< / span >
< span class = "sd" > center_x (int): X-coordinate of the rotation center (default: 0).< / span >
< span class = "sd" > center_y (int): Y-coordinate of the rotation center (default: 0).< / span >
< span class = "sd" > Raises:< / span >
< span class = "sd" > ValueError: If the polygon has less than 3 points.< / span >
< span class = "sd" > " " " < / span >
< span class = "k" > if< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > points< / span > < span class = "p" > )< / span > < span class = "o" > < < / span > < span class = "mi" > 3< / span > < span class = "p" > :< / span >
< span class = "k" > raise< / span > < span class = "ne" > ValueError< / span > < span class = "p" > (< / span > < span class = "s2" > " Polygon must have at least 3 points." < / span > < span class = "p" > )< / span >
< span class = "k" > if< / span > < span class = "n" > angle< / span > < span class = "p" > :< / span >
< span class = "n" > cos_a< / span > < span class = "o" > =< / span > < span class = "n" > cos< / span > < span class = "p" > (< / span > < span class = "n" > angle< / span > < span class = "p" > )< / span >
< span class = "n" > sin_a< / span > < span class = "o" > =< / span > < span class = "n" > sin< / span > < span class = "p" > (< / span > < span class = "n" > angle< / span > < span class = "p" > )< / span >
< span class = "n" > rotated< / span > < span class = "o" > =< / span > < span class = "p" > [< / span >
< span class = "p" > (< / span >
< span class = "n" > x< / span >
< span class = "o" > +< / span > < span class = "n" > center_x< / span >
< span class = "o" > +< / span > < span class = "nb" > int< / span > < span class = "p" > (< / span >
< span class = "p" > (< / span > < span class = "n" > point< / span > < span class = "p" > [< / span > < span class = "mi" > 0< / span > < span class = "p" > ]< / span > < span class = "o" > -< / span > < span class = "n" > center_x< / span > < span class = "p" > )< / span > < span class = "o" > *< / span > < span class = "n" > cos_a< / span > < span class = "o" > -< / span > < span class = "p" > (< / span > < span class = "n" > point< / span > < span class = "p" > [< / span > < span class = "mi" > 1< / span > < span class = "p" > ]< / span > < span class = "o" > -< / span > < span class = "n" > center_y< / span > < span class = "p" > )< / span > < span class = "o" > *< / span > < span class = "n" > sin_a< / span >
< span class = "p" > ),< / span >
< span class = "n" > y< / span >
< span class = "o" > +< / span > < span class = "n" > center_y< / span >
< span class = "o" > +< / span > < span class = "nb" > int< / span > < span class = "p" > (< / span >
< span class = "p" > (< / span > < span class = "n" > point< / span > < span class = "p" > [< / span > < span class = "mi" > 0< / span > < span class = "p" > ]< / span > < span class = "o" > -< / span > < span class = "n" > center_x< / span > < span class = "p" > )< / span > < span class = "o" > *< / span > < span class = "n" > sin_a< / span > < span class = "o" > +< / span > < span class = "p" > (< / span > < span class = "n" > point< / span > < span class = "p" > [< / span > < span class = "mi" > 1< / span > < span class = "p" > ]< / span > < span class = "o" > -< / span > < span class = "n" > center_y< / span > < span class = "p" > )< / span > < span class = "o" > *< / span > < span class = "n" > cos_a< / span >
< span class = "p" > ),< / span >
< span class = "p" > )< / span >
< span class = "k" > for< / span > < span class = "n" > point< / span > < span class = "ow" > in< / span > < span class = "n" > points< / span >
< span class = "p" > ]< / span >
< span class = "k" > else< / span > < span class = "p" > :< / span >
< span class = "n" > rotated< / span > < span class = "o" > =< / span > < span class = "p" > [(< / span > < span class = "n" > x< / span > < span class = "o" > +< / span > < span class = "nb" > int< / span > < span class = "p" > ((< / span > < span class = "n" > point< / span > < span class = "p" > [< / span > < span class = "mi" > 0< / span > < span class = "p" > ])),< / span > < span class = "n" > y< / span > < span class = "o" > +< / span > < span class = "nb" > int< / span > < span class = "p" > ((< / span > < span class = "n" > point< / span > < span class = "p" > [< / span > < span class = "mi" > 1< / span > < span class = "p" > ])))< / span > < span class = "k" > for< / span > < span class = "n" > point< / span > < span class = "ow" > in< / span > < span class = "n" > points< / span > < span class = "p" > ]< / span >
< span class = "k" > for< / span > < span class = "n" > i< / span > < span class = "ow" > in< / span > < span class = "nb" > range< / span > < span class = "p" > (< / span > < span class = "mi" > 1< / span > < span class = "p" > ,< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > rotated< / span > < span class = "p" > )):< / span >
< span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > line< / span > < span class = "p" > (< / span >
< span class = "n" > rotated< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span > < span class = "p" > ][< / span > < span class = "mi" > 0< / span > < span class = "p" > ],< / span >
< span class = "n" > rotated< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span > < span class = "p" > ][< / span > < span class = "mi" > 1< / span > < span class = "p" > ],< / span >
< span class = "n" > rotated< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "p" > ][< / span > < span class = "mi" > 0< / span > < span class = "p" > ],< / span >
< span class = "n" > rotated< / span > < span class = "p" > [< / span > < span class = "n" > i< / span > < span class = "p" > ][< / span > < span class = "mi" > 1< / span > < span class = "p" > ],< / span >
< span class = "n" > color< / span > < span class = "p" > ,< / span >
< span class = "p" > )< / span > < / div >
2023-11-18 23:31:25 +00:00
< / div >
2021-05-06 06:14:24 +00:00
< / pre > < / div >
< / div >
< / div >
< footer >
< hr / >
< div role = "contentinfo" >
2021-12-23 18:54:40 +00:00
< p > < / p >
2021-05-06 06:14:24 +00:00
< / div >
2021-12-23 18:54:40 +00:00
Built with < a href = "https://www.sphinx-doc.org/" > Sphinx< / a > using a
2021-05-06 06:14:24 +00:00
< a href = "https://github.com/readthedocs/sphinx_rtd_theme" > theme< / a >
2021-12-23 18:54:40 +00:00
provided by < a href = "https://readthedocs.org" > Read the Docs< / a > .
2021-05-06 06:14:24 +00:00
< / footer >
< / div >
< / div >
< / section >
< / div >
2021-12-23 18:54:40 +00:00
< script >
2021-05-06 06:14:24 +00:00
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
2021-12-23 18:54:40 +00:00
< / script >
2021-05-06 06:14:24 +00:00
< / body >
< / html >