`
mmiwwcom
  • 浏览: 9259 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

MTK 输出Trace信息到文件中

    博客分类:
  • MTK
阅读更多

 

#include "FileMgrGProt.h"
void mmi_write_buffer_to_file(char *buff, unsigned int buffSize, char *fileName)
{
    S32 ret = 0;
    U32 rwLen = 0;
    S8 ascii_path[32];
    S8 ucs2_path[64];
    FS_HANDLE fileHandle;
    sprintf(ascii_path, "%c:\\%s", MMI_CARD_DRV, fileName);
    mmi_asc_to_ucs2(ucs2_path, ascii_path);
   
    ret = FS_GetAttributes((const WCHAR *)ucs2_path);
    if(ret < FS_NO_ERROR)
    {
        fileHandle = FS_Open((const WCHAR *)ucs2_path, FS_CREATE_ALWAYS|FS_READ_WRITE);
    }
    else
    {
        fileHandle = FS_Open((const WCHAR *)ucs2_path, FS_READ_WRITE);
    }
    kal_prompt_trace(MOD_TST, "mmi_write_buffer_to_file, fileHandle=%d", fileHandle);
    ASSERT(fileHandle>=FS_NO_ERROR);
 
    ret = FS_Seek(fileHandle, 0, FS_FILE_END);
    ret = FS_Write(fileHandle, buff, buffSize, &rwLen);
    FS_Close(fileHandle);
 
    ASSERT(rwLen==buffSize);
    ASSERT(ret >= FS_NO_ERROR);
 
}

 在使用的时候先定义一个buffer

例如:

char filebuff[64] = {0}; //大小可以根据需要来定
memset(filebuff, 0, 64);
sprintf(filebuff, "error code\r\n");
mmi_write_buffer_to_file(filebuff, strlen(filebuff), "error.txt");
 

 

这样是输出error code 到文件当中

 

memset(filebuff, 0, 64);
sprintf(filebuff, "fN=%s\r\n", fileName);
mmi_write_buffer_to_file(filebuff, strlen(filebuff), "error.txt");
 
这样是输出fileName 到文件当中

memset(filebuff, 0, 64);
sprintf(filebuff, "XXXXX.c, line %d\r\n", __LINE__);
mmi_write_buffer_to_file(filebuff, strlen(filebuff), "error.txt");
 
这样是输出当前文件的行号到文件中

 

这样很方便使用,又不用担心catcher引起问题.

 

分享到:
评论

相关推荐

    MTK 文件系统

    - **功能**:输出当前系统中所有打开文件的句柄信息。 - **应用场景**:诊断系统中文件句柄泄露等问题。 ##### 10. FS_CheckFile:校验文件完整性 - **功能**:检查指定文件的完整性和一致性。 - **应用场景**:...

    Trace工具使用说明及工具:Catcher

    在MTK平台上,Trace工具通常与内核、驱动程序和应用程序的调试紧密相关,提供了丰富的日志输出和事件追踪功能。 ### 2. 使用Trace工具 使用Trace工具通常包括以下步骤: - **开启Trace功能**:在内核配置中启用...

    MTK系统解析.pdf

    Trace是MTK系统中的一个重要组件,用于跟踪系统的行为。在MTK系统中,Trace需要注意以下几点: 1. 需要指定正确的跟踪参数。 2. 需要指定正确的输出文件。 八、异常处理 异常处理是MTK系统中的一个重要组件,用于...

    MTK hang机抓取Log方法

    - **抓取状态信息**:若ADB功能可用,可通过特定的bat脚本抓取设备状态信息,包括mtklog、trace、data_aee_exp、NEcore、tombstones等关键日志文件,同时保留手机状态的快照。 综上所述,针对MTK Hang机问题的处理...

    MTK抓catcher的使用说明

    - 使用DOS环境下的编译命令对包含调试语句的模块进行重新编译,并将编译后的bin文件下载到手机中。 **3. 配置Catcher工具** - **设置数据库路径**:通过`config`菜单下的`SetDatabasePath`选项指定数据库文件的...

    MTK-Android软件培训

    - `-t, -tee`: 将日志信息输出到标准输出。 - `-o, -opt=bypass_argument_to_make`: 传递额外参数给 make。 - `-h, -help`: 显示帮助信息并退出。 - **项目**: - 可选择可用项目之一。 - **操作**: - `listp, ...

    MTK_catcher使用说明

    - 在此模式下,用户可以从已保存的日志文件中分析原始数据和调试信息。 - 适用于事后的问题分析和故障排查。 - 不需要设备上的服务程序支持。 #### 三、框架窗口和对话框 MTK Catcher提供了丰富的窗口和对话框...

    MTK_Android开发基础资料

    其中包含了多种参数和选项,比如-t或-tee用于在标准输出打印信息,-o或-opt用于将额外参数传递给make命令,而-h或-help则用于打印帮助信息并退出。makeMtk命令支持的动作有列出所有可用项目、检查构建环境、检查功能...

    MTK 开发入门资料

    ### MTK 开发入门资料详解 ...以上是基于给定文件中的内容整理出来的MTK开发入门资料,涵盖了从编译工具的选择到具体开发技巧的详细介绍。对于初学者来说,熟悉这些工具及其使用方法是十分重要的基础准备工作。

    mtk平台gps配置相关.doc

    这将允许设备通过移动网络自动同步时间,并启用必要的调试信息输出。 Q2、GPS启动流程: GPS启动通常包括初始化、搜索卫星信号、计算位置、以及保持定位等步骤。首先,系统加载GPS驱动,然后激活GPS芯片,接着进行...

    systrace.rar

    1. **trace.bat**:这是一个批处理文件,通常用于Windows环境,用于执行systrace命令。通过运行这个脚本,用户可以快速启动systrace,记录指定的系统事件,并生成报告。 2. **NOTICE**:这是一个法律文件,通常包含...

    Driver_All_in_One MT6580 及MT6535平台驱动调试

    3. **日志分析**:Linux内核提供了丰富的日志系统,如dmesg,用于记录驱动运行过程中的信息。通过对这些日志的分析,可以定位和解决问题。 4. **调试工具**:使用GDB进行内核调试是常见的手段。另外,trace32、jtag...

    10A 版本以上的catcher

    它能够捕获和记录系统中的各种事件,如中断、系统调用、内存访问等,这对于理解和优化系统的性能至关重要。10A版本及以上版本的catcher,可能包含了以下改进: 1. **增强的性能监控**:新版本可能增加了对CPU利用率...

Global site tag (gtag.js) - Google Analytics