mtk平台软件调试方法与技巧.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
mtk平台软件调试方法与技巧.txt吃吧吃吧不是罪,再胖的人也有权利去增肥!苗条背后其实是憔悴,爱你的人不会在乎你的腰围!尝尝阔别已久美食的滋味,就算撑死也是一种美!减肥最可怕的不是饥饿,而是你明明不饿但总觉得非得吃点什么才踏实。mtk 模拟器调试 前篇文章介绍了手机调试的TRACE技巧,MTK手机调试是比较简单的,除了打TRACE,找ASSERT,分析DUMP外,剩下的就是经验了,有经验的人看到现象就能猜到问题出在什么地方,简单看一下TRACE只是为了确认自己的猜测.初涉此道的朋友往往需要时间,慢慢积累经验.要达到熟练,就需要有空的时候多读多研究代码.熟练的掌握了代码,解决问题就会熟能生巧. MTK的模拟器调试说没技巧也是对的,说有技巧也不错.因为模拟器的技术与其说是MTK经验,不如说是VC经验. 由于模拟器能在没有样机的情况做大量的UI方面的开发,同时模拟器具有快捷,所见即所改等优点,因此,受到很多开发老手的青睐.熟练掌握模拟器使用技巧,对于提高工作效率,节省资源具有很积极的意义. 工欲善其事,必先利其器.欲了解模拟器调试,就要先了解VC使用.VC调试过程中经常使用的快捷键如下: vc++断点的使用:按F9(设置断点),F5调试,F10单步调试,shift+F5退出调试F10单语句执行,F11单指令执行,Ctrl+F10执行至光标处;F9按行设置/取消断点, Alt+F9可按行,按数据或按消息设置断点;调试时,按Alt+3打开跟踪窗口,Alt+4打开变量窗口,Alt+5打开寄存器窗口,Alt+6打开内存窗口,Alt+7打开堆栈窗口,Alt+8打开汇编指令窗口; 1.只要你有源代码,拥有一个模拟器是一件很容易的事.当然,有些情况下,这对于初入MTK的人来说,也是困难的,特别是在一些代码管理不善,公司人员众多,员工流动频繁的公司,你永远想象不出他们的代码会有多糟.不过一般情况下,我到一个新公司,都会试着去使用他们的代码编译得到模拟器,不管他们的代码多么糟,我总能快速的编出模拟器来.只要三个步骤: a.在编译模拟器前请关掉所有SP的宏,这是很重要的,很多SP都不提供在模拟器下运行的库,所以一个项目SP越多,在模拟器下,他无法识别的函数也会越多 b.在编译过程中遇到错误,可以把所有与显示无关的代码全部使用#ifdef WIN32宏括起来,把所有不认识的类型使用typedef int xxx;重定义.把一些不能识别的宏定义使用WIN32括起来重定义一下 c.在生成MODIS时,会遇到大量不认识的函数,如果少于50个,全部建成void xxx(){}类型的空函数.如果多于一百个,尝试查找这些函数的来源,如果是相关SP的,就再次补充关掉相关SP.当然如果你不怕麻烦,也可以把这一百个函数建成空函数.一般来说,把所有第三方功能和与MTK无关的功能关掉的话,不能识别的函数一般不会超过十个. 经过这样三步,一般情况下你都能得一个差不多可以使用的模拟器.有了模拟器,你就可以进行下面的工作了.如果你仍然无法获得模拟器,建议咨询你的项目领导,如果你的领导也无法解决,说明这个软件组是一个组员变动很快,或者说缺乏条理性的部门,当然也有可能这个部门的程序员都是一些MTK的顶尖层高手,他们的程序从来不需要调试.总之这是会让人疯狂的部门. 2.如果你顺利到到一个模拟器,那么就可以开始调试了.首先说一下断点,VC中的断点分三大类,一类是本地断点,一类是数据断点(也称之为条件断点,有人称之为高级断点),还是一类是消息断点;这三类断点分别对应于快捷键ALT+F9打开的对话框中三个选项卡.由于消息断点是用于跟踪WIN的消息,所以在MTK中用不着.在模拟器中一般我们只使用本地断点与数据断点.本地断点和数据断点在BUG调试中举足轻重,熠熠生辉。熟练掌握断点技巧,可以使工作事倍功半。可能有些人会使用断点,但却不知道断点在模拟器中有什么妙用.断点有两个最常使用也的作用,一是跟踪代码执行情况,二是观察断点处局部变量值的变化.这两个功能应用最多.但他在MTK模拟器中还有两个隐含的用途,一就是快速定位文件,MTK本身的源代码大约有差不多上万个文件,而加入SP后,代码大约已经超过了万数.在这里面查找文章,查找函数,是一件很困难的事,这时就需要使用断点了.你在代码阅读工具SI中可以很轻松的利用CTRL+O打开文件,也可以使用F7快速定位到函数,但在VC中却没这么方便,不过你可以使用断点,比如想在VC中打开某个文件wgui_categories_CM.c,只要VC中使用ALT+F9,在break at编辑框里输入{,E:\JMT_1120\plutommi\mmi\GUI\GUI_SRC\wgui_categories_CM.c,} .4693,按F5执行DEBUG后VC就能自己定位到这

文档评论(0)

orhchv6 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档