您尚未登录。

楼主 # 2023-04-24 11:48:02

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

shiwu1.jpgshiwu2.jpgsheji.png


显示效果如上图,使用RTThread Studio 开发,触摸 和 framebuffer 使用的论坛里的 非常感谢
RTThread 和LVGL 直接使用的Studio直接初始化出来的
期间遇到各种问题 ,包括一直卡在触摸,原来是开发板Pd0和PD12 用于触摸而显示设置的666导致触摸I2C信号被破坏,改成565就好了

目前还有的问题就是 颜色跟实际设计的演示,电脑版lvgl 显示的不太一致

离线

楼主 #1 2023-04-24 15:55:21

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

RGB 中 R和B反色的问题找到了 因为开发板 RB交叉了 不知道为什么这样设计 需要在drv_fb 里设置tcon时序的时候将0x40 的第23位设置为1

离线

#3 2023-04-25 09:42:28

c126
会员
注册时间: 2023-04-14
已发帖子: 9
积分: 4

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

能否分享一下,RTThread Studio 的配置过程

离线

楼主 #4 2023-04-25 10:56:57

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

c126 说:

能否分享一下,RTThread Studio 的配置过程

1.png
2.png
3.png
4.png
5.png
6.png
7.png

按照上面的步骤 应该就可以创建一个新的工程了
接下来 添加LVGL
8.png9.png

离线

楼主 #5 2023-04-25 11:02:16

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

接下来 说说我改的配置  rtconfig.h
添加
#define RT_DEBUG_INIT 1                 //开启debug模式时:该宏定义为0时表示关闭打印组件初始化信息,定义为1时表示启用
#define RT_DEBUG_THREAD 0               //开启debug模式时:该宏定义为0时表示关闭打印线程切换信息,定义为1时表示启用
#define TINA_USING_LCD  // 开启使用LCD 初始化fb

#define LV_MEM_DYNAMIC
#define LV_HOR_RES 1024 // 屏幕尺寸
#define LV_VER_RES 600 // 屏幕尺寸
#define LV_DPI 50
#define TINA_USING_UART1 // 因为我开发板用的串口1   而系统默认的串口0 所以我需要加
修改
#define RT_CONSOLE_DEVICE_NAME "uart1" // 因为我开发板用的串口1   而系统默认的串口0 所以我需要改
//#define TINA_USING_SPI1 // 这个是因为我的开发板 开了这个不能启动  但是调了好久 才发现要屏蔽他  其他开发板不知道要不要改

离线

楼主 #6 2023-04-25 11:03:27

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

[09:02:29.387]收
\ | /

