你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

纠错:STM32F429I-Discovery_FW_V1.0.1示例FMC_SDRAM

[复制链接]
ppacctv 发布时间:2014-10-24 19:31
新手学STMF4xx,参考STM32F429I-Discovery开发板V1.0.1示例FMC_SDRAM使用汇编编写SDRAM驱动,调试2天最终发现示例一处问题,如不仔细看源码,很可能会误导和我一样的新手……  L% @; z! w: U; _5 @7 u6 i
; q( {. {& E5 c3 E" N/ s

7 z+ |5 R6 k. C9 `8 J5 O示例:
1 y# p0 |6 F+ M9 y      源文件:stm32f429i_discovery_sdram.c
( Y, a/ T9 P, Y      错误:void SDRAM_GPIOConfig(void)% c6 g$ `% f6 x0 z; U. }
               对比下文两处红色字体所示内容。
/ m: E0 J4 [# {( X1 g/*-- GPIOs Configuration -----------------------------------------------------*/) V3 Y' ?: k4 O
/*) I; o5 M" l. [3 S+ j
+-------------------+--------------------+--------------------+--------------------+
0 z0 M9 `6 f, \+ x. E6 [0 M +                       SDRAM pins assignment                                      +$ Z7 v* p, P% k3 W8 e* v
+-------------------+--------------------+--------------------+--------------------+5 q3 }* n# C: a7 w3 Y
| PD0  <-> FMC_D2   | PE0  <-> FMC_NBL0  | PF0  <-> FMC_A0    | PG0  <-> FMC_A10   |
  C( j3 G- v1 O+ \ | PD1  <-> FMC_D3   | PE1  <-> FMC_NBL1  | PF1  <-> FMC_A1    | PG1  <-> FMC_A11   |
, l* w4 p& i7 ^7 ~ | PD8  <-> FMC_D13  | PE7  <-> FMC_D4    | PF2  <-> FMC_A2    | PG8  <-> FMC_SDCLK |
9 h3 ^: w+ L& x- m) X3 Y# I, p" x | PD9  <-> FMC_D14  | PE8  <-> FMC_D5    | PF3  <-> FMC_A3    | PG15 <-> FMC_NCAS  |
; m8 C; l) i. }2 e- g; f2 Q | PD10 <-> FMC_D15  | PE9  <-> FMC_D6    | PF4  <-> FMC_A4    |--------------------+
7 E5 v: T% R) e2 \+ @- l& L( J | PD14 <-> FMC_D0   | PE10 <-> FMC_D7    | PF5  <-> FMC_A5    |   
) p6 Q) I, B1 F1 d+ U! q | PD15 <-> FMC_D1   | PE11 <-> FMC_D8    | PF11 <-> FMC_NRAS  | 8 j% A" z* `! W  W5 K
+-------------------| PE12 <-> FMC_D9    | PF12 <-> FMC_A6    |   |4 s' h4 e4 x. [6 w# l
                     | PE13 <-> FMC_D10   | PF13 <-> FMC_A7    |    % y" J9 c* c1 P, z& w* A4 E4 O
                     | PE14 <-> FMC_D11   | PF14 <-> FMC_A8    |+ @/ P& m' W& E. |
                     | PE15 <-> FMC_D12   | PF15 <-> FMC_A9    |
1 W5 ]/ Z4 t% l$ p& V" h5 V" W +-------------------+--------------------+--------------------+- Q' Y# \4 d7 j4 k
| PB5 <-> FMC_SDCKE1|
3 D) ]* `- s6 ?6 X! K5 h$ \6 X | PB6 <-> FMC_SDNE1 |
( \4 f: ^8 h4 x" L | PC0 <-> FMC_SDNWE |9 ~: I: f. I" T% z
+-------------------+  % M0 w  ~9 O+ I
  * x- F  i2 }$ t3 s) e/ H
*/
+ {' Z/ c1 U( p: v9 p2 N
。。。。。。
+ M0 S0 o3 K( v3 l; R- H$ Y
! ]0 i& J( U4 g! v1 N

; Z3 ]5 q& i1 y$ G/ o/* GPIOG configuration */
& J& E2 I, c5 x) D& e7 G; y  GPIO_PinAFConfig(GPIOG, GPIO_PinSource0 , GPIO_AF_FMC);8 m4 u8 F" k0 v0 y1 f6 A0 d
  GPIO_PinAFConfig(GPIOG, GPIO_PinSource1 , GPIO_AF_FMC);- s3 b1 p& r$ g! K
  GPIO_PinAFConfig(GPIOG, GPIO_PinSource4 , GPIO_AF_FMC);* |7 e- ^' T4 H; n- v
  GPIO_PinAFConfig(GPIOG, GPIO_PinSource5 , GPIO_AF_FMC);
3 h5 [; {' k6 v$ F, B; n( C: q! G
  GPIO_PinAFConfig(GPIOG, GPIO_PinSource8 , GPIO_AF_FMC);
& ?6 @9 Z, W" E3 P  GPIO_PinAFConfig(GPIOG, GPIO_PinSource15 , GPIO_AF_FMC);
7 q* O' G% L: {0 `( ~

, v; Y9 w/ o4 |" Q
" H7 z2 E! Z( I+ g2 C/ P
更正:
8 ~& l$ Y1 x9 P# u$ q0 d5 A; +-------------------+--------------------+--------------------+--------------------+5 h* ]! @) `9 \, i
; +                       SDRAM pins assignment                                      +3 C% v! g  Q, r) `$ F$ ~+ ^4 j
; +-------------------+--------------------+--------------------+--------------------+0 ~2 ^# r! Y! P7 x1 I* q
; | PD0  <-> FMC_D2   | PE0  <-> FMC_NBL0  | PF0  <-> FMC_A0    | PG0  <-> FMC_A10   |
' _! O9 i2 K, A; | PD1  <-> FMC_D3   | PE1  <-> FMC_NBL1  | PF1  <-> FMC_A1    | PG1  <-> FMC_A11   |6 ^( d5 [) o$ ~% ~1 A
; | PD8  <-> FMC_D13  | PE7  <-> FMC_D4    | PF2  <-> FMC_A2    | PG4  <-> FMC_BA0   |% H5 v' P/ g! G& i( U+ T' A
; | PD9  <-> FMC_D14  | PE8  <-> FMC_D5    | PF3  <-> FMC_A3    | PG5  <-> FMC_BA1   |
: l) N! U: g7 D( p) r4 |; | PD10 <-> FMC_D15  | PE9  <-> FMC_D6    | PF4  <-> FMC_A4    | PG8  <-> FMC_SDCLK |4 u% l7 ]# g' ?& g
; | PD14 <-> FMC_D0   | PE10 <-> FMC_D7    | PF5  <-> FMC_A5    | PG15 <-> FMC_NCAS  |  
1 u  i/ F! G1 d* R; | PD15 <-> FMC_D1   | PE11 <-> FMC_D8    | PF11 <-> FMC_NRAS  |--------------------+  
. c+ z. T! m$ ]  I; +-------------------| PE12 <-> FMC_D9    | PF12 <-> FMC_A6    |
7 v/ O! n2 |" {0 R* _;                     | PE13 <-> FMC_D10   | PF13 <-> FMC_A7    |   
5 ?" L) \: [5 F! a" f;                     | PE14 <-> FMC_D11   | PF14 <-> FMC_A8    |$ s: o$ y/ d6 C% A; X5 [5 j" ^) O
;                     | PE15 <-> FMC_D12   | PF15 <-> FMC_A9    |
+ ?! i) }1 C8 E0 o! S! ?; +-------------------+--------------------+--------------------++ I# Q. [$ Y: q( G8 F
; | PB5 <-> FMC_SDCKE1| - J5 U4 ]3 k# F) s  F& o; U) W  J2 D
; | PB6 <-> FMC_SDNE1 | & ~& ?+ c# b9 z3 ~) r
; | PC0 <-> FMC_SDNWE |7 w0 w$ @" f! W) k
; +-------------------+
$ t5 Q9 T; z, _
赞 收藏 评论2 发布时间:2014-10-24 19:31

举报

2个回答
沐紫 回答时间:2014-10-27 17:28:29
赞个,其他童鞋验证下?
dong杨 回答时间:2014-10-29 19:19:33
这个还照搬?

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版