牛卧堂MCU技术交流

标题: 关于NANO100的FMC的问题 [打印本页]

作者: haohao96    时间: 2014-6-19 11:07
标题: 关于NANO100的FMC的问题
基础条件:
    1、产品样机中采用NANO100LC2BN芯片,芯片设定为从APROM启动;
    2、将该芯片的最后512字节作为参数保存区域。注意不是将这最后的512字节作为DATA FALSH区域来使用,而是APROM的一部分。
    3、采用NULINK与电路板连接并为电路板供电。电路板消耗电流约40mA,在电路板上用万用表测得的电压约为3.12V.

问题描述:
    按照新唐的“TRM_Nano100(B)_Series_SC_Rev1.07”第366页关于“ISP控制寄存器(ISPCON)”中的“APUEN”位的描述,要想更新APROM中存放的参数,就需要将该位设置为1----也即“当MCU运行在APROM,APROM 可以被更新”。我们一共做了3台样机,这些样机均采用相同的程序代码。
   1、在3台样机中,最初由于疏忽,并没有设置APUEN位为1,但是其中一台样机能正确保存参数,而另外两台样机却不能保存经过修改后的参数。
   2、经过排查程序后,我们在程序中设置ISPCON的APUEN位为1后,3台样机均能正确保存经过修改后的参数。

    所以在此想问一问,这个是不是NANO100芯片内部的BUG呢? 为何在没有设置ISPCON的APUEN位为1的情况下也能擦出和并写入FLASH存储器呢?

作者: a_ziliu    时间: 2014-6-20 11:31
1、在3台样机中,最初由于疏忽,并没有设置APUEN位为1,但是其中一台样机能正确保存参数,而另外两台样机却不能保存经过修改后的参数。
不確定是不是人為操作失誤。
那台有問題,有先作ERASE再去更新嗎?還可以復制錯誤嗎?



作者: Hank    时间: 2014-6-20 11:48
樓主您好
1.产品样机中采用NANO100LC2BN芯片,芯片设定为从APROM启动;
2.将该芯片的最后512字节作为参数保存区域。注意不是将这最后的512字节作为DATA FALSH区域来使用,而是APROM的一部分

>>因為APROM與DataFlash是共用的區塊,如您的描述,並沒有開啟DataFlash,請問這三片芯片中,發生錯誤的芯片都可以每次複製出現象嗎?
>>如果每次皆可以複製出此現象,可否告知您所在的地區,我們請專人與您聯繫,取得芯片回作分析
作者: haohao96    时间: 2014-6-20 12:08
其实我在前面已经很详细的叙述了问题,请注意“这些样机均采用相同的程序代码”这句话,就是为了避免让人有因为“人为错误”的想法的。注意,程序中仅在该处有对FLASH操作的语句序列,其他地方没有任何对FLASH操作的相关语句。程序片段如下:


最初的程序并没有添加图片中的这两个语句:
    FMC_EnableAPUpdate();                         //允许从APROM中更新APROM中的内容
    FMC_DisableAPUpdate();                        //禁止从APROM中更新APROM中的内容
其中有一台样机能正常擦出和写入数据到FLASH中,而另外两台却不能写入。当然,不能写入数据到FLASH中是正确的结果。加上上面的两个语句后,三台样机均能正常保存参数,说明能正常擦出和写入FLASH.

现再次用这3台样机试验,将“FMC_EnableAPUpdate(); "语句注释掉后(正如上面的图片中所看到的那样),问题及现象依旧出现,还是有一台样机能保存参数,而另外两台却不能保存参数。



作者: a_ziliu    时间: 2014-6-20 13:22
可以請你把那一台有異常的,及另一台是正常的交給代理商,再轉原廠分析。
作者: haohao96    时间: 2014-6-20 14:29
Hank 发表于 2014-6-20 11:48
樓主您好
1.产品样机中采用NANO100LC2BN芯片,芯片设定为从APROM启动;
2.将该芯片的最后512字节作为参数保 ...

正如你所说的那样,有问题的那台样机,每次都能出现那种状况。
作者: haohao96    时间: 2014-6-25 11:28
看来新唐对这个芯片的“缺陷”似乎不太关心啊!




欢迎光临 牛卧堂MCU技术交流 (http://www.nuvoton-mcu.com/) Powered by Discuz! X3.2