作为一款本地AI图象识别开发板,BW21-CBV-Kit它能够独自运行目标识别模型。2.4GHz+5GHz的双频Wi-Fi,提供高性能的无线传输能力,让图象传输更加流畅。丰富的接口,搭配着AI识别,可以扩展出无限可能。
BW21-CBV-Kit支持Arduino的开发方式,可以简单实现一些DIY想法,例如:人脸识别、手势识别、物品识别等。
这次小安给大家带来的是小安派BW21-CBV-Kit——驱动 ILI9341 TFT 显示屏
DMP6 读取 MPU6050 转换为 ROS 的 IMU 数据
用料
BW21-CBV-Kit x 1
ILI9341 TFT 显示屏 x 1
示例
我们测试了以下两种带 SPI 接口的 ILI9341 TFT LCD 型号:
Adafruit 2.8 英寸 TFT LCD(带触摸屏)
https://www.adafruit.com/products/1651
https://learn.adafruit.com/adafruit-2-8-tft-touch-shield-v2?view=all
QVGA 2.2″ TFT LCD
http://www.lcdwiki.com/2.2inch_SPI_Module_ILI9341_SKU:MSP2202
带 SPI 接口的 ILI9341 TFT LCD 的常用引脚:
MOSI:标准 SPI 主机输出从机输入引脚
MISO:标准 SPI 主机输入从机输出引脚
SLK: 标准 SPI 时钟引脚
CS:标准 SPI 片选引脚
RESET: 用于重新启动 LCD
D/C: 数据/命令。 当它处于低电平时,传输的信号为命令,否则传输的数据为数据。
LED(或 BL): 调整屏幕背光。 可由 PWM 控制或连接至 VCC 以获得 100% 的背光。
VCC: 连接至 3V 或 5V,取决于其规格。
GND:连接至 GND。
BW21-CBV-Kit 和 QVGA TFT LCD 接线图:

BW21-CBV-Kit 和 Adafruit 2.8" TFT LCD 触摸屏接线图:
请注意
该屏幕型号默认启用背光,第 8 引脚不用于背光,VCC 应连接至 5V。
打开示例,"文件" -> "示例" -> "AmebaSPI"->"LCD_Screen_ILI9341_TFT"。

编译并上传到 BW21-CBV-Kit,然后按下重置按钮。
然后就可以看到液晶屏上出现一些显示测试,如显示不同颜色、绘制垂直线和水平线、画圆等.....
此外,它还可以根据屏幕尺寸显示任何用户图像。 这里的在线图像转换工具支持以 png、jpg gif 格式输入图像,以 .c 文件形式输出。
转换完成后,将 .c 文件放入我们的模板 Amebalogo.h 文件中,然后再次上传代码。
代码参考
●RGB 16-bit
ILI9341 使用 RGB 16 位来显示颜色。 与 RGB 24 位不同,它使用 5 位红色、6 位绿色和 5 位蓝色。 例如,天蓝色的 RGB 24 位表示法是 0x87CEFF,即二进制:
红: 0x87 = B10000111
绿: 0xCE = B11001110
蓝: 0xFF = B11111111
并转换为 RGB 16 位:
红: B10000
绿: B110011
蓝: B11111
然后将它们连接起来,形成 B1000011001111111 = 0x867F
●Drawing of ILI9341
首先必须指定要绘制的矩形范围,然后将每个像素对应的 2 字节 RGB 16 位颜色逐一传递给 ILI9341,这样 ILI9341 就会将每种颜色填充到每个像素上。
即使绘图范围只覆盖一个像素,您仍然必须指定绘图范围。
根据上述规则,我们可以得出结论:画垂直线或水平线比画对角线快。
●Printing text on ILI9341
在我们的应用程序接口中,每个字符的大小是 5x7,但每个字符都打印成 6x8(其右侧和下方留空),以便与下一个字符分开。 例如,字符 "A":
字体大小表示点的大小。 例如,如果字体大小为 2,字符中的每个点就是一个 2x2 的矩形
●屏幕旋转
ILI9341 提供 0、90、180 和 270 度屏幕旋转功能。
如果原始宽度为 240,原始高度为 320,当屏幕旋转 90 度时,宽度变为 320,高度变为 240。














