出出啊
出出啊
Talk is cheap. Show me the code.

注册于 3 months ago

回答
509
文章
12
关注者
27

事出反常,必有妖孽
这种问题只能一部分一部分排查

  1. list_thread 结果的 status 和 error 列,没有任何参考价值。当在 finsh 里执行 list_thread 命令时,running 线程肯定是 tshell ;无论任何时刻, idle 线程总是 ready 状态。其它线程看情况。error 列几遍看到非零值,也并不能说明什么(至少目前是这样,不代表三四年之后还会是这样)
  2. 有源码吗?我真的特想知道你们怎么做到的,把工作线程跑飞了。
  3. 目测,你的线程名8个字节了。减少一个试试吧。

无法使用uart2进行发送数据了

什么意思?发送失败?系统崩溃?
这个八成是你的代码问题引起的。

去掉这个文件,不让他参与编译

hal_conf.h 找找你的这个文件在哪儿,添加 include 路径。

目前阶段,不建议这么做。看看我的关于 ipc 的 bug 的文章。
在 ipc 不能正常处理 kill 信号前,kill 杀线程的功能还不能做到。

uart6_transmit 里,每次都打开一次串口?
rt_device_write(serial, 0, str, sizeof(str)); 直接写 num 结构体变量不行?

要么是驱动不稳定,要么是代码中有隐患,影响程序正常运行。
但是,可以肯定的是,这里的几行代码没问题。

image.png
三种开发板,想用哪个?
gitee 上拉取 master 仓库就好

没有函数编译不出来目标二进制文件的。
肯定是两个项目里的宏定义不一样。导致某些函数不会被编译进去。
系统 dump 是因为少了些配置,环境变了。

自己做 bootloader 吧,改天我把我的也开源。

回到
顶部

发布
问题

投诉
建议