nRF52832-Bluefruit52学习之MicroPython开发(5)-- TFT屏驱动ST7789

2024-01-19 06:08

本文主要是介绍nRF52832-Bluefruit52学习之MicroPython开发(5)-- TFT屏驱动ST7789,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

nRF52832技术交流群:680723714
       nRF52832-Bluefruit52核心板详细介绍:
https://blog.csdn.net/solar_Lan/article/details/88688451
       MicroPython固件持续更新下载,请加QQ群:680723714,群名:Bluefruit52官方技术群
       nRF52832板子的MicroPython学习Wiki请浏览地址:
https://www.afantor.cc/mpy/html/nrf52/quickref.html


LCD 的TFT屏驱动应用

LCD模块包含与nRF52832 Bluefruit52模块相关的特定功能。某些功能仅在这些端口中的一个或另一个上可用。

原理图与引脚连接

LCD_SDA ---> P0.07

LCD_SCL---> P0.27

LCD_DC ---> P0.16

LCD_RST ---> P0.23

LCD_CS ---> P0.24

LCD_LEDK --> ! LCD_CS

API函数介绍与使用

LCD.init(direction)

       初始化TFT显示屏ST7789寄存器,并清除屏幕显示.

       如果提供direction参数,则将屏幕显示方向设置为其值。在没有参数的情况下调用该函数,则默认direction=3,即屏幕水平向下显示。

direction参数值及对应方向:

  • direction = 0 - 垂直屏幕向左显示,
  • direction = 1 - 垂直屏幕向右显示,
  • direction = 2 - 垂直屏幕向上显示,
  • direction = 3 - 垂直屏幕向下显示。

LCD.clear(LCD.BLACK)

清除屏幕显示,将屏幕填充为您想要的颜色。

LCD.drawBigPoint(xycolor)

绘制一个大像素点,输入参数有:位置坐标:'x','y' 和设置颜色值 'color'。

LCD.drawPoint(xycolor)

绘制一个普通像素点,输入参数有:位置坐标:'x','y' 和设置颜色值'color'。

LCD.drawCircle(xyradcolor)

绘制一个圆形,输入参数有:位置坐标:'x','y',圆半径'radius',和设置颜色值'color'。

LCD.drawLine(x1y1x2y2color)

绘制一条线,输入参数:起始坐标:x1,y1,终点坐标:x2,y2,设置颜色值'color'。

LCD.drawRectangle(x1y1x2y2color)

绘制一个矩形,输入参数:x1,y1,x2,y2,color。起始位置坐标:x1,y1,结束位置坐标:x2,y2,设置线条颜色值:颜色

LCD.fill(x1y1x2y2color)

选择填充矩形区域并设置填充颜色。输入参数:x1,y1,x2,y2,color。矩形对角线坐标,起始位置坐标:x1,y1,结束位置坐标:x2,y2,设置填充颜色值:颜色

LCD.fillScreen(color)

将整个屏幕填充为一种颜色。输入参数:color

LCD.showBLE(xy)

显示BLE图标。图像分辨率为40 * 40。输入参数起始坐标:x,y

LCD.showChar(xycharmodecolor)

显示字符,输入参数:x,y,char,mode,color。设置坐标:x,y。char:ASCII码十进制数(例如48:显示数字0)。模式:1:叠加背景色,0:非叠加(默认白色)。颜色:字符颜色。

LCD.showFloat(xyfloatlencolor)

显示小数数值,输入参数:x,y,float,len,color。float:浮点数,只有两位小数。len:显示数字大小len。

LCD.showLogo()

显示Bluetooth徽标图像。布满整个屏幕。图像分辨率为135 * 240。

LCD.showNum(xynumlencolor)

显示整数数值,输入参数:x,y,num,len,color

LCD.showPicture(startlength)

显示企鹅徽标。图像分辨率为40 * 40。输入参数起始坐标:x,y

LCD.showString(xy'Hello'color)

显示字符串,输入参数:x,y,string,color。示例: LCD.showString(10,10,'Hello World!',LCD.RED)

LCD.showChinese(startlength)

注意:暂时不开放。

颜色常量

LCD.WHITE  (0xFFFF)

LCD.BLACK  (0x0000)

LCD.BLUE  (0x001F)

LCD.BRED  (0XF81F)

LCD.GRED  (0XFFE0)

LCD.GBLUE  (0X07FF)

LCD.RED  (0xF800)

LCD.MAGENTA  (0xF81F)

LCD.GREEN  (0x07E0)

LCD.CYAN  (0x7FFF)

LCD.YELLOW  (0xFFE0)

LCD.BROWN  (0XBC40)

LCD.BRRED  (0XFC07)

LCD.GRAY  (0X8430)

LCD.DARKBLUE  (0X01CF)

LCD.LIGHTBLUE  (0X7D7C)

LCD.GRAYBLUE  (0X5458)

LCD.IGHTGREEN  (0X841F)

LCD.LGRAY  (0XC618)

LCD.LGRAYBLUE  (0XA651)

LCD.LBBLUE  (0X2B12)

 

示例:

from machine import *lcd = LCD()
lcd.init(3)
lcd.clear(LCD.BLACK)lcd.drawCircle(67,67,50,LCD.GREEN)

 

这篇关于nRF52832-Bluefruit52学习之MicroPython开发(5)-- TFT屏驱动ST7789的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/621462

相关文章

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

C#图表开发之Chart详解

《C#图表开发之Chart详解》C#中的Chart控件用于开发图表功能,具有Series和ChartArea两个重要属性,Series属性是SeriesCollection类型,包含多个Series对... 目录OverviChina编程ewSeries类总结OverviewC#中,开发图表功能的控件是Char

鸿蒙开发搭建flutter适配的开发环境

《鸿蒙开发搭建flutter适配的开发环境》文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutterdoctor检测环境、创建项目、编译HAP包以及在真机上运... 目录环境搭建创建运行项目打包项目总结环境搭建1.安装 DevEco Studio NEXT IDE

Python开发围棋游戏的实例代码(实现全部功能)

《Python开发围棋游戏的实例代码(实现全部功能)》围棋是一种古老而复杂的策略棋类游戏,起源于中国,已有超过2500年的历史,本文介绍了如何用Python开发一个简单的围棋游戏,实例代码涵盖了游戏的... 目录1. 围棋游戏概述1.1 游戏规则1.2 游戏设计思路2. 环境准备3. 创建棋盘3.1 棋盘类

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template