您尚未登录。

楼主 #1 2019-01-17 20:17:15

duckduckgo
会员
注册时间: 2018-12-13
已发帖子: 58
积分: 43

荔枝上Nano跑LittlevGL2RTT 失败

参考这个帖子:玩转RT-Thread之荔枝派Nano(全志F1C100S) 新手上路
https://whycan.cn/t_943.html

按照帖子里面说的,使用了rttbootloader_f1c100s_v1.0.0.bin这个bootloader。
现在可以亮屏,也可以串口输出,GPIO,PWM,定时器也都是好的。驱动来自于这个帖子:https://whycan.cn/t_1457.html
但是在env里面使能littlevgl2rtt后,生成一个500多K的bin文件时。烧到flash运行时,就不正常了。只是使能了lvgl,没有包含它们的头文件,没有调用。

串口信息如下:
---------------start------------------
\ | /

  • RT - Thread Operating System
    / | \ 3.0.3 build Apr 5 2018
    2006 - 2018 Copyright by rt-thread team
    [SFUD]Find a Winbond flash chip. Size is 16777216 bytes.
    [SFUD]gd25qxx flash device is initialize success.
    Flash ENV start address is 0x00000000, size is 1024 bytes.
    Flash Calculate ENV CRC32 number is 0x75A6C872.
    Flash Verify ENV CRC32 result is OK.
    [Flash]EasyFlash V3.0.4 is initialize success.
    [Flash]You can get the latest version on https://github.com/armink/EasyFlash .
    Flash Calculate ENV CRC32 number is 0x6CBDF933.
    [Flash]Erased ENV OK.
    [Flash]Saved ENV OK.
    Hit any key to stop autoboot : 3Hit any key to stop autoboot : 2Hit any key to stop autoboot : 1Hit any key to stop autoboot : 0
    run application
    begin read...
    run addr:0x80000000

\ | /

  • RT - Thread Operating System
    / | \ 3.1.1 build Jan 17 2019
    2006 - 2018 Copyright by rt-thread team
    (dev != RT_NULL) assertion failed at function:rt_device_open, line number:244
    --------------end------------------

不包含lvgl时的正常信息如下:
------------start--------------
32 MiB
Trying to boot from sunxi SPI

\ | /

  • RT - Thread Operating System
    / | \ 3.0.3 build Apr 5 2018
    2006 - 2018 Copyright by rt-thread team
    [SFUD]Find a Winbond flash chip. Size is 16777216 bytes.
    [SFUD]gd25qxx flash device is initialize success.
    Flash ENV start address is 0x00000000, size is 1024 bytes.
    Flash Calculate ENV CRC32 number is 0x75A6C872.
    Flash Verify ENV CRC32 result is OK.
    [Flash]EasyFlash V3.0.4 is initialize success.
    [Flash]You can get the latest version on https://github.com/armink/EasyFlash .
    Flash Calculate ENV CRC32 number is 0x6CBDF933.
    [Flash]Erased ENV OK.
    [Flash]Saved ENV OK.
    Hit any key to stop autoboot : 3Hit any key to stop autoboot : 2Hit any key to stop autoboot : 1Hit any key to stop autoboot : 0
    run application
    begin read...
    run addr:0x80000000

\ | /

  • RT - Thread Operating System
    / | \ 3.1.1 build Jan 17 2019
    2006 - 2018 Copyright by rt-thread team
    periph_get_pll_clk:600000000
    cpu_get_clk:408000000
    ahb_get_clk:200000000
    apb_get_clk:100000000
    msh />
    ------------end--------------

请问,这一般是什么原因呢?

离线

楼主 #2 2019-01-17 20:24:37

duckduckgo
会员
注册时间: 2018-12-13
已发帖子: 58
积分: 43

Re: 荔枝上Nano跑LittlevGL2RTT 失败

main函数,只有几条打印信息
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;
}

离线

#3 2019-01-17 20:58:03

smartcar
会员
注册时间: 2018-02-19
已发帖子: 735
积分: 735

Re: 荔枝上Nano跑LittlevGL2RTT 失败

会不会因为 bin 文件超过指定加载的尺寸了?

离线

#4 2019-01-17 20:58:57

晕哥
管理员
所在地: wechat: whycan_cn
注册时间: 2017-09-06
已发帖子: 9,473
积分: 9207

Re: 荔枝上Nano跑LittlevGL2RTT 失败

这个问题我邀请 燕十三哥过来回答, 不过貌似现在不在线, 稍等等





离线

#5 2019-01-17 22:37:28

pineshen
会员
注册时间: 2018-12-24
已发帖子: 5
积分: 0

Re: 荔枝上Nano跑LittlevGL2RTT 失败

没有LCD驱动,所以崩溃了,(dev != RT_NULL) assertion failed at function:rt_device_open, line number:244

