EDA365电子论坛网

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

作者: 零点VS夜    时间: 2015-3-21 18:07
标题: 请教一个问题,芯片不工作的原因?
说一下我板子的工作流程先:首先上电,主芯片会从FLASH芯片读程序,然后SRAM再工作,但是现在我遇到的问题是:上电后,主芯片能从FLASH读程序,但是读完后 FLASH的时钟就变成了低电平(正常为高电平),然后输给SRAM的时钟正常是60MHZ,但是现在只有18MHZ我的主芯片能够刷写程序进去的,但是上电就是不工作,晶振起振是正常的,复位电路也正常,芯片的各技术电压都正常(这应该证明芯片应该是没问题的吧?!),请问有谁知道是怎么回事吗?
( Y1 ]) A, u; ?1 N, v/ e
作者: ziyu    时间: 2015-3-21 18:39
Flash芯片是指外部的存储芯片么 是SPI么
作者: 零点VS夜    时间: 2015-3-21 20:49
ziyu 发表于 2015-3-21 18:39# Z5 x9 x! H9 x  r; i2 X
Flash芯片是指外部的存储芯片么 是SPI么

: _' x, F8 [% \  W是的,发完数据后,时钟就变成了低电平,这是为何?) v& d- h+ }0 ]! Y! J( e/ K

作者: fallen    时间: 2015-3-21 21:09
可能是数据读出来有问题,所以就停掉了。+ d2 b3 q$ M0 u9 Q: F; N' h- U9 Q
你烧录成功后,然后再读出来,跟原文件对比一下,看是否有问题。
& d+ i, m# u3 Y. G7 a7 v* j- F; P; w' i另外,FLASH的GND接地也需要良好。
作者: 零点VS夜    时间: 2015-3-21 21:58
本帖最后由 零点VS夜 于 2015-3-21 22:05 编辑
/ N* b1 ]0 b% y: p0 J
fallen 发表于 2015-3-21 21:09
% O1 m) F" q3 V. C可能是数据读出来有问题,所以就停掉了。0 v# W& h" d( O, J
你烧录成功后,然后再读出来,跟原文件对比一下,看是否有问题。 ...

1 w  d5 t+ Z3 N哦,FLASH芯片应该是没问题的,我将它换到好的板子上是可以的,所以是不是有可能传输到主芯片的过程出现了问题?
作者: markertang    时间: 2015-3-21 23:05
零点VS夜 发表于 2015-3-21 21:581 P1 U  {  `- J. j
哦,FLASH芯片应该是没问题的,我将它换到好的板子上是可以的,所以是不是有可能传输到主芯片的过程出现 ...

; _- H: w" n% P! \3 XSRAM是内置还是外置,如外置换下SRAM。程序运行离不开RAM,BOOTLOADER读完FLASH存储CODER,由内置RAM切换到外置的RAM,外置质量可没焊好,程序产生硬件失效中断,程序也就停下来了。; h* h4 T1 A& V7 Y" Z

作者: 零点VS夜    时间: 2015-3-21 23:48
markertang 发表于 2015-3-21 23:052 v6 _& e% @0 C, M
SRAM是内置还是外置,如外置换下SRAM。程序运行离不开RAM,BOOTLOADER读完FLASH存储CODER,由内置RAM切换 ...
% c$ U: @' a  ~7 F
外置SRAM已经换过了,像CSB. WEB和OEB这些控制端都是有波形的,所以排除是它的问题,但是主芯片提供给它的频率不对,正常是60MHZ,但是量到的只有18MHZ....& O/ G& R9 B+ X

作者: part99    时间: 2015-3-22 03:08
bootlaoder的SRAM时钟没设置对,找写firmware的同事改一改。
$ ]) I9 U4 t! `3 \) [2 q你自己也可以检查一下SRAM的时钟设置,从哪个主时钟入,然后乘以多少,除以多少,看看是不是输出60MHz还是18MHz。
作者: 零点VS夜    时间: 2015-3-23 12:39
part99 发表于 2015-3-22 03:08
/ E/ ~2 x% J4 C  v1 _; ]bootlaoder的SRAM时钟没设置对,找写firmware的同事改一改。/ T) D4 g/ y, G) X& |
你自己也可以检查一下SRAM的时钟设置,从哪个 ...
% Y4 W9 F+ ?* L, w! W( ?' b3 i) j
找到问题了,谢谢各位的回答!
  p7 C+ ?9 N2 o. b
作者: fjnhzhm    时间: 2015-3-23 14:11
怎么不说说是哪里出了问题
作者: 零点VS夜    时间: 2015-3-23 15:12
fjnhzhm 发表于 2015-3-23 14:11
' e: D7 h( r) X怎么不说说是哪里出了问题
, P- d+ _* r) J* {1 w& m7 o4 K( L
是SRAM的一个数据端口(D3)连到排阻时虚焊了(锡粘不上焊盘,肉眼发现不了),导致这个数据没办法和主芯片数据交互,所以主芯片就停止工作了3 Y9 l1 j- D: s9 E$ g

作者: IsaacLee1988    时间: 2015-3-23 19:33
我更想知道你是怎么发现场这个问题的。,是在检查芯片焊点的时候发现的么?/ r) |& E& N6 f/ ]3 m  c- Z

