系统可行性分析系统主要是用来对Flash的测试和对电池电压采样并进行A/D转化。对Flash的测试可以通过对Flash的某个特定的块和页进行读写操作,检查读写的结果是否正确。对电池采样主要是通过0832这个芯片来实现的,软件上面通过用CPU对0832的DO管脚进行读,再进行相应的转化,就能换算出目前的电池电压值,利用电压值和时间可以画出电压与时间的曲线图,在已知放电电阻和放电各阶段时间的前提下可以算出电池的电容量。
总体设计方案本系统的主要功能有两大模块,一个是Flash检测,另一个是电池的测试。下面我们将针对两个不同的模块提出不同的实现方案。串行Flash检测:首先,要先选通Flash,只有选通Flash之后,才能正确地对其进行相应的操作。由于系统的需求是要求一次性同时检测4片串行Flash,所以我们就采用轮流片选的方式来选通将要被检测的串行Flash.其次,当选通相应的串行Flash之后,我们要对该片Flash发各种状态信号使之能够完成各项操作。接着,我们要对串行Flash进行初始化,即对串行Flash的特定页进行擦除。如果擦除失败,说明该片Flash已经损坏。如果擦除成功,那我们就可以更加深入地对这片Flash的每个块进行检测并建立坏块表。如何检测将在详细设计里说明。最后,在应用程序上,通过读出坏块表中存储的数据,就可以得出Flash的坏区情况,并通过调用显示函数,把4片Flash的检测结果通过液晶显示给用户,这样就满足了前面所讲的对Flash检测。电池的充放电管理:本系统需要实现对4种不同电池的充放电管理。电池之间存在着很多差异,所以对电池设置4个专门的放电电路和充电电路。