离线

#6 2019-01-17 23:02:57

smartcar
会员
注册时间: 2018-02-19
已发帖子: 735
积分: 735

Re: 荔枝上Nano跑LittlevGL2RTT 失败

pineshen wrote:

没有LCD驱动,所以崩溃了,(dev != RT_NULL) assertion failed at function:rt_device_open, line number:244

好像是哦, 应该是这个指针为空造成的了.

离线

楼主 #7 2019-01-18 08:51:10

duckduckgo
会员
注册时间: 2018-12-13
已发帖子: 58
积分: 43

Re: 荔枝上Nano跑LittlevGL2RTT 失败

pineshen wrote:

没有LCD驱动,所以崩溃了,(dev != RT_NULL) assertion failed at function:rt_device_open, line number:244

我只开了一个打印的串口,其他外设全关了。

离线

#8 2019-01-18 09:18:02

basicdev
会员
注册时间: 2017-10-02
已发帖子: 159
积分: 159

Re: 荔枝上Nano跑LittlevGL2RTT 失败

duckduckgo wrote:

pineshen wrote:

没有LCD驱动,所以崩溃了,(dev != RT_NULL) assertion failed at function:rt_device_open, line number:244

我只开了一个打印的串口,其他外设全关了。

这个断言错误一定要解决,才能继续跑

离线

楼主 #9 2019-01-18 17:14:51

duckduckgo
会员
注册时间: 2018-12-13
已发帖子: 58
积分: 43

Re: 荔枝上Nano跑LittlevGL2RTT 失败

smartcar wrote:

会不会因为 bin 文件超过指定加载的尺寸了?

跟这个应该关系很大。

离线

楼主 #10 2019-01-18 17:17:48

duckduckgo
会员
注册时间: 2018-12-13
已发帖子: 58
积分: 43

Re: 荔枝上Nano跑LittlevGL2RTT 失败

多谢楼上各位的回复。
现在已经恢复正常了。在env里面把LittlevGL2RTT的demo example取消勾选即可。
FluxBB bbcode 测试

最近编辑记录 duckduckgo (2019-01-18 17:18:16)

离线

#11 2019-01-18 17:24:37

晕哥
管理员
所在地: wechat: whycan_cn
注册时间: 2017-09-06
已发帖子: 9,473
积分: 9207

Re: 荔枝上Nano跑LittlevGL2RTT 失败

那是什么原因, 超过预设加载的大小?





离线

楼主 #12 2019-01-18 18:04:20

duckduckgo
会员
注册时间: 2018-12-13
已发帖子: 58
积分: 43

Re: 荔枝上Nano跑LittlevGL2RTT 失败

晕哥 wrote:

/files/members/3/YA831img.png

那是什么原因, 超过预设加载的大小?

应该不是。我用的是RT-Thread的OTA工具,下面是分区表:
FluxBB bbcode 测试
勾选demo-example以后,生成的bin文件560K(这里很奇怪,明明都没有调用lvgl的任何函数,bin文件怎么会变大?)确实是超出了448K。
但是我后面取消勾选demo-example以后生成了200K的bin文件,后面用00填充,做了两个bin,一个400K,一个597K,同样的方法烧进去,都可以用。说明不是大小的问题。

原因应该在LittlevGL2RTT那里。后面找到原因了在这个帖子下面补充一下。

rttbootloader_f1c100s_v1.0.0.bin启动的时候还要等待按键,严重拖慢速度,我发邮件问过了,这个东西不会开源(可能涉及到usb部分,与全志签了NDA?)。用IDA分析了一下,也没找到要修改的位置。后面还是参考Xboot的代码自己写一个bootloader比较好。

离线

#13 2019-04-17 20:39:26

ermao
会员
注册时间: 2019-03-04
已发帖子: 10
积分: 5

Re: 荔枝上Nano跑LittlevGL2RTT 失败

大佬 你的解决了吗?我的也是卡在这里...

离线

楼主 #14 2019-04-18 09:03:49

duckduckgo
会员
注册时间: 2018-12-13
已发帖子: 58
积分: 43

Re: 荔枝上Nano跑LittlevGL2RTT 失败

ermao wrote:

大佬 你的解决了吗?我的也是卡在这里...

用官网的LVGL吧,加进去就好了。

离线

#15 2019-09-01 22:27:55

junying
会员
注册时间: 2019-09-01
已发帖子: 3
积分: 3

Re: 荔枝上Nano跑LittlevGL2RTT 失败

我也是把example取消了,RTT正常运行,但LCD仍然没有显示,且在List_thread命令中似乎没有看到LittleGL2RTT的线程,不知怎么测试它已经正常运行?

离线

页脚

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

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


东莞哇酷科技有限公司开发