EDA365电子工程师网

标题: 请教一个问题,芯片不工作的原因? [打印本页]

作者: 零点VS夜    时间: 2015-3-21 18:07
标题: 请教一个问题,芯片不工作的原因?
说一下我板子的工作流程先:首先上电,主芯片会从FLASH芯片读程序,然后SRAM再工作,但是现在我遇到的问题是:上电后,主芯片能从FLASH读程序,但是读完后 FLASH的时钟就变成了低电平(正常为高电平),然后输给SRAM的时钟正常是60MHZ,但是现在只有18MHZ我的主芯片能够刷写程序进去的,但是上电就是不工作,晶振起振是正常的,复位电路也正常,芯片的各技术电压都正常(这应该证明芯片应该是没问题的吧?!),请问有谁知道是怎么回事吗?
# }- r( D# B3 ^1 v! X2 J+ a% u0 c9 [
作者: ziyu    时间: 2015-3-21 18:39
Flash芯片是指外部的存储芯片么 是SPI么
作者: 零点VS夜    时间: 2015-3-21 20:49
ziyu 发表于 2015-3-21 18:39: u8 x1 a# f+ N, E0 E- ~8 {
Flash芯片是指外部的存储芯片么 是SPI么
* t1 T3 G# a. c# Y; q( F! _
是的,发完数据后,时钟就变成了低电平,这是为何?
# A( o) I' S* U( p, ?3 F
作者: fallen    时间: 2015-3-21 21:09
可能是数据读出来有问题,所以就停掉了。" a7 l  K, I, D5 R
你烧录成功后,然后再读出来,跟原文件对比一下,看是否有问题。6 U. U" }& x. c! h/ Q* {
另外,FLASH的GND接地也需要良好。
作者: 零点VS夜    时间: 2015-3-21 21:58
本帖最后由 零点VS夜 于 2015-3-21 22:05 编辑
0 f+ L' k% V9 f" D
fallen 发表于 2015-3-21 21:09
$ E: T: o! Q- g1 P/ S) r可能是数据读出来有问题,所以就停掉了。
8 Q' ^( \# K; w( ^  r( j你烧录成功后,然后再读出来,跟原文件对比一下,看是否有问题。 ...
# s  v4 a$ n( i# a, \0 b. V
哦,FLASH芯片应该是没问题的,我将它换到好的板子上是可以的,所以是不是有可能传输到主芯片的过程出现了问题?
作者: markertang    时间: 2015-3-21 23:05
零点VS夜 发表于 2015-3-21 21:58
% R: I4 b" R/ t+ g  \8 z. q哦,FLASH芯片应该是没问题的,我将它换到好的板子上是可以的,所以是不是有可能传输到主芯片的过程出现 ...
3 g! f5 W, j8 X/ A/ Z, h3 F" y4 z, {8 J& j
SRAM是内置还是外置,如外置换下SRAM。程序运行离不开RAM,BOOTLOADER读完FLASH存储CODER,由内置RAM切换到外置的RAM,外置质量可没焊好,程序产生硬件失效中断,程序也就停下来了。
/ j3 ^! ~, h: U
作者: 零点VS夜    时间: 2015-3-21 23:48
markertang 发表于 2015-3-21 23:05- q6 Z! c& `! p8 O3 A6 [/ y4 \
SRAM是内置还是外置,如外置换下SRAM。程序运行离不开RAM,BOOTLOADER读完FLASH存储CODER,由内置RAM切换 ...
3 W3 c6 r. A) y: b$ r9 f' l
外置SRAM已经换过了,像CSB. WEB和OEB这些控制端都是有波形的,所以排除是它的问题,但是主芯片提供给它的频率不对,正常是60MHZ,但是量到的只有18MHZ....  O# H1 f5 E$ n1 g, f

作者: part99    时间: 2015-3-22 03:08
bootlaoder的SRAM时钟没设置对,找写firmware的同事改一改。
, f* }* u& F( D5 H" s1 r你自己也可以检查一下SRAM的时钟设置,从哪个主时钟入,然后乘以多少,除以多少,看看是不是输出60MHz还是18MHz。
作者: 零点VS夜    时间: 2015-3-23 12:39
part99 发表于 2015-3-22 03:08
, @. g' u1 T' K' d7 d. x- dbootlaoder的SRAM时钟没设置对,找写firmware的同事改一改。+ s0 I1 J+ h3 U# q# E
你自己也可以检查一下SRAM的时钟设置,从哪个 ...
& t$ E. X. `1 c
找到问题了,谢谢各位的回答!# c: \; Z, q" i4 s% \& U% C1 v7 Y* x

