OpenVINOTM,给你看得见的未来!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » FLASH 急救:FLASH段中的数据在断电上电时,会造成改变吗?

共2条 1/1 1 跳转至

FLASH 急救:FLASH段中的数据在断电上电时,会造成改变吗?

院士
2006-12-22 22:43:00    评分
FLASH 急救:FLASH段中的数据在断电上电时,会造成改变吗?



关键词: FLASH     急救     段中的     中的     数据     断电     上电         

院士
2006-12-22 22:43:00    评分
2楼
问 我测试了一个程序。F1121芯片,采用模拟串口方式。测试正常。做了有一批。绝大部分都是好的。但总有几个出现这种情况:

  起初上电正常通讯,后来断电后再上电,出现无法通讯。后用仿真软件读出存储在Flash中的地址数据,发现与写入的不同。但按照Flash中的地址码进行通讯也不行。我正常情况下起始帧先发送FE,但用仿真查看:F1121收到的却是FF。这种情况应该是模拟串口方面的内容发生了变化,导致接收误码,试了好几次都是这样。

  后我在Download Options中设置只写入Main存储器,information不动。即只将程序代码写入,不改变数据信息。但还是不行。而全部写入,则可以恢复正常。因此可以判断在断电之后,或者上电之后发生了information中的区域的一些信息的变化,从而导致串口出现误码。

  不知如何解决这个问题?请刘工及其他工程师们帮忙。 1: 无法通讯的原因是我的电脑有问题,重新启动电脑之后可以通讯了。

但Flash中存储的数据在上电时有时会发生变化,这一点是绝对存在的。我不知道应该怎么解决它。是不是我的复位电路有问题?

我的复位脚RST通过100K电阻接VCC,并通过0.1uF电容接GND。十分简单的。不知取值及电路是否有问题? 2: 真的吗?老兄,我现在也在做,也是1121,正在进行小批量,不过现在还没有发现你说的问题,关注! 3: 我的系统也有可能断电,要是这样的话可麻烦了.用专用复位芯片试试 4: 我用过好几个型号,没有遇到这种问题,应该是不存在这个问题的,你可以注意一下你FLASH写入的是否可靠,注意频率和电压。 5: 检查自己的程序 6: 超出系统的供电电流极限,电压下降芯片死机,建议计算一下整个电路的耗电情况,选用合适的LDO或DCDC 7: flash本身是非常可靠的。在我们的客户提到出现的问题中,都是由于软硬件的问题。您可以仔细考虑一下上面各位工程师提出的建议。 8:   首先感谢各位工程师的帮助。
  我的程序如下。是根据书上的例子写的。应该没有问题。另外,我的供电十分可靠。可提供几十个mA的电流,因此不存在供电不足问题。

  我在写Flash前执行StartPROGFLASH,然后用mov指令将数据写入FLASH段的地址中,写完之后再执行EndPROGFLASH结束Flash编程。

  我在贴子中也说明了,我怀疑是我的复位电路的问题。因此想请教一下,象我这样的复位电路(RST上拉100K电阻,下拉0.1uF电容)是否可靠?

;********************************************************
; 编程FLASH的起始子程序 *
;********************************************************
StartPROGFLASH
dint ;关中断
mov.w #FWKEY+FSSEL0+FN0,&FCTL2; *Timing generator = MCLK/2
TestBusy1 bit #BUSY,&FCTL3
jnz TestBusy1
mov.w #FWKEY,&FCTL3 ;Lock = 0
mov.w #FWKEY+ERASE,&FCTL1 ;允许擦除FLASH
ret
;********************************************************
; 编程FLASH的结束子程序 *
;********************************************************
EndPROGFLASH
bit #BUSY,FCTL3 ;一直等到非忙状态
jnz EndPROGFLASH
mov #FWKEY,&FCTL1 ;复位编程
mov.w #FWKEY+LOCK,&FCTL3 ;Lock = 1
eint ;开中断
ret 9: :gantan: 怎么没人回复了?帮帮我吧。

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]