问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

flash固件 升级失败?

发布网友 发布时间:2022-05-02 04:01

我来回答

1个回答

热心网友 时间:2022-06-28 00:27

现在网络上一直在流传短路Flash修复刷错固件的MPN,这种方法也被很多人看成是修复MPN的杀手锏,到底这种方法是否真的有效呢?

我现在接触过的MPN也不多也就是ATJ和RK两种方案,所以,以下就此二种方案进行讨论:

先看ATJ。

我看过许多ATJ由于固件刷错或其他原因引起的差电脑不识别的问题。在ATJ方案中,MPN向电脑提供了2种通讯协议:

一个是Store Device 也就是一般插上电脑识别出来的U盘设备。

另一个是AdfuUd Device 也就是当我们短路Flash是电脑识别出来的东西。

重点就在这个 AdfuUd Device 从某个角度上说,这个协议就是炬力公司留下的应急接口,当固件刷错时,可以使用这种设备恢复固件!

那当什么时候才会另ATJ20xx进入 AdfuUd状态呢? 这个问题很简单,只要挂在ATJ20XX上的Flash访问失败是,就会进入这种状态。我曾把一台2075方案Mp3的弄下来(固件没问题),插上电脑识别出来的就是 AdfuUd Device。

我们都知道,MCU对Flash的访问就是MCU和Flash的交互,那么,当MCU对Flash进行初始化(访问)时,Flash就会给MCU返回一段数据,包括初始化成功消息、Flash容量大小等信息。那么当Flash返回了错误的信息,MCU就认为访问Flash失败。

那么,当ATJ20XX认为Flash访问错误时,自然就不会以Store Device(U盘)的方式与电脑交互,所以就会选择AdfuUd Device。

以此看来,我们短路Flash的数据脚,就是要破坏Flash返回给MCU的信息,欺骗MCU Flash访问失败,这样就可以强使ATJ20XX进入AdfuUd Device模式。可见,用短路Flash的方法解决ATJ20XX软件问题是可行的!

好,再来看RK方案。

RK在设计时,就把固件升级和一般的访问分开了。而且不允许任何程序通过USB连接访问固件Flash

一般RK机器插上电脑会识别出一个Store Device(U盘设备),有可能还有一个SD/MMC Reader/Writer(读卡器)

当需要刷固件时,脱机状态下 按住MODE(有些是Vol+或者其他键)联机,电脑会识别出 Rockusb Device(本讨论仅限电脑能识别出设备的情况)

升级程序就通过这种设备把要升级的程序刷进去。

依此看来,短路Flash的方法对于RK系列是行不通的。

OK,现在再说说当RK系列刷错固件后再刷时出现的“.........Flash坏块过多....”和正常联机后访问Flash出现“请将磁盘插入驱动器.....”的问题。

其实这两个侍舛加幸桓龉餐�脑赐罚�饣挂�覴K芯片的Flash说起。

RK芯片不止支持一块Flash,所以,才会有支持读卡器等设备的机器出现,不过很可惜,为了提高扩展性,RK芯片的Flash访问通道是由固件来决定的,即:

假设某块RK芯片有4个存储设备通道S0~S3(除固件Flash)。

现在在此RK芯片上挂1个Flash和1个SD:

S0 --- Main Flash (Flash)

S1 --- NULL (空)

S2 --- SD Mounter (SD)

S3 --- NULL (空)

这个是硬件的配置,那么在软件的配置上,固件里指定的存储设备挂载点和硬件相符合,没什么好怀疑的,这是正常的固件,一切正常,也不会出现上面提出的两种问题。则,如果刷入了错误的固件,其中指定存储设备挂载点如下:

S0 --- NULL

S1 --- NULL

S2 --- Main Flash

S3 --- SD Mounter

这样硬件访问自然会出错,因为有可在存储设备通道中挂有Flash也有可能挂有读卡器等,而读卡器中很有可能没有插卡,所以,RK不会因为存储设备访问出错而做什么特别的事,所以插上电脑我们仍然可以看到那几个驱动器......