- RT -     Thread Operating System
  / | \     4.1.0 build Apr 13 2023 04:35:43
  2006 - 2022 Copyright by RT-Thread team
   [33m[W/SFUD] [SFUD] Warning: The OS tick(100) is less than 1000. So the flash write will take more time.[0m
   [32m[I/SFUD] Warning: Read SFDP parameter header information failed. The gd25qxx is not support JEDEC SFDP.[0m
   [32m[I/SFUD] Warning: This flash device is not found or not support.[0m
   [32m[I/SFUD] Error: gd25qxx flash device is initialize fail.[0m
   [31m[E/SFUD] ERROR: SPI flash probe failed by SPI device spi00.[0m
   periph_get_pll_clk:600000000
   cpu_get_clk:408000000
   ahb_get_clk:200000000
   apb_get_clk:100000000
   msh />(dev != RT_NULL) assertion failed at function:rt_dev


当编译烧录 后是这样的话 就证明成功了

离线

#8 2023-04-25 20:18:52

sh200436
会员
注册时间: 2023-02-23
已发帖子: 33
积分: 8

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

楼主能否详细讲解一下,如何在main.c里面添加一个LVGL自带的demo程序(或者最简单的GUI程序)吗?我只会单片机裸机开发,不懂RT系统。。。
我可以根据你讲解的demo例程,依葫芦画瓢的学习一下。
谢谢

最近编辑记录 sh200436 (2023-04-25 20:20:21)

离线

楼主 #9 2023-04-26 09:19:56

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

sh200436 说:

楼主能否详细讲解一下,如何在main.c里面添加一个LVGL自带的demo程序(或者最简单的GUI程序)吗?我只会单片机裸机开发,不懂RT系统。。。
我可以根据你讲解的demo例程,依葫芦画瓢的学习一下。
谢谢

想要跑一个完整的 LVGL显示出来 还是很多工作要做的 包括跟F1C200S的显示驱动配置,LVGL flush数据到显示缓冲区等 这些都完成后再main.c 或者自建文件都可以,例如我写的例子:

#include "rtthread.h"
#include "drv_clock.h"
#include <lvgl.h>
#include "drv_touch.h"
#include "lv_port_disp.h"

int main(int argc, char **argv)
{
    rt_kprintf("periph_get_pll_clk:%d\n", periph_get_pll_clk());
    rt_kprintf("cpu_get_clk:%d\n", cpu_get_clk());
    rt_kprintf("ahb_get_clk:%d\n", ahb_get_clk());
    rt_kprintf("apb_get_clk:%d\n", apb_get_clk());

    return 0;
}
// lvgl 测试控件
void lv_border_style_test(){
    static lv_style_t style;
        lv_style_init(&style); // 初始化样式
        lv_style_reset(&style); // 重置样式
        lv_style_set_radius(&style, 10); // 设置样式圆角弧度
        lv_style_set_bg_opa(&style, LV_OPA_COVER); // 设置样式背景的透明度,不透明
        lv_style_set_bg_color(&style, lv_palette_lighten(LV_PALETTE_RED, 1)); // 设置样式的背景色为淡红色

        lv_style_set_border_color(&style, lv_color_black()); // 设置样式边框颜色为黑色
        lv_style_set_border_width(&style, 5); // 设置边框宽度
        lv_style_set_border_opa(&style, LV_OPA_50);  // 设置边框透明度
        // 设置边框范围顶部、底部、右边、左边
        lv_style_set_border_side(&style, LV_BORDER_SIDE_TOP | LV_BORDER_SIDE_BOTTOM | LV_BORDER_SIDE_RIGHT | LV_BORDER_SIDE_LEFT);

        lv_obj_t * obj = lv_obj_create(lv_scr_act()); // 基于屏幕创建对象
        if (obj != NULL){
            lv_obj_add_style(obj, &style, 0); // 给对象添加样式
            lv_obj_set_size(obj, 200, 200);
            lv_obj_center(obj); // 对象居中显示
        }
}

//任务内容
static void lvgl_thread(void *parameter){
    lv_init(); //LVGL 初始化
    lv_port_disp_init();  //LVGL 显示初始化 需要去做配置
    //lv_demo_widgets();
    lv_border_style_test(); // 运行demo
    rt_kprintf("\n ui_init \n");
    while (1){
        lv_task_handler(); //周期性调用事务处理器
        rt_thread_mdelay(1);
    }
}
// 初始化创建一个任务
static int lvgl_demo_init(void){
    rt_thread_t tid;
    tid = rt_thread_create("LVGL", lvgl_thread, RT_NULL, 4096,10, 10); //创建一个任务
    if (tid == RT_NULL){
        rt_kprintf("Fail to create 'LVGL' thread\n");
    }
    rt_thread_startup(tid);// 启动任务
    return 0;
}
INIT_APP_EXPORT(lvgl_demo_init); //应用自动初始化 可以放在任意文件下 RTT 上电后会按顺序加载

编译烧录 串口打印一下内容就成功了  lvgl_demo_init 出现这个表示加载了demo  ui_init  表示执行到了

[09:15:33.547]收←◆initialize rti_board_start:0 done
initialize rt_hw_spi_init:0 done

\ | /
- RT -     Thread Operating System
/ | \     4.1.0 build Apr 26 2023 08:59:55
2006 - 2022 Copyright by RT-Thread team
do components initialization.
initialize rti_board_end:0 done
initialize rt_mmcsd_core_init:0 done
initialize dfs_init:0 done
initialize rt_hw_spi_flash_with_sfud_init[33m[W/SFUD] [SFUD] Warning: The OS tick(100) is less than 1000. So the flash write will take more time.[0m
[32m[I/SFUD] Warning: Read SFDP parameter header information failed. The gd25qxx is not support JEDEC SFDP.[0m
[32m[I/SFUD] Warning: This flash device is not found or not support.[0m
[32m[I/SFUD] Error: gd25qxx flash device is initialize fail.[0m
[31m[E/SFUD] ERROR: SPI flash probe failed by SPI device spi00.[0m
:1 done
initialize rt_hw_lcd_init:0 done
initialize rt_hw_gpio_init:0 done
initialize elm_init:0 done
initialize lvgl_thread_init:0 done
initialize finsh_system_init:0 done
initialize tina_sdio_init:0 done
initialize lvgl_demo_init:0 done
periph_get_pll_clk:600000000
cpu_get_clk:408000000
ahb_get_clk:200000000
apb_get_clk:100000000
clk_divider_set_rate 29491216 198000000 0clk_divider_set_rate 2147024424 198000000 0
ui_init

[09:15:33.814]收←◆msh />
[09:15:34.157]收←◆[31m[E/MMC] [err]:0x00000100,  RTO[0m
[31m[E/MMC] mmc cmd 8 err[0m
[31m[E/MMC] [err]:0x00000100,  RTO[0m
[31m[E/MMC] mmc cmd 5 err[0m
[31m[E/MMC] [err]:0x00000100,  RTO[0m
[31m[E/MMC] mmc cmd 55 err[0m
[31m[E/MMC] [err]:0x00000100,  RTO[0m
[31m[E/MMC] mmc cmd 55 err[0m
[31m[E/MMC] [err]:0x00000100,  RTO[0m
[31m[E/MMC] mmc cmd 55 err[0m
[31m[E/MMC] [err]:0x00000100,  RTO[0m
[31m[E/MMC] mmc cmd 55 err[0m
[31m[E/MMC] [err]:0x00000100,  RTO[0m
[31m[E/MMC] mmc cmd 1 err[0m
[31m[E/MMC] [err]:0x00000100,  RTO[0m
[31m[E/MMC] mmc cmd 1 err[0m
[31m[E/MMC] [err]:0x00000100,  RTO[0m
[31m[E/MMC] mmc cmd 1 err[0m

显示效果
111.jpg

离线

#10 2023-04-26 19:11:33

sh200436
会员
注册时间: 2023-02-23
已发帖子: 33
积分: 8

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

谢谢楼主的指点!
今天把楼主的代码复制到main.c里,然后从LVGL网站下载并修改lvgl/examples/porting/lv_port_disp_template.c和.h文件,再添加到main.c同一个目录下,编译,然后出现了编译错误:

rt-lvgl.png

修改了半天也不知道是什么情况,就索性把该文件夹下的三个文件全部删除了。然后继续编译。。。。
终于,编译通过了!!哈哈哈!!!

编译的问题解决了,就相当于路子走通了,后面调试应该会容易许多。
等电路板做好后,准备下载一下试试。

非常感谢楼主的大力帮助,总算编译通过一个工程了。。。。

等后面点亮LCD屏幕后,再向楼主汇报,谢谢

离线

楼主 #11 2023-04-27 08:18:28

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

其实这个文件和main里做的是同一个事情,初始化lvgl 显示和触摸  user-gui 就是你自己的界面,因为你没这个函数 所以报错  ,删掉就行

离线

#13 2023-04-29 07:54:19

sh200436
会员
注册时间: 2023-02-23
已发帖子: 33
积分: 8

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

tangloong 说:

其实这个文件和main里做的是同一个事情,初始化lvgl 显示和触摸  user-gui 就是你自己的界面,因为你没这个函数 所以报错  ,删掉就行


RT.png

我买了一块F1C100S的串口屏,拆掉了板子上的SPI-FLASH芯片,用TF-JTAG的转接板,把J-LINK下载器和板子连接起来。当下载程序时,出现了上面的错误信息。硬件接线和软件环境如下:

(1)J-LINK下载器使用TCK, TMS, TDI, TDO, VCC, GND,总计6根线和板子连接;
(2)拆掉了板子自带的SPI_FLASH芯片;
(3)电脑是Win7系统,RT-Studio整个编译软件,按照楼主的操作步骤,均采用最新的版本;
(4)RT-Studio调试配置里,下载地址为: 0x08000000

--根据错误信息,J-LINK下载器已经识别芯片了,就是不能下载,不知道问题出在了哪里。
请问楼主,我的配置方式,和你那边的配置方式,有什么不同吗?谢谢

离线

楼主 #14 2023-04-29 16:27:33

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

@sh200436
可能是rttstudio 不支持这个芯片调试吧,我是直接usb 下载的,串口看打印信息,而且程序需要引导的,不是这一个bin文件就能跑起来了,还需要一个boot.bin 很多帖子或gitee 里有这个bin 直接用就好了

离线

#15 2023-04-29 19:10:44

sh200436
会员
注册时间: 2023-02-23
已发帖子: 33
积分: 8

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

我换了好几台电脑,反复安装卸载RT-Studio后,还是提示错误信息,原来是这样啊。。。。[囧][囧][囧]
那我再把SPI_FLASH焊回去,先下载boot文件,再把APP文件烧进去试试看。
谢谢。。。

离线

楼主 #17 2023-04-30 18:28:51

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

链接: https://pan.baidu.com/s/1QVp65GaXa-v_Rmq_EEg2AQ 提取码: qvjq 复制这段内容后打开百度网盘手机App,操作更方便哦

这个是我做的一个烧录ram的 你双击bat就可以烧录了 前提是装好驱动啥的   rtt.bin 不一定显示 我也不知道是啥时候的版本了

离线

#18 2023-05-01 07:46:47

sh200436
会员
注册时间: 2023-02-23
已发帖子: 33
积分: 8

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

@tangloong

谢谢楼主,上班后我就试试。
手上没有工具,拆掉的SPI_FLASH芯片暂时没办法复原。。

离线

#19 2023-05-07 18:47:33

sh200436
会员
注册时间: 2023-02-23
已发帖子: 33
积分: 8

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

@tangloong

用楼主分享的文件,搞定了LCD显示,只是我烧录的是这个工程:

https://github.com/nminaylov/F1C100s_projects

谢谢楼主[抱拳][抱拳]

离线

#20 2023-05-18 17:54:07

adigita
会员
注册时间: 2022-06-27
已发帖子: 7
积分: 7

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

大佬 ,我手头也有同样的开发板 ,贴的也是nandflash,有办法通过nandflash启动RTT的生成的BIN么?我看坑网里大佬们分享的有基于Linux的支持nand的方法

离线

楼主 #21 2023-05-20 16:11:26

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

adigita 说:

大佬 ,我手头也有同样的开发板 ,贴的也是nandflash,有办法通过nandflash启动RTT的生成的BIN么?我看坑网里大佬们分享的有基于Linux的支持nand的方法

暂时 我也只是跑通了ram 和SD卡启动,flash没成功 你那边成功了还请告知一下,我自己画的板子 烧录linux到flash也不行,不知道是不是因为我用的华邦的flash跟开发板不一样导致的,flash的信息时可以读取的

离线

楼主 #22 2023-05-22 16:27:44

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

adigita 说:

大佬 ,我手头也有同样的开发板 ,贴的也是nandflash,有办法通过nandflash启动RTT的生成的BIN么?我看坑网里大佬们分享的有基于Linux的支持nand的方法

试一下这个帖子的方法吧
https://whycan.com/p_89372.html#p89372
下载的工具我上传到网盘里了,有兴趣可以研究一下,反正我没成功 链接:https://pan.baidu.com/s/1H4btWD7jokvOQWa7nmcFhQ
提取码:hoke

离线

#23 2023-05-24 10:41:27

adigita
会员
注册时间: 2022-06-27
已发帖子: 7
积分: 7

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

@tangloong
兄弟 我把板子换成了nor flash,用https://whycan.com/t_4907.html里大佬们的方法烧录启动成功了。
Nand我用xfel把spl烧录进去是可以启动的,但是nand容易有坏块,所以它是通过烧录到多个page,启动时会依次从0,32,64....寻找启动固件,而且BOOTROM是只从page中取1K的数据,用xfel spinand splwrite 1024 <address> <file> - Write file to spi nand flash with split support来烧录,参考https://whycan.com/t_4916.html。spl启动后我没有尝试了,后面的程序启动需要nand驱动和校验的支持,一般的应用程序又不大,没必要上nand。
附上我改的通过uart1打印调试信息的spl
boot.zip

#include <io.h>
void sys_uart_putc(char c)
{
	uint32_t addr = 0x01c25400;

	while((read32(addr + 0x7c) & (0x1 << 1)) == 0);
	write32(addr + 0x00, c);
}

void sys_uart_init(void)
{
	uint32_t addr;
	uint32_t val;

	/* Config GPIOA3 and GPIOA2 to txd1 and rxd1 */
	addr = 0x01c20800 + 0x00;
	val = read32(addr);
	val &= ~(0xf << ((3 & 0x7) << 2));
	val |= ((0x5 & 0x7) << ((3 & 0x7) << 2));
	write32(addr, val);

	val = read32(addr);
	val &= ~(0xf << ((2 & 0x7) << 2));
	val |= ((0x5 & 0x7) << ((2 & 0x7) << 2));
	write32(addr, val);

	/* Open the clock gate for uart1 */
	addr = 0x01c20068;
	val = read32(addr);
	val |= 1 << 21;
	write32(addr, val);

	/* Deassert uart1 reset */
	addr = 0x01c202d0;
	val = read32(addr);
	val |= 1 << 21;
	write32(addr, val);

	/* Config uart1 to 115200-8-1-0 */
	addr = 0x01c25400;
	write32(addr + 0x04, 0x0);
	write32(addr + 0x08, 0xf7);
	write32(addr + 0x10, 0x0);
	val = read32(addr + 0x0c);
	val |= (1 << 7);
	write32(addr + 0x0c, val);
	val = 54;
	write32(addr + 0x00, val & 0xff);
	write32(addr + 0x04, (val >> 8) & 0xff);
	val = read32(addr + 0x0c);
	val &= ~(1 << 7);
	write32(addr + 0x0c, val);
	val = read32(addr + 0x0c);
	val &= ~0x1f;
	val |= (0x3 << 0) | (0 << 2) | (0x0 << 3);
	write32(addr + 0x0c, val);

	sys_uart_putc('I');
	sys_uart_putc('n');
	sys_uart_putc('i');
	sys_uart_putc('t');
	sys_uart_putc(' ');
	sys_uart_putc('O');
	sys_uart_putc('K');
	sys_uart_putc('\r');
	sys_uart_putc('\n');
}

最近编辑记录 adigita (2023-05-24 10:52:38)

离线

#24 2023-05-24 14:19:29

sokou
会员
注册时间: 2022-12-04
已发帖子: 38
积分: 23

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

楼主电脑模拟LVGL是怎么做的?用VS吗?

离线

楼主 #25 2023-05-24 16:51:06

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

@adigita

我发现不是boot 和 应用不行,原来是sunxi-fel 不认识板子上的1G flash

ubuntu18@ubuntu:~/Workspace/F1C200S/RTOS/f1c100s_rt-thread/tools/sunxi-tools$ ./sunxi-fel spiflash-info
ERROR: You don't have permission to access Allwinner USB FEL device
ubuntu18@ubuntu:~/Workspace/F1C200S/RTOS/f1c100s_rt-thread/tools/sunxi-tools$ sudo ./sunxi-fel spiflash-info
Manufacturer: Unknown (00h), model: C8h, size: 131072 bytes.
ubuntu18@ubuntu:~/Workspace/F1C200S/RTOS/f1c100s_rt-thread/tools/sunxi-tools$ sudo ./sunxi-fel spiflash-info
Manufacturer: Unknown (00h), model: EFh, size: 1024 bytes.
ubuntu18@ubuntu:~/Workspace/F1C200S/RTOS/f1c100s_rt-thread/tools/sunxi-tools$

我试了两块板子 都是1G的 读出来的容量都不对


正常人家读16MFlash 是这样的
如果MPi-R板背面是Winbond的W25Q128(16MB nor flash),那么就要用fel刷机。
查看芯片信息sunxi-fel ver
AWUSBFEX soc=00001663(F1C100s) 00000001 ver=0001 44 08 scratchpad=00007e00 00000000 00000000
显示spiflash的信息sunxi-fel spiflash-info
Manufacturer: Winbond (EFh), model: 40h, size: 16777216 bytes.

离线

#26 2023-05-24 17:08:51

zhenfanhei
会员
注册时间: 2018-01-18
已发帖子: 296
积分: 251
个人网站

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

牛牛,Mark一下,楼主是用的7" 40P的液晶屏吧,竟然是1024x600,切屏的时候效果怎样? 以前用200s跑awtk,800x480就差不多了





离线

#27 2023-05-24 22:02:53

adigita
会员
注册时间: 2022-06-27
已发帖子: 7
积分: 7

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

@tangloong
用大佬xboot做的xfel可以识别nand的 https://whycan.com/t_7323.html

离线

楼主 #29 2023-05-25 12:29:14

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

sokou 说:

楼主电脑模拟LVGL是怎么做的?用VS吗?

我用的codeblocks 和官网的  lv_port_win_visual_studio 工程做的
VS装C++ 太大了 就用了 codeblocks
都可以跑起来的 
UI是用 SquareLine Studio设计的
模拟器只是验证一下,导入嵌入式没模拟器方便快捷

离线

楼主 #30 2023-05-25 12:33:56

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

zhenfanhei 说:

牛牛,Mark一下,楼主是用的7" 40P的液晶屏吧,竟然是1024x600,切屏的时候效果怎样? 以前用200s跑awtk,800x480就差不多了

是的7寸40Pin  1024*600的屏幕,切换的时候流畅度还可以接受,只要不是全幅度动画效果,切个页面还是没压力的,但是我想做的应用是竖屏的 但是市面上RGB找不到竖屏,使用的是LVGL 软件转的方式,需要将所有数据拷贝一遍,这样在滑动的时候就显得不那么流畅了,还没想好是换带2D加速的主控还是就这样算了

离线

楼主 #31 2023-05-29 15:55:41

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

@adigita
换成 norflash 了,结果还是没启动成功,不知道是哪里的问题了
用的烧录命令

.\tools\sunxi-fel.exe -p spiflash-write 0x00000000 boot.bin
.\tools\sunxi-fel.exe -p spiflash-write 0x00010000 rtthread.bin
@pause

离线

楼主 #32 2023-05-29 16:15:27

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

@adigita
换了个boot

Boot to SPI mode
entry=00000000, sp=00009ff4, lr=ffff417c.
RTThread
Load 0x00024938 bytes @0x81b00000 FAIL.
Load again FAIL.
Load again FAIL.
Load again FAIL.
Load again FAIL.
...

离线

#33 2023-06-03 02:22:12

Ary_Ye
会员
注册时间: 2022-03-24
已发帖子: 11
积分: 11

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

@tangloong
大佬,你贴的百度云链接里面的固件触摸可以用吗?我在ram运行以后触摸点不起来,用的GT911,和你是同款板子

离线

#34 2023-06-03 17:23:11

fujiawei
会员
注册时间: 2022-10-12
已发帖子: 8
积分: 13

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

楼主能分享下工程代码吗

离线

#35 2023-06-04 11:47:39

Ary_Ye
会员
注册时间: 2022-03-24
已发帖子: 11
积分: 11

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

用xfel刷写spinand倒是能引导,xboot里面也有spinand的启动函数和自拷贝函数。单从xboot引导我倒是成功了,就是触摸一直用不了

离线

楼主 #36 2023-06-05 11:33:18

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

Ary_Ye 说:

@tangloong
大佬,你贴的百度云链接里面的固件触摸可以用吗?我在ram运行以后触摸点不起来,用的GT911,和你是同款板子

https://gitee.com/kasira/f1c200s_rtt_lvgl830  我把我的工程 提交到gitee了,编译的bin文件我一并提交了,你可以直接使用burn里面的bat 执行烧录
串口信息会打印触摸的坐标

离线

楼主 #37 2023-06-05 11:33:42

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

fujiawei 说:

楼主能分享下工程代码吗

https://gitee.com/kasira/f1c200s_rtt_lvgl830 可以从这里下载代码

离线

楼主 #38 2023-06-05 11:35:05

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

Ary_Ye 说:

用xfel刷写spinand倒是能引导,xboot里面也有spinand的启动函数和自拷贝函数。单从xboot引导我倒是成功了,就是触摸一直用不了

如果方便 可以加我微信或者邮箱 gitee留了我联系方式 flash 我一直没成功 不知道是不是boot的问题

离线

楼主 #39 2023-06-05 13:59:39

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

Ary_Ye 说:

用xfel刷写spinand倒是能引导,xboot里面也有spinand的启动函数和自拷贝函数。单从xboot引导我倒是成功了,就是触摸一直用不了

终于成功了 估计是读取spi不稳定的原因 多次出现 Magic error 也就是头部的几个地址数据不正确  只有2857740885 这个是正常的 复位几次蔡成功
我估计需要把spi的频率调低才行 现在是100M

Init OK
Boot to SPI mode
4294967295
Magic error
Init OK
Boot to SPI mode
4294967295
Magic error
Init OK
Boot to SPI mode
4294967295
Magic error
Init OK
Boot to SPI mode
4294967295
Magic error
Init OK
Boot to SPI mode
4294967295
Magic error
Init OK
Boot to SPI mode
2857740885
Copy Flash offset 64 to RAM 0x8000000 size:2505724
Copy Flash Ok!
Goto 0x80000000 ...
锟斤拷'锟絠nitialize rti_board_start:0 done
initialize rt_hw_spi_init:0 done
initialize rt_hw_wdt_initwatchdog_init
:0 done

\ | /
- RT -     Thread Operating System
/ | \     4.0.3 build May 17 2023
2006 - 2020 Copyright by rt-thread team
do components initialization.
initialize rti_board_end:0 done
initialize rt_hw_spi_flash_with_sfud_init[32m[I/SFUD] Find a Winbond flash chip. Size is 16777216 bytes.[0m
[32m[I/SFUD] gd25qxx flash device is initialize success.[0m
[32m[I/SFUD] Probe SPI flash gd25qxx by SPI device spi00 success.[0m
:0 done
initialize dfs_init:0 done
initialize rt_mmcsd_core_init:0 done
initialize rt_hw_lcd_init:0 done
initialize rt_hw_gpio_init:0 done
initialize rt_hw_i2c_init[32m[I/I2C] I2C bus [i2c0] registered[0m
:0 done
initialize gt9xx_driver_registeri2c test failed attempt 1: 200i2c test failed attempt 2: 200[TP] gt9xx_probe goodix_i2c_test!  error
:0 done
initialize rt_work_sys_workqueue_init:0 done
initialize clock_time_system_init:0 done
initialize pthread_system_init:0 done
initialize libc_system_init:0 done
initialize sal_init[32m[I/sal.skt] Socket Abstraction Layer initialize success.[0m
:0 done
initialize cplusplus_system_init:0 done
initialize rt_i2c_core_init:0 done
initialize tina_sdio_init:0 done
initialize main_page_initclk_divider_set_rate 29491216 198000000 0clk_divider_set_rate -2147483648 198000000 0:0 done
initialize finsh_system_init:0 done
periph_get_pll_clk:600000000
cpu_get_clk:408000000
ahb_get_clk:200000000
apb_get_clk:100000000
msh />initialize rti_board_start:0 done
initialize rt_hw_spi_init:0 done
initialize rt_hw_wdt_initwatchdog_init
:0 done

\ | /
- RT -     Thread Operating System
/ | \     4.0.3 build May 17 2023
2006 - 2020 Copyright by rt-thread team
do components initialization.
initialize rti_board_end:0 done
initialize rt_hw_spi_flash_with_sfud_init[32m[I/SFUD] Find a Winbond flash chip. Size is 16777216 bytes.[0m
[32m[I/SFUD] gd25qxx flash device is initialize success.[0m
[32m[I/SFUD] Probe SPI flash gd25qxx by SPI device spi00 success.[0m
:0 done
initialize dfs_init:0 done
initialize rt_mmcsd_core_init:0 done
initialize rt_hw_lcd_init:0 done
initialize rt_hw_gpio_init:0 done
initialize rt_hw_i2c_init[32m[I/I2C] I2C bus [i2c0] registered[0m
:0 done
initialize gt9xx_driver_registeri2c test failed attempt 1: 200i2c test failed attempt 2: 200[TP] gt9xx_probe goodix_i2c_test!  error
:0 done
initialize rt_work_sys_workqueue_init:0 done
initialize clock_time_system_init:0 done
initialize pthread_system_init:0 done
initialize libc_system_init:0 done
initialize sal_init[32m[I/sal.skt] Socket Abstraction Layer initialize success.[0m
:0 done
initialize cplusplus_system_init:0 done
initialize rt_i2c_core_init:0 done
initialize tina_sdio_init:0 done
initialize main_page_initclk_divider_set_rate 29491216 198000000 0clk_divider_set_rate -2147483648 198000000 0:0 done
initialize finsh_system_init:0 done
periph_get_pll_clk:600000000
cpu_get_clk:408000000
ahb_get_clk:200000000
apb_get_clk:100000000
msh />

离线

楼主 #42 2023-06-07 17:20:46

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

adigita 说:

@tangloong
用大佬xboot做的xfel可以识别nand的 https://whycan.com/t_7323.html

你是否尝试过 xfel 写nand flash 的 boot和rtthread.bin
我的boot添加了nand flash 驱动,可以读取nand flash了,现在有个奇怪的问题是boot 和 RTT 不能同时写
写了boot在写rtt  0-1M的空间会被擦除,如果在写一次boot 1M后的空间被擦除了,搞得只能在flash存一个bin

离线

#43 2023-07-12 18:30:18

iincity
会员
注册时间: 2019-11-13
已发帖子: 2
积分: 2

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

用楼主的工程构建,提示
arm-none-eabi-gcc "../burn/f1c100s_spl_sd_nor_nand_uart1/spl/src/sys-dram.c"
../burn/f1c100s_spl_sd_nor_nand_uart1/spl/src/drv_clock.c:24:10: fatal error: io.h: No such file or directory
   24 | #include <io.h>
arm-none-eabi-gcc "../burn/f1c100s_spl_sd_nor_nand_uart1/spl/src/sys-sdio.c"
      |          ^~~~~~
compilation terminated.
make: *** [burn/f1c100s_spl_sd_nor_nand_uart1/spl/src/subdir.mk:52: burn/f1c100s_spl_sd_nor_nand_uart1/spl/src/drv_clock.o] Error 1
make: *** Waiting for unfinished jobs....
../burn/f1c100s_spl_sd_nor_nand_uart1/spl/src/sys-copyself.c:29:10: fatal error: io.h: No such file or directory
   29 | #include <io.h>
      |          ^~~~~~
compilation terminated.
make: *** [burn/f1c100s_spl_sd_nor_nand_uart1/spl/src/subdir.mk:52: burn/f1c100s_spl_sd_nor_nand_uart1/spl/src/sys-copyself.o] Error 1
../burn/f1c100s_spl_sd_nor_nand_uart1/spl/src/sys-dram.c:29:10: fatal error: io.h: No such file or directory
   29 | #include <io.h>
      |          ^~~~~~
compilation terminated.
make: *** [burn/f1c100s_spl_sd_nor_nand_uart1/spl/src/subdir.mk:52: burn/f1c100s_spl_sd_nor_nand_uart1/spl/src/sys-dram.o] Error 1

离线

楼主 #44 2023-07-15 10:49:46

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

@iincity
io.h 在库里呀
忘了说了 f1c100s_spl_sd_nor_nand_uart1 这个是独立的工程 跟rtthread没关系的 不能添加到rtthread 的工程里
rtthread 工程我是 用RT-Thread Studio 编译的
f1c100s_spl_sd_nor_nand_uart1 我是在ubuntu编译的 编译出来是boot  详细可以看该文件夹下的 readme.md

离线

#45 2023-07-16 13:26:39

iincity
会员
注册时间: 2019-11-13
已发帖子: 2
积分: 2

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

@tangloong
嗯,我把它RT-Thread Studio 工程移出去了,就好了

最近编辑记录 iincity (2023-07-16 13:27:11)

离线

#46 2023-11-28 16:25:04

huaze
会员
注册时间: 2023-11-27
已发帖子: 9
积分: 4

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

E:\sunxi\sunxi-tools-mingw64>sunxi-fel ver
AWUSBFEX soc=00001663(F1C100s) 00000001 ver=0001 44 08 scratchpad=00007e00 00000000 00000000

E:\sunxi\sunxi-tools-mingw64>sunxi-fel spiflash-info
Manufacturer: Unknown (00h), model: CDh, size: 65536 bytes.

RT-Thread Studio 构建的bin要怎么烧录

离线

#47 2023-11-29 16:51:30

huaze
会员
注册时间: 2023-11-27
已发帖子: 9
积分: 4

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

@tangloong

方便移植吗

离线

楼主 #48 2023-11-29 18:37:47

tangloong
会员
注册时间: 2023-04-11
已发帖子: 111
积分: 87

Re: 历时半个月,终于把F1C200S开发板的RTThread 触摸(GT911)+显示RGB(40PIN)565+LVGL8.3.0调通支持中文

@huaze
我的gitee 工程里 readme 文件 编译和烧录步骤 都写了的,
需要烧录一个boot 用来引到rtt ,而boot 代码也在里面有,boot.bin 也有 直接在burn 文件夹下面
至于你说的方不方便移植  不懂你指的是什么方面  我已经用rtt这个做了两个项目了

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn