|
从同事手里接过一个项目,据反馈这个写不了8G的SD卡。我了解一下关于SD卡操作的类容,并对照盘古、原子的SD卡代码进行修改,后来发现果然是源代码中的问题,修改之后可以读写SD卡了。 但是高兴过早了,还有一个问题,在写数据时常发现写入的数据被分成好几个文件,且名字都不一样,但是里面的内容却是正确的。8 x' ?6 ?+ T+ e 我原来以为是SD卡供电不稳造成的,于是在SD卡供电的地方加了一个103的坦电容,想让电源稳定一点。& k9 i4 T4 o* g" o6 D R 在测试时发现,中断里去写又发生问题了,文件又写成多个了!!7 r. E+ C) _9 t; w* z6 q' c 于是将SD卡写入部分放到主程序中去执行,调试时,SD卡写入没有问题,自己运行时,写入还是多个文件。& T( @: _2 e0 Q: U# c3 F 俺也是初学,那个叫揪心呀!!4 p( w# U$ _7 H 先看图吧,也许就发现问题了。; q, R7 `3 N, d3 i+ T% W9 j 忥çåçå¾
在其布线的时候,将电源先输送到了LCD上,请看这个PCB图。( E. E, x4 X5 q, Y/ K PCBå¾
; a( e( A9 D2 {" q' k5 d 电源在L1那里输出给了LCD和SD卡,当然还有后面的STM32了(略)。3 P. \+ C" i5 |4 D$ N& Z) \ 由于LCD是要不停地显示数据的,如果LCD在刷新的话,那么就有可能影响后面电路。 主要是,单步调试时,写入正常!!!这个时候没有刷新问题。 管它呢,反正俺是初学呢,先给输出搞一个大电容先!!!9 y) J3 }8 m' G- P& D. \( \2 ` 由于是要稳定SD卡,所以,在输出的SD卡分支上,加上了一个大一点的坦电容,当时那个个头还挺大个的呢!8 x$ h8 h0 Z3 D/ ~ _ W( P 俺是这个处理的,请看图。 å çµå®¹
5 _% n d S$ [9 k 然后再测试,发现没有问题鸟!!! 一个电容,搞了老长时间了,悲剧的! ( e& w6 Q/ m' j- N# c) e+ p 在这里没有使用到任何辅助工具,实在是被动得很。 不知道,有没有高手指点一下,如果遇到这种问题,一般从什么地方下手去处理,处理的一般步骤是什么个样子的呢? |
微信公众号
手机版
. x1 S. R% \; E5 }# }. q9 r
一般情况电容的大小都不会产生明显效果,唯有一种情况除外,那就是谐振,楼主最开始的实验正中此症,当一个退藕电容的前面加有电感器件,且进电器件有较大的间断电流时就会激发谐振,LC常数越接近RC谐振幅度越大,常常需要计算解决,简单处理常常将这个点的电容加的足够大,如470微法,或通过替代实验。+ i( P9 j" e0 y: R" m- K- @- }) w" g
俺是初学入门选手,嘿嘿。在那个黄色的地方加电容,是为了稳定后面的电路,那个L1处输出到了LCD液晶显示屏上的同时也输出给了SD卡,可能是那个液晶用电比较大吧,一直开着背光,而且还有刷新显示。: W9 \+ L4 P% _+ M+ m6 Z1 G
一般来说是在芯片最近的电源入口加一个电容就可以了,保证芯片入口电源稳定一点,一般是103、104电容。
啊,这样呀?我在那个黄色标记的地方加了一个100uf的坦电容。& l/ ]) X3 h, N+ S7 w6 @2 G0 D& ~) G
没想到电容的选择还有那么多讲究呢,有没有什么资料介绍怎么选择电容器的呀?
SOT23-5 封装。第 4 脚一般是加个 103 或 104 的电容对地。
第 5 脚是输出,没有接一个电容,就直接串了个电感。
这个 PCB 设计,还真是马马虎虎。
绿色箭头指向的地方,建议加上电容。
最左侧的:10uF。
其余:100nF。2 {" t0 W% F' C. V
U1用的是这个:XC9216-GE K+ I) y# o7 A$ Z# b% |6 \
谢谢指点,嘿嘿,俺接到这个时也不明白为什么非得那样搞哇。
嗯,谢谢,是不是可以理解为,凡是芯片的电源都给它加一个电容,这样比较合适?
这个问题我也不知道怎么回答你,因为我就是手头正好有一个100uf的,直接加上去试用了...