0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

R128实现SPI驱动TFT LCD屏教程

全志在线 来源:全志在线开发者论坛 2023-10-21 16:31 次阅读

SPI驱动TFT LCD屏

真的不要太简单~

R128 平台提供了 SPI DBI 的 SPI TFT 接口,具有如下特点:

2a0c083a-6feb-11ee-939d-92fbcf53809c.png

同时,提供了SPILCD驱动框架以供 SPI 屏幕使用,本次使用的是 Dshan_Display Module,如下图:

2a19d6a4-6feb-11ee-939d-92fbcf53809c.png

1引脚配置

屏幕

2a637124-6feb-11ee-939d-92fbcf53809c.png2a6e738a-6feb-11ee-939d-92fbcf53809c.png

2载入方案

我们使用的开发板是 R128-Devkit,需要开发 C906 核心的应用程序,所以载入方案选择r128s2_module_c906

$ source envsetup.sh 
$ lunch_rtos 1
2ab05372-6feb-11ee-939d-92fbcf53809c.png

3SPI驱动

设置

屏幕使用的是SPI驱动,所以需要勾选SPI驱动,运行 mrtos_menuconfig 进入配置页面。前往下列地址找到 SPI Devices

Drivers Options --->
  soc related device drivers --->
    SPI Devices --->
    -*- enable spi driver
2af3ce40-6feb-11ee-939d-92fbcf53809c.png

打开你喜欢的编辑器,修改文件:

board/r128s2/module/configs/sys_config.fex,

在这里我们不需要用到 SPI HOLD与SPI WP引脚,注释掉即可。

;----------------------------------------------------------------------------------
;SPI controller configuration
;----------------------------------------------------------------------------------
;Please config spi in dts
[spi1]
spi1_used    = 1
spi1_cs_number = 1
spi1_cs_bitmap = 1
spi1_cs0    = port:PA12<6><0><3>
spi1_sclk    = port:PA13<6><0><3>
spi1_mosi    = port:PA18<6><0><3>
spi1_miso    = port:PA21<6><0><3>
;spi1_hold    = port:PA19<6><0><2>
;spi1_wp     = port:PA20<6><0><2>
2afc9e62-6feb-11ee-939d-92fbcf53809c.png

4PWM驱动

设置

屏幕背光使用的是PWM驱动,所以需要勾选PWM驱动,运行 mrtos_menuconfig 进入配置页面。前往下列地址找到 PWM Devices

Drivers Options --->
  soc related device drivers --->
    PWM Devices --->
    -*- enable pwm driver
2af3ce40-6feb-11ee-939d-92fbcf53809c.png

打开你喜欢的编辑器,修改文件:

board/r128s2/module/configs/sys_config.fex

增加 PWM1 节点

[pwm1]
pwm_used    = 1
pwm_positive  = port:PA9<4><0><3>
2b4abda4-6feb-11ee-939d-92fbcf53809c.png

5SPI LCD驱动

设置

SPI LCD 由专门的驱动管理。运行 mrtos_menuconfig 进入配置页面。前往下列地址找到 SPILCD Devices ,注意同时勾选spilcd hal APIs test 方便测试使用。

Drivers Options --->
  soc related device drivers --->
    [*] DISP Driver Support(spi_lcd)
    [*]  spilcd hal APIs test
2b930d02-6feb-11ee-939d-92fbcf53809c.png

在 SPILCD 驱动选择界面可以看到LCD_FB panels select选择 SPI 屏幕的驱动,本文只注重于 SPI LCD 的使用,驱动编写请查看《SPI LCD 显示驱动》,进入LCD_FB panels select选项

2ba030e0-6feb-11ee-939d-92fbcf53809c.png

选择并勾选[*] LCD support JLT35031C panel

2bb7f1c6-6feb-11ee-939d-92fbcf53809c.png

打开你喜欢的编辑器,修改文件:

board/r128s2/module/configs/sys_config.fex
2bc07a94-6feb-11ee-939d-92fbcf53809c.png

6LCD亮屏测试

演示

以上配置完成后,编译打包烧录,上电后屏幕背光亮起,屏幕为黑色。

2c07081a-6feb-11ee-939d-92fbcf53809c.png

并且可以看到以下两个部分初始化的 LOG。

[LCD_FB] lcd_fb_probe,line:103: 和 spi_clk_init()1609 [spi1] clk rate auto adjust to 48000000 SPI
2c135f5c-6feb-11ee-939d-92fbcf53809c.png

然后可以用test_spilcd测试屏幕,日志如下

2c238328-6feb-11ee-939d-92fbcf53809c.png

执行命令之后屏幕会变为黄色。

2c36d2a2-6feb-11ee-939d-92fbcf53809c.png

7R128开发板

购买

基于R128-S2设计的全套开发板已上线淘宝百问网韦东山老师个人店进行售卖,包含黑色的DshanMCU-R128s2-R16N16模组和全套的DshanMCU-R128s2-DEVKIT。

DshanMCU-R128s2-R16N16模组:39.9元

