黄侃
黄侃
This guy hasn't written anything yet

注册于 3 years ago

回答
0
文章
0
关注者
0

已经解决,需要去sdk manager 那里手动更新工具链

后续测试了一下,只要开着finsh连串口,重启就有这个问题,应该跟改不改IP没关系。

看一下原子开发板原理图,还是跟CH430连着boot0的电路有关。此贴终结。

aozima 发表于 2020-6-24 13:33
你的boot引脚被人控制了吗?
或把整片FLASH读回来,看是否被篡改掉了。


原子的板子确实RESET管脚为1的时候,会将boot0置1。
但是reboot的时候管脚会有电平变化吗?

而且只要我用固定的IP,RESET和Reboot都没事儿呢

不是SDIO频率的问题,但是可怕的是我忘记怎么解决的了:(

wuhanstudio 发表于 2019-8-16 09:31
物理问题就只有换个卡槽了


我有两块板子,不可能同时插槽出问题

sock建立的时候不是有选项么

SD不挂文件系统,那USB访问还有啥用。。。

这已经不是加互斥能解决的了,因为按照现有的代码,打开SD之后没有关闭清FLAG。

现在考虑利用动态挂载一下应该行。但是这个识别速度我还不知道为什么这么慢。

    本帖最后由 黄侃 于 2019-8-7 10:43 编辑


whj467467222 发表于 2019-8-7 10:02
如果要用着急用的话可以试试移植ST官方的,例程或者文档都比较多。
如果不着急的话,建议再等等。
我目前选 ...

我现在基本定位到问题出在mstorage打开SD卡上。

程序中执行了mount操作就会open SD卡这个dev, 然后USB mstorage也会来尝试打开SD卡,结果就返回BUSY,打开失败。
假如将stm32_sdcard_mount从自动启动中去掉,则电脑插入USB后可以识别到SD卡,正常打开。
但是从插入USB线,到SD卡完全识别打开,这时间长的有点离谱。

最好的办法就是动手,把你所有旧项目全部重构为RTT。

这都告诉你在哪个文件第几行了,去看看呀,肯定是条件编译。

bernard 发表于 2019-8-5 11:00
memcpy是工具链那边实现的,rt_memcpy是RTT自带的,默认情况下,基本上不会出现HardFault。 ...


已测,改为rt_memcpy不会进入hf

bernard 发表于 2019-8-5 10:58
只是memcpy的问题?或者试试rt_memcpy大法。


没打算改RTT驱动源码,要不以后维护太麻烦,我每次写入前将len+=4-len%4长度补成4的整数倍,就好像没有问题,目前测试中,不断电测试48小时再看

前面几个说的都不对,只有楼上是正解,main本身也是一个线程,优先级为10,当你创建第一个线程,优先级为3,并且执行了rt_thread_startup时,就已经跳转了。等跳转回main才回去执行下面的的创建优先级为2的线程。

另外不要使用yield

孤独旅客 发表于 2019-6-5 13:06
谢谢楼主,通过超时读取数据也是一种方法,楼主能否贴出详细点的代码


都给你贴了,还不详细啊

发布
问题