tyustli
tyustli
This guy hasn't written anything yet

注册于 2 years ago

回答
58
文章
9
关注者
2

env 的路径不要有空格,中文、特殊字符这些

STM32F767 有现成的 bsp
rt-thread\bsp\stm32\stm32f767-st-nucleo

初始化并配置 mpu 工作模式的吧

mkfs 是格式化,里面数据如果还正常那就不正常

这两个值是一样的,但是他们两个的含义是不一样的:
a:代表的是数组首元素的地址,即 a[0] 的地址
&a:这是一个数组指针,代表的是数组的地址

测试:
a + 1 -> a[1] 的地址
&a +1 -> a[10] 的地址(虽然a[10] 元素不存在,但是地址是存在的)

楼主可以参考上楼写一个测试程序试一下

这个错误应该是现有的固件 crc 校验没有通过,但是是不影响升级的

rt_thread_t rt_thread_self(void)
{
#ifdef RT_USING_SMP
    rt_base_t lock;
    rt_thread_t self;

    lock = rt_hw_local_irq_disable();
    self = rt_cpu_self()->current_thread;
    rt_hw_local_irq_enable(lock);
    return self;
#else
    extern rt_thread_t rt_current_thread;

    return rt_current_thread;
#endif
}

系统调度还没有起来之前 rt_current_thread 这个全局变量是 RT_NULL

在你的链接脚本里面定义类似的段

image.png

字体的 bin 文件是 fatfs 文件系统管理的话,这个按照正常的 OTA 升级应该也是可以的吧

1、检查一下信号量是否初始化/创建成功
2、接收信号量的线程的栈是否溢出
3、进入中断是否调用接口 rt_interrupt_enter 通知内核,离开中断是否调用接口 rt_interrupt_exit 通知内核

自动重启是不是你配置了看门狗,RT-Thread 是不会自动重启的

这个是 C 语言环境还没有起来时候设置的栈和堆, 和 rt-thread 的栈和堆是没有关系的

回到
顶部

发布
问题

投诉
建议