ST健康值的表达解释—给大家解惑_CHAM
看到蛮多朋友对ST健康值有点疑惑,想想,就搞个贴给大家。校准时候例如大家看到这个,
Log 02 - Health 0008 - HlthDtl 0000
其实就是这么解释的。
健康值标示如下:X X X X . X X X X
前四位是当前健康值后四位是累计健康值
0 0 0 8这是当前健康值,后面的0 0 0 0是累计健康值。
在前四位的当前健康值中
0008 这里是两个字节,每个字节有8 bits(位) 记得是2进制。
00 08
bit15 bit7
bit14 bit6
bit13 bit5
bit12 bit4
bit11 bit3
bit10 bit2
bit 9 bit1
bit 8 bit0
每一位的的二进制,只有两个开关,一个是0,一个是1
0到15这16个Bit(如果= 1)
则意味着
15 Excessive Skips or Alts 太多SKIPS 或ALTS 7(internal use- abort test flag)内部使用--失败测试标记
14 Hardware Error 硬件错误 6 (internal use- error 13 or 14) 内部使用--错误13或14
13 Serious R/W Error 严重的读写错误 5 (internal use- too many dfcts/tk 内部使用--太多缺陷
12 Error Rate Health出错率健康 4Servo warning 伺服警告
11 Offtrack Error 偏移错误 3Read/Write warning 读写警告
10 Actuator Error 激励器错误2Unable to Assign Skip or Alt 无法重映射SKIP或者ALT
9 Servo Error 伺服错误 1Spin Current Warning 电机当前警告
8 Spin Error 电机错误 0Spin Error During Seek 寻道过程中SPIN出错
你这里是00 08
那么直接转2进制就是00000000 00001000
这里是第四位 BIT3 (BIT0是低位第一位)是1,所以第一个字节转成16进制就得到08,知道什么意思了吧。
对应一下表,看看BIT3=1的问题是什么,一看就知道了3 Read/Write warning 读写警告。
完毕! 学习一下不错的帖子,谢谢CHAM的分享 老哥顶你,弟弟你真牛 喜欢看这样的贴。 师傅 又搞出新东东啦 CHAM兄,给你顶起来,嘿嘿!~~~~ 师傅真厉害~~~~~~~~ 兄弟 大家都会支持你 师傅,,我来了,,哈 还是硬盘有弱道或者坏道多而已。02的健康值可能与固件区有弱道有关。