DshanMCU-R128s2-DEVKIT开发板:59.9元

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • lcd
    lcd
    +关注

    关注

    34

    文章

    4424

    浏览量

    167394
  • 接口
    +关注

    关注

    33

    文章

    8575

    浏览量

    151014
  • SPI
    SPI
    +关注

    关注

    17

    文章

    1706

    浏览量

    91498
  • 引脚
    +关注

    关注

    16

    文章

    1193

    浏览量

    50409
  • 开发板
    +关注

    关注

    25

    文章

    5032

    浏览量

    97371
  • R128
    +关注

    关注

    0

    文章

    41

    浏览量

    105

原文标题:3个配置让R128实现SPI驱动LCD屏

文章出处:【微信号:gh_79acfa3aa3e3,微信公众号:全志在线】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    全志R128应用开发案例—适配SPI驱动ST7789V2.4寸LCD

    R128 平台提供了 SPI DBI 的 SPI TFT 接口,具有如下特点
    的头像 发表于 11-02 16:44 995次阅读
    全志<b class='flag-5'>R128</b>应用开发案例—适配<b class='flag-5'>SPI</b><b class='flag-5'>驱动</b>ST7789V2.4寸<b class='flag-5'>LCD</b>

    全志R128应用开发案例—SPI驱动ST7789V1.3寸LCD

    此次适配的SPI为 `ZJY130S0800TG01`,使用的是 SPI 进行驱动
    的头像 发表于 11-06 12:40 1148次阅读
    全志<b class='flag-5'>R128</b>应用开发案例—<b class='flag-5'>SPI</b><b class='flag-5'>驱动</b>ST7789V1.3寸<b class='flag-5'>LCD</b>

    R128平台SPI与DBI接口的性能对比

    R128平台SPI与DBI接口的性能对比
    的头像 发表于 11-15 09:08 1051次阅读
    <b class='flag-5'>R128</b>平台<b class='flag-5'>SPI</b>与DBI接口的性能对比

    全志R128内存泄漏调试案例分享

    硬件:R128 软件:FreeRTOS + rtplayer\_test(Cedarx)+ AudioSystem
    的头像 发表于 11-20 17:27 1013次阅读
    全志<b class='flag-5'>R128</b>内存泄漏调试案例分享

    R128踩坑笔记

    本文所整理的R128踩坑笔记均是在参考以下应用开发案例进行屏幕适配时遇到的实际开发问题,涵盖了屏幕花屏、屏幕白屏、LVGL显示颜色错误等常见问题的解决方法。
    的头像 发表于 12-03 10:17 1312次阅读
    <b class='flag-5'>R128</b>点<b class='flag-5'>屏</b>踩坑笔记

    纵享丝滑!全志R128+LVGL驱动多尺寸RGB LCD屏幕流畅运行

    (480x480) 4寸圆RGB(480x480) R128适配RGB LCD配置如动图展示,其中最大的屏幕是 7寸1024x600分辨率,lvgl测试不加触摸能跑60多帧,加触摸是58帧左右
    发表于 12-22 09:52

    全志R128使用SPI驱动ST7789V1.47寸LCD

    ZJY147S0800TG01,使用的是 SPI 进行驱动。 引脚配置如下: [td]R128 DevkitTFT 模块 PA12CS PA13SCL PA18SDA PA9BLK PA20RES
    发表于 01-02 09:45

    全志R128硬件设计指南①

    。添加按键时保证按键按下后,ADC网络电压范围为 0~1.08V,最小间隔大于 200mV。 LCD电路接口R128 支持一路 RGB接口和一路 SPI
    发表于 01-04 09:23

    使用全志R128将LVGL运行在SPI TFT GUI上

    载入方案选择 r128s2_module_c906 $ source envsetup.sh $ lunch_rtos 1 配置 SPI LCD 驱动
    发表于 10-23 13:56

    全志R128应用开发案例——SPI 驱动 TFT LCD

    SPI 驱动 TFT LCD R128 平台提供了 SP
    发表于 10-23 14:29

    全志R128应用开发案例——适配SPI驱动ST7789V2.4寸LCD

    SPI驱动ST7789V1.47寸LCD R128 平台提供了 SPI DBI 的 SPI
    发表于 11-02 13:36

    全志R128应用开发案例——SPI驱动ST7789V1.3寸LCD

    SPI驱动ST7789V1.3寸LCD R128 平台提供了 SPI DBI 的 SPI
    发表于 11-06 10:16

    全志R128SPI LCD颜色相关问题

    spi 都很难,甚至无法实现。所以 normal spi 只能模拟4 线的DBI的写操作。 对于R128这类支持DBI接口的CPU,可以选择不去了解
    发表于 12-06 09:50

    全志R128适配ST7789v LCD

    R128 平台提供了 SPI DBI 的 SPI TFT 接口,具有如下特点
    的头像 发表于 10-23 11:26 974次阅读
    全志<b class='flag-5'>R128</b>适配ST7789v <b class='flag-5'>LCD</b>

    DshanMCU-R128s2 R128 EVT 开发套件

    针对 R128 模组,百问科技推出了 R128 EVT 开发套件作为快速开发评估工具。
    的头像 发表于 12-22 15:16 776次阅读
    DshanMCU-<b class='flag-5'>R128</b>s2 <b class='flag-5'>R128</b> EVT 开发套件