显示 [E/DFS] File system (elm) was not found.

发表在 Filesystem2019-6-25 16:19 [复制链接] 16 1011

本帖最后由 aozima 于 2019-9-12 15:17 编辑 , }$ J9 O$ J5 m6 ?

$ {( F: B9 u; z. j8 f正点原子战舰,挂载文件系统,开启显示[E/DFS] File system (elm) was not found.不知道如何解决
1 x. B& O2 Y+ x/ s. i) Z程序里面已经启动了INIT_COMPONENT_EXPORT(elm_init);
% d, e0 p1 L7 l' R8 A$ d' z还有另外一段初始化SPI的代码是这样的:
% h, d5 `2 J, T
  1. static int rt_hw_spi_flash_init(void)* a9 y" E2 ]$ @' S- b
  2. {+ y1 i" m9 o+ i8 w
  3.     __HAL_RCC_GPIOB_CLK_ENABLE();$ i2 C; ~! {4 h0 Q/ ~' Z% U' @
  4.     rt_hw_spi_device_attach("spi2", "spi20", GPIOB, GPIO_PIN_12);
    1 d; V, m) ^( d% s& g1 H0 `6 {9 I0 G
  5. ; d. r) Z, O% v
  6.     if (RT_NULL == rt_sfud_flash_probe("W25Q128", "spi20"))
    6 D+ c! ]1 ^- r) y4 K
  7.     {
    8 _4 _$ R. ^' B
  8.         return -RT_ERROR;
    8 C- \8 g, S3 {3 _) N$ B. Z
  9.     };: [: E: i6 o; I, v5 N: Q
  10. # Q! z1 l) s" H  H: X# A0 k
  11.     dfs_mount("W25Q128", "/", "elm", 0, 0);: e; ]5 n( _3 G2 z- N0 v7 x1 \, F! L
  12.     dfs_mkfs("elm","W25Q128");+ A" h/ Z( e" z0 k8 u$ w
  13. 1 I' ]7 k0 x! t4 @% H' `9 X, n) m
  14.     return RT_EOK;9 k: i- B) w$ K  o' r
  15. }
复制代码

7 v' k9 g4 S/ P4 ~$ K
5 V4 y  `  K3 K0 f% v1 R; F+ ~* J3 H3 ^. d
使用道具 举报 显示全部楼层 回复
最新评论 | 正序浏览
显示全部楼层 |楼层直达:
发表于 2019-6-25 17:57:26 | 显示全部楼层
怀疑你文件系统并没有使能,你可以检查一下ENV配置,也 可以贴出你的rtconfig.h
使用道具 举报 回复
发表于 2019-6-25 19:30:18 | 显示全部楼层
whj467467222 发表于 2019-6-25 17:57
3 K" x+ \$ v, C怀疑你文件系统并没有使能,你可以检查一下ENV配置,也 可以贴出你的rtconfig.h ...
  1. #ifndef RT_CONFIG_H__3 i- J# w7 _- \& X4 B  ?/ h! |4 U1 c- D
  2. #define RT_CONFIG_H__
    ) U6 C" [6 R$ ?

  3. + Y7 C$ n+ q7 v$ G
  4. /* Automatically generated file; DO NOT EDIT. */
    ) T: M- J; r3 c# A% y; L* u
  5. /* RT-Thread Configuration */, }& h& k! W4 U5 y. L

  6. + S+ b% L9 p3 q  h5 O" D# ~6 w# t
  7. /* RT-Thread Kernel */
      A- z5 F! D: `2 [3 `% e' z+ P" t( A
  8. 1 `, j2 Y7 L9 e: D: O% `9 n
  9. #define RT_NAME_MAX 8: \+ j6 J" o* b) \1 f
  10. #define RT_ALIGN_SIZE 4
    . i1 q5 w5 L) l$ J
  11. #define RT_THREAD_PRIORITY_32
    * A  l: c$ B# P5 n% f7 G3 v) Y
  12. #define RT_THREAD_PRIORITY_MAX 32; y7 ?4 f' O) ~8 X3 Y& T
  13. #define RT_TICK_PER_SECOND 1000$ L& w" b8 z- L0 G$ G
  14. #define RT_USING_OVERFLOW_CHECK
    ( j6 t, S9 }. c: f. N4 H4 V' R
  15. #define RT_USING_HOOK2 K& L- W/ ]$ o& @  L
  16. #define RT_USING_IDLE_HOOK7 C* M5 J/ h% |5 M0 o5 v7 H
  17. #define RT_IDEL_HOOK_LIST_SIZE 4
    4 M. I, S8 a, X' j1 L
  18. #define IDLE_THREAD_STACK_SIZE 256
    3 c/ E  f% o; O* T4 n3 y+ Y
  19. #define RT_DEBUG
    0 U+ [# C. P  q2 p* F
  20. 4 i8 w2 ?' L' F/ ?1 A3 t
  21. /* Inter-Thread communication */
    ) f2 w2 |5 S# K+ N! h6 N
  22. 5 b9 x$ e9 z6 d( e) \
  23. #define RT_USING_SEMAPHORE
    ) B9 I2 M5 X* l9 c; P
  24. #define RT_USING_MUTEX( k7 P, @0 E9 \% R* ^8 B
  25. #define RT_USING_EVENT' d; t7 }1 @% ~! `+ j$ ^/ z4 c; d
  26. #define RT_USING_MAILBOX
    3 ]. Y* i) C& t  \2 |- U9 Z
  27. #define RT_USING_MESSAGEQUEUE1 G$ @% o; x9 k8 [; s! r+ L: V- _
  28. % S2 n5 L" P; u( \0 g
  29. /* Memory Management */
    # a4 j. c1 u- p& J2 S+ P5 Z

  30. 6 T- ?$ d1 z: P; E
  31. #define RT_USING_MEMPOOL
    7 y0 S  |' g: L! u, n' V. T- f
  32. #define RT_USING_SMALL_MEM
    # t9 b& v3 F  C+ o% r
  33. #define RT_USING_HEAP$ n- q+ C0 I' F) `) s' [. K5 X( [

  34. - o( Y+ G. |. E) S3 B7 _: r
  35. /* Kernel Device Object */
    ( j' A/ }1 k1 B; K8 h- Z

  36. & N5 T& d- O3 x9 s2 x
  37. #define RT_USING_DEVICE
    2 x. l% W+ a5 A7 \1 u& B
  38. #define RT_USING_CONSOLE: K. x$ t8 ]3 E# Y# q- ]' Q
  39. #define RT_CONSOLEBUF_SIZE 128" R( z( c" a2 e; y
  40. #define RT_CONSOLE_DEVICE_NAME "uart1"
    $ D0 t' Y. s" \
  41. #define RT_VER_NUM 0x40002
    & A$ U6 B1 w6 o+ l
  42. #define ARCH_ARM, ]1 h' C$ n. B' u, A" c$ l+ ?
  43. #define RT_USING_CPU_FFS% E$ W1 H: T& Q3 W6 @
  44. #define ARCH_ARM_CORTEX_M( v: P8 p2 }# j2 x7 s5 `9 A) v
  45. #define ARCH_ARM_CORTEX_M3, x* [/ w! F; C$ h' H2 W# V8 _. h
  46. ' w" n7 O- E' p' h' M9 [& Q
  47. /* RT-Thread Components */
    " [# q$ a% K# V8 e
  48. 0 e& [7 I7 k" c# P/ j5 H9 _
  49. #define RT_USING_COMPONENTS_INIT' g( P. i7 {" x: S& {+ a3 N& F- r3 ?
  50. #define RT_USING_USER_MAIN
    + _6 p! D# n1 {& k4 l( G. Y+ R
  51. #define RT_MAIN_THREAD_STACK_SIZE 2048: F' e2 ^) b5 ^2 A
  52. #define RT_MAIN_THREAD_PRIORITY 109 H& R1 V3 U7 _- f4 ?

  53. 0 \% p8 l: W% f5 S, o/ z
  54. /* C++ features */! V& z8 t1 W/ n4 @9 H6 v& Y, M
  55. - n7 C( e$ O' p0 \! s3 r

  56. 5 p. b, Q3 ]/ }
  57. /* Command shell */6 S' I2 H. M8 U) A" Z

  58. 2 _( }# R: ^4 J) _. L5 }% s* G( F
  59. #define RT_USING_FINSH, S8 N. H4 F: W" P- l
  60. #define FINSH_THREAD_NAME "tshell"# I. c* A' o, K! _
  61. #define FINSH_USING_HISTORY
    5 c( ~  f) ]5 a
  62. #define FINSH_HISTORY_LINES 5
    " f9 Z2 F0 c& g5 E
  63. #define FINSH_USING_SYMTAB
      G9 j8 A/ ~( l, U+ d* Q
  64. #define FINSH_USING_DESCRIPTION
    ) z2 D6 I  ?3 L) v" m4 k* K
  65. #define FINSH_THREAD_PRIORITY 209 v) }0 O6 ^" @2 L% ^( J6 o. J
  66. #define FINSH_THREAD_STACK_SIZE 4096
    0 P" l, @- }5 ~2 H" l. R# g- K$ ^
  67. #define FINSH_CMD_SIZE 80
    % f/ o$ D" n6 Y( G9 r5 w
  68. #define FINSH_USING_MSH
    ( m9 M0 z5 p; C
  69. #define FINSH_USING_MSH_DEFAULT
      Q& Y, P- f: M, ?# c7 L, Z: x& n( U
  70. #define FINSH_USING_MSH_ONLY+ O* D  j/ t* {# |# s# G1 c
  71. #define FINSH_ARG_MAX 10
    ; h, [, s  I' S. K

  72. , o# Z) Q# B( F1 X) b
  73. /* Device virtual file system */
    " z, [6 Y* ~2 P  w

  74. - Y7 I- L8 j! N, [$ C. u$ i. f
  75. #define RT_USING_DFS% C1 \/ v* o- l6 `" G
  76. #define DFS_USING_WORKDIR
    5 E1 H! t- ~, \& b3 @) t
  77. #define DFS_FILESYSTEMS_MAX 2
    & u2 C: ^. q( p5 P7 q, d" H) R" q
  78. #define DFS_FILESYSTEM_TYPES_MAX 27 p) z/ ^4 q$ z/ }
  79. #define DFS_FD_MAX 16
    0 d' D9 z- t/ t8 J0 G3 l: f
  80. #define RT_USING_DFS_ELMFAT
    - l& ~/ s8 z' a: Z9 {

  81. $ }# i( n7 }. y# k0 E  l; o
  82. /* elm-chan's FatFs, Generic FAT Filesystem Module */! K; N2 \! c$ v1 a9 q8 K1 z) D$ `$ v

  83. , o4 ^& |4 h+ [
  84. #define RT_DFS_ELM_CODE_PAGE 437
    % _1 y% n+ `5 l/ L0 ^
  85. #define RT_DFS_ELM_WORD_ACCESS
    ' s! D+ B' n9 x) |  M8 R
  86. #define RT_DFS_ELM_USE_LFN_39 _2 ]0 L7 x% B5 B8 X% U2 X
  87. #define RT_DFS_ELM_USE_LFN 3- x8 r) r5 u/ m: A
  88. #define RT_DFS_ELM_MAX_LFN 255
    ; x0 \8 |; ]5 w, Z
  89. #define RT_DFS_ELM_DRIVES 2
      i- f  ]" O, u; D
  90. #define RT_DFS_ELM_MAX_SECTOR_SIZE 4096
      c; A6 h# f5 g) M+ t& f5 |2 o
  91. #define RT_DFS_ELM_USE_ERASE
    ! E3 |1 Y1 W' m
  92. #define RT_DFS_ELM_REENTRANT9 e7 G; F9 o0 O
  93. #define RT_USING_DFS_DEVFS
    9 ]" v- o- C7 B7 a
  94. - \( D5 r& t9 v
  95. /* Device Drivers */
    7 F1 k- T+ h$ |2 L

  96. # k2 j- ]5 j3 w0 C# J' @  r8 k
  97. #define RT_USING_DEVICE_IPC
    , t4 j1 `* X9 S, }3 `$ l  {
  98. #define RT_PIPE_BUFSZ 512( }4 f& ~* l; P& o; r  U8 a& w
  99. #define RT_USING_SERIAL- _5 D, E; @3 ^. z4 b
  100. #define RT_SERIAL_USING_DMA
    : ]9 g  X3 l" _( h- N% U
  101. #define RT_SERIAL_RB_BUFSZ 64( M2 K7 w. }. C2 `! v
  102. #define RT_USING_HWTIMER, b3 w: j: z/ X7 X' {0 e
  103. #define RT_USING_PIN$ t* J, @' }1 G8 j1 ~
  104. #define RT_USING_ADC
    * x! F- H+ D( t8 X: [+ H
  105. #define RT_USING_PWM
    % h- J2 ~( X8 B: j$ I  R
  106. #define RT_USING_MTD_NOR
    $ O% e$ M: K1 a, R' G
  107. #define RT_USING_SPI
    1 W2 E) _' P' n9 d* |- E6 Z
  108. #define RT_USING_SFUD4 w) S. F* e) @' u) l% d
  109. #define RT_SFUD_USING_SFDP
    7 ]- g' f$ D/ X, T. J$ v! N
  110. #define RT_SFUD_USING_FLASH_INFO_TABLE6 C7 U7 O5 g, {1 T

  111.   p4 I0 _: a# p% p; o
  112. /* Using Hardware Crypto drivers */3 W7 v# E8 h1 Q' O: L* [  s

  113. 4 {  ^: q% g" j! R3 ?8 t( U/ ?$ D! x# f

  114. - l- c6 \/ w$ F
  115. /* Using WiFi */
    " T: l& j  v6 e  o! _

  116. : G% m0 N7 W- B# u1 }

  117. 9 n' H4 N* U( E8 {) i& X
  118. /* Using USB */: C4 h- u$ e" _+ e$ B; _, G

  119. . [) {( B: I0 o

  120. 0 ^# e% D+ N) S' a
  121. /* POSIX layer and C standard library */
    ) `; [9 ?# C2 A  d  x7 j0 z) t. B& f
  122. 9 g9 @: ?6 x# s% W
  123. #define RT_USING_LIBC+ n' C+ n/ f5 w+ P7 G: i7 z* Z
  124. #define RT_USING_POSIX3 J6 l  @3 E: X. `6 S% G' ~, q+ Q

  125. 9 F7 B' O  L$ t
  126. /* Network */6 ]9 y9 ^4 E4 j7 b6 j( |: T* V

  127. 5 ]& {: U6 k' y6 D  Q5 V3 i# b
  128. /* Socket abstraction layer */
    + J7 }2 H+ V- U: w9 f

  129. % n9 `2 {6 x- J* h; J+ v4 Y0 _# e0 V

  130. : M/ D' L) R) Q& E& ?% f
  131. /* Network interface device */# ?3 q8 i9 w) N( G
  132. 4 ?. L: K, D' [7 I( }
  133. : s+ Y* Q3 a) x8 c! O, G3 \+ E4 R
  134. /* light weight TCP/IP stack */
    8 d" E8 O, l: E$ f' p  O

  135. ( F* w8 _3 w2 e2 f6 Y0 j
  136. / w2 r/ }0 W$ N% r
  137. /* Modbus master and slave stack */7 e4 z7 H" A1 w% o
  138. & ~1 h2 N5 n, J: S7 f3 |4 p
  139. 7 P" a5 E; `, h4 {5 M% ^% a, Q
  140. /* AT commands */" j; y5 p& C% C# f, z7 R( H

  141. 3 X0 k1 i$ c+ }! F3 W

  142. 2 c7 E. N' [- g( u; u. G: B6 [
  143. /* VBUS(Virtual Software BUS) */
    ) l: Y! s6 E0 q( O/ V
  144. 7 H" f' n3 E* ?9 c0 X. ?
  145. ) W9 j7 x% A7 P9 o; k
  146. /* Utilities */; `7 [& G" u- N' F

  147.   ~& F. ?5 ~5 ]8 B

  148. " ?  v0 s, I: B
  149. /* RT-Thread online packages */1 B; m  B" K  i$ F& z( [' C
  150. & D' `! }0 h! O
  151. /* IoT - internet of things */
    ' D& V: m1 p( R; k
  152. 3 A. `! O0 O4 G% r6 K( U) U

  153. 1 ~0 L6 [4 h* T, w
  154. /* Wi-Fi */0 M( Y7 R3 Q$ [+ K" e

  155. 2 Q( s( T: p/ _& F; }0 I
  156. /* Marvell WiFi */3 Q. x) N: i2 y/ v% d4 ~8 p  Q, f
  157. ' b4 k0 M+ J9 Y9 o! D) X
  158. 8 R+ `) R. t4 h& E
  159. /* Wiced WiFi */
    9 }$ U* U! a4 V$ F$ i/ U' N

  160. 0 m: Z; |/ N/ F8 T; w  ]' p
  161. 6 C  v. U- d  K; ]) Y
  162. /* IoT Cloud */
    # ?1 n# k/ |" P! G' H
  163. - o- E! s2 P, B* W
  164. * C8 f6 a- f/ f; s0 O
  165. /* security packages */
    " n6 E9 Y6 j' y& y+ D
  166. & \: o+ f# ?9 x/ e" c

  167. , O6 J& v2 m, }9 v9 E6 m- x3 \
  168. /* language packages */
    - t/ M- o4 }8 Q( d
  169.   i0 O' E) {! ~

  170. " q' x' r  s% V" G
  171. /* multimedia packages */5 E) W8 O+ W) K. Q' D  @

  172. 7 b& X, b  E4 J& l7 Y

  173. 8 {& `3 Y) l; T% U: Z7 ~. I
  174. /* tools packages */
    % L+ r& l' ]; w8 u4 {
  175. ' \0 T* L: r0 ]. U" W% |
  176. 8 w; P6 X. t# y+ p' S4 @
  177. /* system packages */; H: a$ c5 z5 ~

  178. % s3 f. p7 ~. p& j0 s
  179. #define PKG_USING_FAL% |( j/ G0 A! M( \7 u" X6 {
  180. #define FAL_DEBUG_CONFIG9 a/ |1 f: h; @; y9 R% |* g
  181. #define FAL_DEBUG 1# M: p- K& e/ H& P) Y8 }, l2 m
  182. #define FAL_PART_TABLE_FLASH_DEV_NAME "onchip"3 t. C( H9 \' Z3 d* C
  183. #define FAL_PART_TABLE_END_OFFSET 65536& c) T# Z' L; ~! s% P
  184. #define FAL_USING_SFUD_PORT
    9 s2 X* ~7 E; t. }1 K1 {& \
  185. #define FAL_USING_NOR_FLASH_DEV_NAME "W25Q128"0 Y6 Y/ V( B. F  T6 D3 q& Z7 i
  186. #define PKG_USING_FAL_V003004 L: L& [' U; {9 n9 Q
  187. #define PKG_FAL_VER_NUM 0x00300$ F3 C, u8 \4 A( e+ M& l+ [
  188. + b, m$ i6 D0 j
  189. /* peripheral libraries and drivers */! H( V. @; p' b- I

  190. % n* n2 N9 a- Q" Z

  191. 3 G4 D- _/ n9 S; H) ?1 K$ \
  192. /* miscellaneous packages */1 R4 m' q, S) O& h
  193. ; q8 a# S2 ~; ^, }
  194. * N9 h9 _7 T" }3 a$ K8 _6 u0 A
  195. /* samples: kernel and components samples */- R; d0 q% G/ J* N4 }$ \% P
  196. / p- ^5 w0 B6 `$ g, A" L
  197. #define SOC_FAMILY_STM32
    7 l' m6 \% g5 v
  198. #define SOC_SERIES_STM32F14 c! c# @) D- u$ o* m4 R6 N

  199. * A  k6 V6 X9 y0 S0 r5 |. R
  200. /* Hardware Drivers Config */
    6 F% P8 ?5 O! X3 U% k9 ~
  201. . E* y2 `* `/ m  e4 ~( w/ \- B
  202. #define SOC_STM32F103ZE! ]) u5 h$ I, K/ [- V1 R1 V
  203. 1 r4 N  [8 a4 c: i; s7 R: d8 ?; S9 N
  204. /* Onboard Peripheral Drivers */
    4 m1 f  R8 z, ]1 t- V7 P' b0 I3 l
  205. 5 Y9 t/ u$ ^0 j, R6 H
  206. #define BSP_USING_USB_TO_USART, X7 }: n# g0 L4 j$ X* v+ i  _
  207. #define BSP_USING_SPI_FLASH! R" R/ P' O  ]" ?8 H7 @
  208. " |& B. v3 w0 L, ?( Q
  209. /* On-chip Peripheral Drivers */5 [7 A: r7 y" m' [- i* W, t

  210. ' a0 w8 l% s1 B' j
  211. #define BSP_USING_GPIO' j0 F# H4 @9 I: M( y6 X( b8 M
  212. #define BSP_USING_UART, W! R! Q2 J" x
  213. #define BSP_USING_UART1' Y% j7 i+ k, w- O
  214. #define BSP_USING_PWM0 g; {7 q4 r: z  z
  215. #define BSP_USING_PWM3# Q3 ^* E) Z$ [
  216. #define BSP_USING_PWM3_CH27 p# @  h" |2 v
  217. #define BSP_USING_SPI3 _4 C+ W; g) l. L5 v
  218. #define BSP_USING_SPI23 u6 k. K) b3 k! w1 {

  219. 0 B9 A2 L( s/ s$ _
  220. /* Board extended module Drivers */
    # r) `( ?" O2 k$ D  B( e2 U1 Q

  221. - o7 Q( S% x. i5 i. L
  222. 3 ^4 N% w8 m1 @
  223. #endif% c$ X1 _6 e* c$ X6 Q# ?
复制代码
9 S! @+ T0 |% a9 V- f7 I, u6 O
) u1 ]/ V6 w" N. }' B. W) Q; n
以上为我的rtconfig.h
使用道具 举报 回复
发表于 2019-6-25 20:04:15 | 显示全部楼层
Jimyao 发表于 2019-6-25 19:30* G( Y8 z/ L& D8 i4 q3 _
以上为我的rtconfig.h

& b- g2 z, O- H7 i7 O' z3 K3 ?6 W楼主    dfs_mkfs("elm","W25Q128");是格式化的意思,格式化应该在dfs_mount之前,只需要执行过一次就行。
0 b2 m: s8 f8 `这个跟电脑上硬盘一个道理,没有分区的硬盘应该先建立分区并格式化。
使用道具 举报 回复
发表于 2019-6-25 20:38:22 | 显示全部楼层
zhangjun 发表于 2019-6-25 20:04) s0 {9 Z$ }% T, e6 N# W6 m
楼主    dfs_mkfs("elm","W25Q128");是格式化的意思,格式化应该在dfs_mount之前,只需要执行过一次就行 ...

6 g2 j! g5 H# {  E对啊我现在不就是这样的吗
8 ?  ^6 Z3 u: h) [: x/ X
使用道具 举报 回复
发表于 2019-6-25 21:24:12 | 显示全部楼层
估计文件系统支持个数太少了吧,所以mount的时候没找到fatfs文件系统类型
使用道具 举报 回复
发表于 2019-6-27 09:58:04 | 显示全部楼层
Jimyao 发表于 2019-6-25 20:38
# I# g/ V- ?, ^; {# I  n9 i对啊我现在不就是这样的吗

% W1 A$ c5 v  u, V6 U* [你贴出来的代码是先挂载后格式化的
使用道具 举报 回复
发表于 2019-6-27 16:46:10 | 显示全部楼层
zhangjun 发表于 2019-6-27 09:58
) m' P! v' u+ d+ U* m3 ]4 _你贴出来的代码是先挂载后格式化的

2 `6 L  n* p+ Y) \2 c: I$ w互换了位置,一样
使用道具 举报 回复
发表于 2019-6-28 14:51:12 | 显示全部楼层
zhangjun 发表于 2019-6-27 09:58! d! \2 O# x) B2 y3 o: M
你贴出来的代码是先挂载后格式化的
9 N+ m: O* M  |/ |8 p9 I$ p
所以这是无解?
使用道具 举报 回复
发表于 2019-6-28 16:25:23 | 显示全部楼层
Jimyao 发表于 2019-6-28 14:51
9 D6 L# o; I0 N: a3 f3 _4 J所以这是无解?

' i* C, \9 |' f3 e7 T* D你的rt_hw_spi_flash_init是不是比文件系统还要早调用的,这个时候文件系统还没初始化
# y: Y7 \# f( Y- N2 R( N( g7 N9 o4 {$ T/ R
一般rt_hw_spi_flash_init只做flash设备初始化,挂载文件系统之类的往往要放到初始化进程中。
使用道具 举报 回复
发表于 2019-7-2 21:50:21 | 显示全部楼层
zhangjun 发表于 2019-6-28 16:25
* |* y# y- e& e* k- ]你的rt_hw_spi_flash_init是不是比文件系统还要早调用的,这个时候文件系统还没初始化
, [& C. I% g3 e0 N% e* \3 J# {4 O7 U; A; ~' s2 ^
一般rt_hw_spi_fl ...
1 [+ ]( G0 S! b' K7 K/ ]( s
没有,elf_init是在rt_hw_spi_flash_init之后调用的。。。
使用道具 举报 回复
发表于 2019-7-3 09:53:30 | 显示全部楼层
Jimyao 发表于 2019-7-2 21:506 j. _0 ^3 A% S- y9 d$ [& K
没有,elf_init是在rt_hw_spi_flash_init之后调用的。。。

" x3 k3 V4 B- }# {- M0 H+ x是elm_init吧。elm_init得在和dfs_mkfsdfs_mount之前。
使用道具 举报 回复
发表于 2019-7-3 18:23:04 | 显示全部楼层
zhangjun 发表于 2019-7-3 09:53, j1 t# S. @7 ~  {% V
是elm_init吧。elm_init得在和dfs_mkfsdfs_mount之前。
  1. static int rt_hw_spi_flash_init(void)
    ! ~- [' K9 M7 ?0 T
  2. {
    7 h* h& @1 R) D' b
  3.     __HAL_RCC_GPIOB_CLK_ENABLE();! _7 \) e; w- v3 k6 |3 @
  4.     rt_hw_spi_device_attach("spi2", "spi20", GPIOB, GPIO_PIN_12);
    + M0 W: Q) q, M% @5 h, K

  5. 5 E, h( T% k* x8 a2 ^; g9 R
  6.     if (RT_NULL == rt_sfud_flash_probe("W25Q128", "spi20"))
    ) u9 Q6 U/ m( C8 X; w  i3 W8 J+ K
  7.     {
    6 P( r7 d8 M8 R8 @% Y) U
  8.         return -RT_ERROR;) Q- `3 [  i2 W6 q
  9.     };6 j8 T( U; @) [3 O1 e3 }
  10.     elm_init(void);
    2 M& \: q" T% ?
  11.     dfs_mkfs("elm","W25Q128");8 F: t4 H) a! M/ M
  12.     dfs_mount("W25Q128", "/", "elm", 0, 0);6 x/ Z/ v" f" Q7 Z* d5 T
  13. * y; Y' Q  b& e' A/ I& ]
  14.     return RT_EOK;0 |7 Y- M+ \7 }8 Y# E% N& D" b4 D
  15. }
    ! C# Y" C! t) r  F
  16. /* 导出到自动初始化 */
    9 {. A' T/ R) v6 `2 k$ S
  17. INIT_COMPONENT_EXPORT(rt_hw_spi_flash_init);
复制代码

- V. ^6 {+ {% `3 }5 q8 ^& Z现在改成这样,结果是一样的
使用道具 举报 回复
发表于 2019-7-3 18:34:50 | 显示全部楼层
是这样子的,elm 文件系统自动初始化级别是 INIT_COMPONENT_EXPORT。
% u' Q0 I( e  U详见:rt-thread/components/dfs/filesystems/elmfat/dfs_elm.c 文件 819 行左右。' ~# w  D9 l# }  |6 E9 [8 X9 @

9 ^5 d! l$ K6 \, l% }楼主驱动使用的初始化级别也是 INIT_COMPONENT_EXPORT,可能文件系统还未初始化好,就在使用了。导致上述问题。
0 S( V* B( N; U
1 ^. _2 _/ s. [# J0 t0 F5 B建议楼主在 应用中初始化文件系统。确保文件系统初始化完成之后,再使用
使用道具 举报 回复
发表于 2019-7-3 18:42:56 | 显示全部楼层
还没想好 发表于 2019-7-3 18:345 U/ R: r3 |: z8 E
是这样子的,elm 文件系统自动初始化级别是 INIT_COMPONENT_EXPORT。
: t( M2 Y, a$ C$ z# J详见:rt-thread/components/dfs/files ...
, b/ d2 a4 c: H4 d: |2 K- |: H# k
我这里已经手动添加了elm_init(void);
使用道具 举报 回复
发表于 2019-9-12 14:22:23 | 显示全部楼层
最后结果呢、? 我也无法正常挂载0 f+ a2 e% F% s* q" H9 r  s! X
使用道具 举报 回复
发表于 2019-12-30 18:01:42 | 显示全部楼层
RT-WH 发表于 2019-9-12 14:22
+ @% q! s' K0 a  O- C; Y* K最后结果呢、? 我也无法正常挂载

/ H- F4 n; g) d/ F- I' ^% l) Z没结果,放弃了
使用道具 举报 回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  1. 6 主题
  2. 79 帖子
  3. 79 积分

Ta的主页 发消息

Archiver|手机版|小黑屋|RT-Thread开发者社区 ( 沪ICP备13014002号-1

有害信息举报电话:021-31165890 手机:18930558079

© 2006-2019 上海睿赛德电子科技有限公司

Powered by RT-Thread

快速回复 返回顶部 返回列表