MTK平台关机工模代码框架

       关机工模是一种测试软件,功能是检测 Android智能手机在生产过程中,手机的主板、外设能否正常、软硬件是否达到设计要求,拦截功能不良机器,确保每一台出场的手机都是良平。本文主要介绍MTK平台下关机工模的代码框架和软件流程然后着重举例说明基于MTK平台的LCM关机共模开发流程。

一、什么是关机工模

       所谓关机工模是在bootloader(有时也被称为lk)程序引导下,kernel启动以后,手机不开机的情况下,通过按键组合(通常是power键+volume up键)进入的一种工厂测试模式。它的功能体现在智能手机生产工程中两个主要阶段:第一个是在SMT阶段与夹具配合,用来检测智能手机的主板在焊接过程中是否存在虚焊,物料是否存在问题,以及软件是否存在设计缺陷等;第二是在组装阶段,待手机连接好外设(例如LCM、NFC、TP等),组装成整机以后,检测外设是否连接正确,物料是否存在问题,手机各个模块是否能够按照设计要求正常工作等。关机工模位于Android操作系统的Linux内核层,用C/C++实现。关机工模的优点是位于Android操作系统的底层,灵活度高,方便对手机的各个器件进行检测,同时由于关机工模不需要开机,在工厂生产时节省时间,它的缺点是由于代码是用 C/C++实现的,逻辑较为复杂。

二、关机工模代码框架和软件流程

MTK是全球著名IC设计厂商,MTK设计的智能手机芯片在基于Android系统在中低端智能手机市场中占有非常大的市场份额。MTK平台下的关机工模叫做factory,它的代码目录是:

vendor/mediatek/prpprietary/factory。代码结构如下图所示。

 图 1 MTK平台factory目录

      如图1所示,inc文件夹中存放后缀为.h的头文件;res文件夹中保存图片和用于测试音频文件;src文件夹中存放后缀为.c或.cpp的控制文件;test文件夹中存放关机工模下需要测试的测试项,每个测试项都有一个文件,该文件的名称都以ftm开头,例如测试NFC的文件名称为ftm_nfc。

       MTK平台下关机工模软件框架采用比较常见的循环结构,每个case都有一个entry函数,当在UI上点击对应的case时,便会跳转到对应的entry函数下去执行。MTK平台关机工模软件流程如图2所示。

 图 2 MTK平台factory软件流程

       图2中存在两次test_mode_menue()函数,第一次出现时显示的是关机工模的主界面;第二次出现是显示“自动测试”,“手动测试”和“测试报告”的主界面。所谓“自动测试”就是一旦进入该模式,就必须将关机工模下包括:版本信息、按键、LCD测试、背光等30多个测试项从第一项开始到最后一项结束,全部测试一便;“手动测试”包括自动测试中的30多项,“手动测试”可以选择自动测试中的一项或多项;“测试报告”模式是用来查看30多项测试结果的,只有在“自动测试”或“手动测试”任一模式下将相应的测试项目测试pass,那么该测试项在测试报告中就会显示pass,否则显示fail.

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值