作者: 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:418 ?$ Q6 n$ Q9 E( R% C/ c
求调试经过,怎么发现问题,发现问题后怎么解决的

* T$ E: L: Z% H6 m# j# u就是读不到数据   ' W2 \2 I) h' j- e$ I6 ?
这样的数据位肯定有问题1 B5 @6 |. i/ `' S2 D, _1 t4 u- }8 I
3 v, @9 p1 w" R9 j+ R8 y) f5 ]
硬件查看电源 8 M+ x, J' |8 s0 @
看电源电源稳定不 & ?% I/ t( A: w9 k* u/ R6 K

; `4 x0 p  C! R) p' b9 t9 y一般片子很难坏
% L9 f2 M4 G9 ?& Q8 T  V3 ] 所以可以实际查看电路合理性; N8 c& d5 R! s- R8 d

作者: yiting7466    时间: 2015-3-24 09:16
零点VS夜 发表于 2015-3-23 15:12* |2 `+ n- |9 [3 w: b3 @
是SRAM的一个数据端口(D3)连到排阻时虚焊了(锡粘不上焊盘,肉眼发现不了),导致这个数据没办法和主芯 ...
% o% }+ v- F* J2 }9 ~$ p6 x$ ?; u
有点不明白,时钟是主芯片发给SRAM的,数据线中间排阻虚焊,为什么时钟会变化呢?时钟不是软件中写好的吗(难道是数据读写错误了,使得软件中的计算的倍频数不一样了)? 楼主是否有做过实验,SRAM不同数据线断开,时钟是不是也都不一样?
$ K# ^' C+ N0 F0 T$ T* f) @. d* L
作者: markertang    时间: 2015-3-24 11:11
yiting7466 发表于 2015-3-24 09:16) V* Q( a9 O. e; W
有点不明白,时钟是主芯片发给SRAM的,数据线中间排阻虚焊,为什么时钟会变化呢?时钟不是软件中写好的吗 ...
( ^! }2 X% K2 `: I& r; _
CPU运行写运算数据到SRAM,虚焊造成未读取到正确的数据,比如指向未定义的地址,跳转到不存在的地址造成CPU产生硬件FAULT,停在硬件FAULT中断里了,非常有可能不能配置正确的时钟了。ARM芯片外置RAM最容易出问题的就是RAM这块了。
# x* U$ m4 t  R- Z$ [. k6 U2 |+ [
作者: fallen    时间: 2015-3-24 13:44
零点VS夜 发表于 2015-3-21 21:58
; H9 j5 T) {# f哦,FLASH芯片应该是没问题的,我将它换到好的板子上是可以的,所以是不是有可能传输到主芯片的过程出现 ...

! t7 m+ v( S  ]$ p% R+ H/ V楼主你的问题解决了,赞一个!
; f4 ~+ }6 d- ?! r  G" k5 R




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2