8266驱动spi屏ST7735小结

8266+arduino确实是一个神奇的组合,很适合新人入手,不过对于从51或者32转型的过来人,使用起来颇有些崴脚。首先是开源库的存在,依托arduino的开源,在IDE或者github有很多的开源库使用,我猜测现有的一些驱动,估计都能找到驱动库,具体怎么找可能就要自己花费些时间了。

前情提要:

导线连接:
     ESP8266--------------------TFT

  • GPIO4--------------------RST
  • GPIO5--------------------D/C
  • GPIO13(MOSI)-----------DIN(SDI,MOSI)
  • GPIO14(SCK)-------------CLK(SCK)
  • GPIO15(SS,CS)-----------CS(SS)
  • 3.3V----------------------3.3V,LED+100R电阻
  • GND---------------------GND

(括号里的为同一个io不同称呼)

ESP8266引脚名称对应关系参考下图

接入ST7735

将下面两个库放到自己环境的对应目录下

两个库的源码和我的APP代码压缩包已经上传到我的github

git@github.com:zip-link/8266_ST7735tft.git

可以直接参考我的APP(我的也是抄的别人的),APP实现的功能是webserver+1.8寸tft显示图片。tft屏幕的图片可以在web重新上传,当然上传的图片格式也是有要求的,只是实现的bmp格式,而且像素大小必须和屏幕保持一致。比如我的屏幕是128*160的,所以上传的图片必须是128*160像素的。

完全编译APP的代码是1.8寸tft, 如果你的屏幕是1.4的可以在APP代码中改动

参考7533库的对应的你的屏幕尺寸的宏就可以

APP实现的整个工作流程:
8266连接路由器-->8266建立web服务器-->电脑访问web页面-->上传图片-->保存图片到flash-->读取图片数据-->发送个给tft显示

贴下最终的实现效果

开源库的使用

为了使用8266快速接入某个模块,首先可以找到对应的驱动库,可能比较耗费时间,github和百度。比如我这次接入的ST7735百度了很长时间,尝试了多次,才找到合适的。正常的库文件一般都是自带例程的。需要将库解压到libraries下,之后就可以在,IDE中找到了。例程中一般是基础功能的展示,依次烧录下可以更加熟悉下整个模块的功能。

在.h参考模块对外API,自己的代码中引用对应的.即可使用相关接口。

 

 

 

  • 9
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
### 回答1: 编写ESP8266驱动SPI幕的程序涉及以下几个步骤: 1. 引入必要的库文件:首先,需要引入ESP8266相关的库文件,例如ESP8266WiFi和ESP8266WiFiSPI等。 2. 配置SPI接口:根据SPI幕的规格,设置正确的引脚并初始化SPI接口。可以使用SPI.begin()函数初始化SPI接口,并使用SPI_SetFrequency()和SPI_SetDataMode()等函数设置频率和数据传输模式。 3. 设置SPI幕参数:根据SPI幕的规格,设置正确的分辨率、像素格式、亮度等参数。可以使用相应的命令或函数设置这些参数。 4. 编写显示函数:编写函数来显示图像、文本或其他内容。根据SPI幕的规格,使用合适的命令或函数来绘制像素、绘制图形或输出文本等。 5. 主程序中调用显示函数:在主程序中调用显示函数来更新幕内容。可以根据需要设置显示内容的更新频率,并通过函数来更新内容。 6. 添加时钟中断或使用延时函数:为了实现实时更新幕内容,可以使用时钟中断或延时函数来控制刷新频率。此外,还可以添加其他的控制逻辑,例如按键控制或传感器数据的显示。 以上是基本的编写ESP8266驱动SPI幕程序的步骤。根据具体的SPI幕型号和规格,可能还会有一些特定的设置和操作,需要参考相关的文档或资料。 ### 回答2: ESP8266驱动SPI幕的程序主要分为以下几个步骤: 1. 首先,需要包含相应的头文件和库文件,例如ESP8266WiFi.h、Adafruit_GFX.h和Adafruit_ILI9341_ESP8266.h等。 2. 在程序中定义SPI引脚的连接关系,包括CLK、MISO、MOSI和CS引脚的端口号。 3. 创建一个实例对象来初始化SPI幕,并设置幕的分辨率、字体、颜色等参数。 4. 在setup()函数中,连接WiFi网络,并调用begin()函数来初始化SPI通信和幕。 5. 在loop()函数中,可以利用指定的坐标和大小来绘制文本、图形和图标等。可以使用幕的提供的函数来绘制线条、填充矩形、绘制圆形等。 6. 如果要显示更多内容,可以使用scroll()函数来在幕上滚动显示文本或图像。 7. 最后,可以通过调用display()函数来更新并显示在幕上所绘制的内容。 需要注意的是,在程序编写过程中,需要根据具体的SPI幕型号和库文件的要求,进行相应的配置和调整。例如,需要确保引脚的连接正确,以及使用正确的幕绘制函数等。 总之,通过以上步骤,我们可以使用ESP8266驱动SPI幕,并在幕上显示文本、图形和图标等内容。 ### 回答3: ESP8266驱动SPI幕的程序可以通过以下步骤实现: 1. 引入SPI库:首先需要在代码中引入ESP8266SPI库,以便可以使用SPI接口与幕进行通信。 2. 配置引脚:根据SPI幕的接口定义,选择合适的引脚用于SPI通信。通过GPIO库或ESP8266的专用引脚库,将这些引脚设置为对应的SPI时钟、数据输入和数据输出。 3. 初始化SPI:使用SPI库提供的函数,初始化SPI接口。设置SPI模式、数据位顺序和时钟速率等参数。 4. 驱动幕:使用SPI库提供的函数,向幕发送初始化命令,配置幕的初始化参数和显示模式。然后,使用SPI接口传输像素数据到幕缓冲区。 5. 显示内容:根据具体的需求,将需要显示的内容转换为对应的像素数据,并通过SPI接口发送到幕缓冲区。可以使用图形库或自定义绘图函数,将文本、图像等内容渲染成像素数据。 6. 刷新幕:在幕缓冲区的内容更新后,使用SPI接口将更新的像素数据传输到幕上,实现显示更新。可以根据需要设置刷新频率,以平衡显示效果和性能。 7. 支持触摸功能(如果需要):如果SPI幕支持触摸功能,可以在程序中添加对触摸事件的处理。通过读取SPI接口返回的触摸数据,实现对触摸事件的识别和处理。 以上是ESP8266驱动SPI幕的基本步骤,具体的实现细节会根据所使用的硬件和幕类型而有所不同。可以参考硬件供应商提供的技术文档和示例代码,或者查阅相关的ESP8266开发文档,以更好地了解和实现该功能。
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值