作者: fjnhzhm    时间: 2015-3-23 14:11
怎么不说说是哪里出了问题
作者: 零点VS夜    时间: 2015-3-23 15:12
fjnhzhm 发表于 2015-3-23 14:11- c2 j" ?$ v1 ?6 t. \
怎么不说说是哪里出了问题
  @. b% e( D" }1 _/ M* G
是SRAM的一个数据端口(D3)连到排阻时虚焊了(锡粘不上焊盘,肉眼发现不了),导致这个数据没办法和主芯片数据交互,所以主芯片就停止工作了0 N" e3 {; I( l  n

作者: IsaacLee1988    时间: 2015-3-23 19:33
我更想知道你是怎么发现场这个问题的。,是在检查芯片焊点的时候发现的么?
3 |2 w9 A  A8 Z% D- J# j
作者: sbitxihc0616    时间: 2015-3-24 08:14
那时钟的问题是怎么解决的?
作者: myeda_365    时间: 2015-3-24 08:41
求调试经过,怎么发现问题,发现问题后怎么解决的
作者: bingshuihuo    时间: 2015-3-24 08:44
myeda_365 发表于 2015-3-24 08:41/ S3 p0 d& s7 i/ ~/ t- P$ I
求调试经过,怎么发现问题,发现问题后怎么解决的
0 i$ u$ p% X( R# {; ]+ D4 m
就是读不到数据   
) b) b% o4 W) p5 P这样的数据位肯定有问题
/ [3 V& f  x+ V2 S+ R# K9 @* a; ]9 y
硬件查看电源 $ p+ q) b0 D: S5 p
看电源电源稳定不
# U0 R, R) u  b* {  g* h3 D, t, j" a. Z, G) [" A' m
一般片子很难坏 & l) I$ h5 }+ w# ^/ X; }( [
所以可以实际查看电路合理性9 b: i, d& F% v4 K+ |

作者: yiting7466    时间: 2015-3-24 09:16
零点VS夜 发表于 2015-3-23 15:12
5 {! }1 w3 Y" M, D( `) N. Y是SRAM的一个数据端口(D3)连到排阻时虚焊了(锡粘不上焊盘,肉眼发现不了),导致这个数据没办法和主芯 ...
+ }8 ?9 T  ]. m, J; \/ K
有点不明白,时钟是主芯片发给SRAM的,数据线中间排阻虚焊,为什么时钟会变化呢?时钟不是软件中写好的吗(难道是数据读写错误了,使得软件中的计算的倍频数不一样了)? 楼主是否有做过实验,SRAM不同数据线断开,时钟是不是也都不一样?  a- d7 `2 |5 c' b# C

作者: markertang    时间: 2015-3-24 11:11
yiting7466 发表于 2015-3-24 09:16
8 y5 d3 Y; x5 J有点不明白,时钟是主芯片发给SRAM的,数据线中间排阻虚焊,为什么时钟会变化呢?时钟不是软件中写好的吗 ...

- f& G7 R' L2 h3 y  T/ X5 B. U; DCPU运行写运算数据到SRAM,虚焊造成未读取到正确的数据,比如指向未定义的地址,跳转到不存在的地址造成CPU产生硬件FAULT,停在硬件FAULT中断里了,非常有可能不能配置正确的时钟了。ARM芯片外置RAM最容易出问题的就是RAM这块了。
! ?3 y: F8 d, _5 Y
作者: fallen    时间: 2015-3-24 13:44
零点VS夜 发表于 2015-3-21 21:58: n/ ]6 S- T' e! J' [, Z
哦,FLASH芯片应该是没问题的,我将它换到好的板子上是可以的,所以是不是有可能传输到主芯片的过程出现 ...
; g4 A5 T! l% l* A" g
楼主你的问题解决了,赞一个!2 p. e/ X  d( }3 H& r; f





欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/) Powered by Discuz! X3.2