本帖最后由 wukong50 于 2024-4-16 07:38 编辑
说明
本次验证了 WangChong 大佬 SPI 驱动 ILI9488 3.5寸LCD 外设库
【外设移植】Ai-M61-32s 开发板+3.5寸SPI彩屏 - DIY 经验分享 - 物联网开发者社区-安信可论坛 - Powered by Discuz! (ai-thinker.com)
Demo中有些库函数没使用,自己加了些
验证成功
显示速度没这么慢,为了能显示,改成 gif 图片,中间断帧
使用
我把外设移植通过验证的的库统一会放到 Gitee 仓库,仓库中分别有 SDK 库方式 和 Arduino 库方式(可移植)
接线
M61-32S |
3.5寸SPI屏 |
VCC |
VCC |
GND |
GND |
IO12 |
CS |
IO26 |
RS |
IO27 |
D/C |
IO19 |
SDI |
IO13 |
SCL |
IO28 |
BL |
IO18 |
SDO |
GIT 仓库
https://gitee.com/wukong50/m61-libraries.git
SDK 使用方式
SDK 模式
- 克隆 Git 仓库
- 切换到此目录下
m61-libraries\LCD_ILI9488_350\SDK\LCD_ILI9488_350
- 修改 Makefile SDK 路径
- 直接 make flash 即可
- 烧录的时候需要手动进入烧录模式,先将按住板子上的"IO2"再按一下"EN"使板子进入烧录模式
- 烧录有问题,请看文章末尾答疑
Arduino 模式
- 克隆 Git 仓库
- 复制此目录下文件夹到 Arduino 项目目录 libraries 目录里面
m61-libraries\LCD_ILI9488_350\Arduino
如图 我的项目文件夹在 D 盘 M61 目录下
那 M61 目录结构就是 libraries 里面粘贴 LCD_ILI9488_350 ,如果 libraries 目录没有,需要手动新建一个
目录结构
M61/
└── libraries
└── LCD_ILI9488_350
├── examples
│ └── LCD350
│ └── LCD350.ino
├── library.properties
└── src
├── lcd.cpp
├── lcdfont.h
├── lcd.h
├── lcd_init.cpp
├── lcd_init.h
├── pic.h
├── typedef.h
├── USER_SPI.cpp
└── USER_SPI.h
此时,选择好开发板
在示例中点击示例,就可以运行了
- 烧录的时候需要手动进入烧录模式,先将按住板子上的"IO2"再按一下"EN"使板子进入烧录模式
答疑
- 如何搭建 linux 环境
零基础搭建小安派 Linux 开发环境之【编译运行 Hello world】 - 小安派 S1&M61 教程合集 - 物联网开发者社区-安信可论坛 - Powered by Discuz! (ai-thinker.com)
- 编译报错#lwip/dns.h
关于编译报错#lwip/dns.h 找不到的解决办法 - 小安派 S1&M61 教程合集 - 物联网开发者社区-安信可论坛 - Powered by Discuz! (ai-thinker.com)
- 如何搭建 Arduino 环境
小安派自学笔记 3-arduino 环境安装与编译点灯 - 小安派 S1&M61 教程合集 - 物联网开发者社区-安信可论坛 - Powered by Discuz! (ai-thinker.com)
最后的问题:
颜色问题,我画直线,设置蓝色,结果显示黄色,字母A那也是 不知道什么问题有点超纲 还请懂的大佬解释下
我用的kit,12 27号引脚都有LED
LCD_DrawLine(10, 20, 50, 20, BLUE);
LCD_DrawLine(10, 20, 50, 50, BLUE);
// 指定位置显示一个字符
LCD_ShowChar(300, 40, 'A', BLUE, GREEN, 32, 0);