这个也就是为什么刷错固件后,正常联机后访问Flash会出现“请将磁盘插入驱动器.....”的原因。

至于第一个问题——刷错固件后再刷时出现的“.........Flash坏块过多....”

刚开始我们说过,RK不允许程序通过USB直接访问固件Flash,所以,升级程序要先通过Rockusb Device把要写入的固件写到挂在RK上的存储器的剩余空间里,然后通知RK,RK效验固件程序后,再把固件刷到固件Flash中。

(我个人认为这种设计真的很棒!)

那么根据上面所说的存储设备挂载错误,自然程序无法访问已挂载的存储器,就说Flash坏块过多啦~~~

至于这个问题,我暂时还没有找到比较好的解决方法。

请大家一起来研究,找到一个完善的解决方法。

郑重声明:以上内容均为个人理解,仅供参考。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
轻度慢性萎缩性胃炎 活动期,伴轻度肠 化 胃角多发糜烂。医生说了我... 胃窦粘膜慢性轻度萎缩性炎伴轻度肠化胃窦粘膜慢性轻度萎缩性炎? 芬兰留学读研费用是多少 芬兰留学读研时间 去芬兰留学学费生活费一年要多少 芬兰留学读研费用是多少? 芬兰留学读研学费多少? 感冒好多天了,可不可以打蓝球或者其它运动出出汗啊? 感冒打喷嚏,鼻塞然后可以让自己多出出汗吗 宝宝感冒了能去游泳吗 关于MID平板电脑芯片方案的问题! 鼻翼两侧毛孔粗大又有很多雀斑,要如何改善? 鼻子两侧的毛孔粗大怎么办 鼻翼两侧毛孔粗大,有什么办法改善呢? 梦见玉米吊仅冲走是什么? 梦见玉米吊仅冲走是什么? 梦见下暴雨玉米地塌陷出现一条河,河里漂上来一个*的空船船顺流而下? 梦见下暴雨玉米地塌陷出现一条河,河里漂上来一个*的空船船顺流而下? 梦见玉米地庄稼被洪水淹 梦见雨后,地里玉米撒落一地 梦见下雨预示着什么,而且下的还不小,地上水2米多深,把我家的粮食冲走了一大半,呜呜呜 梦见发大水还冲走了好多玉米还有好多人 单身男人梦见洪水淹没玉米地? 梦见我和弟弟拉了一车玉米粒,被大水冲走了,是什么意思? 梦见下大雨发大水把自己家地里玉米苗冲了 昨天晚上做梦。梦到自己站在高处看滚滚来的洪水把玉米地给淹没了。还有玉米地里有面砖墙被推倒。 梦到玉米粒被雨水冲了 梦见洪水淹没玉米 梦见大雨冲走了玉米什么预兆? 梦见玉米地被洪水冲走了一半 联咏HD800B 瑞芯RK2816 两种方案的差别 爱国者微自媒体是干什么的?具体怎么操作呢? 海思hi3716cv200、hi3718c 哪里有可以开发的,他们和rk、全志的机顶盒方案有什么区别 网络机顶盒和网络电视机顶盒是一回事吗? 瑞芯微rk3288定制项目做广告机合适吗? 你们有谁是做销售的啊 什么MID方案 手机方案 什么意思啊 RK常说的话有什么 在命令行下运行python源文件,为什么提示找不文件,和源文件的保存位置有... cmd打不开py文件? 用python时说找不到'_main_.py'是怎么回事? 在命令行中执行python datetime.py就会报找不到内置模块的错误,cannot import name 'datetime' 大神们,为什么我用notepad++创造的python程序在命令提示符中找不到???拜托各位大神! .py文件运行不了 python初学,在命令行中可以调用numpy但是在IDLE中就说找不到 python ***.py无法运行 进入受限空间长时间时,应做好哪些工作 求一套危险化学品安全标准化模板啊,谢谢了,392293984@qq.com 今天打车,然后忘记了AirPods在书包里面就座车子的时候不小心被压了一下会坏吗? 福建省企业安全生产级别评定标准怎么做 安全生产标准化前期准备工作有哪些(化工行业)