- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.嵌入式开发流程
1.嵌入式开发流程:
1.系统定义
2.可行性研究
3.需求分析
4.系统总体设计
5.硬件设计制作
6.软件设计制作
7.软硬件集成
8.功能测试
具体流程:? 调试器和被调试进程运行在不同的机器上,调试器运行在 PC 机(宿主机),而被调试的进程则运行在各种专业调试板上(目标板)。
? 调试器通过某种通信方式(串口、并口、网络、JTAG 等)控制被调试进程。
? 在目标机上一般会具备某种形式的调试代理,它负责与调试器共同配合完成对目标机上运行着的
进程的调试。这种调试代理可能是某些支持调试功能的硬件设备,也可能是某些专门的调试软件
(如 gdbserver)。
? 目标机可能是某种形式的系统仿真器,通过在宿主机上运行目标机的仿真软件,整个调试过程可以在一台计算机上运行。此时物理上虽然只有一台计算机,但逻辑上仍然存在着宿主机和目标机的区别。
下面分别就软件调试桩方式和硬件片上调试两种方式进行详细介绍。
(1)软件方式。
软件调试主要是通过插入调试桩的方式来进行的。调试桩方式进行调试是通过目标操作系统和调试器内分别加入某些功能模块,二者互通信息来进行调试。
该方式的典型调试器有 gdb 调试器。
gdb 的交叉调试器分为 GdbServer 和 GdbClient,
其中的GdbServer 就作为调试桩在安装在目标板上,
GdbClient 就是驻于本地的 gdb 调试器。它们的调试原理:
? 首先,建立调试器(本地 gdb)与目标操作系统的通信连接,可通过串口、网卡、并口等多种方式。
? 然后,在目标机上开启 GdbServer 进程,并监听对应端口。
? 在宿主机上运行调试器 gdb,这时,gdb 就会自动寻找远端的通信进程,也就是 GdbServer 的所在进程。
? 在宿主机上的 gdb 通过 GdbServer 请求对目标机上的程序发出控制命令。这时,GdbServer 将请求转化为程序的地址空间或目标平台的某些寄存器的访问,这对于没有虚拟存储器的简单的嵌入式操作系统而言,是十分容易的。
? GdbServer 把目标操作系统的所有异常处理转向通信模块,并告知宿主机上 gdb 当前有异常。
? 宿主机上的 gdb 向用户显示被调试程序产生了哪一类异常。
这样就完成了调试的整个过程。
这个方案的实质是用软件接管目标机的全部异常处理及部分中断处理,并
在其中插入调试端口通信模块,与主机的调试器进行交互。但是它只能在目标机系统初始化完毕、调试通信端口初始化完成后才能起作用,因此,一般只能用于调试运行于目标操作系统之上的应用程序,而不宜用来调试目标操作系统的内核代码及启动代码。而且,它必须改变目标操作系统,因此,也就多了一个不用于正式发布的调试版。
(2)硬件调试。
相对于软件调试而言,使用硬件调试器可以获得更强大的调试功能和更优秀的调试性能。硬件调试器的基
本原理是通过仿真硬件的执行过程,让开发者在调试时可以随时了解到系统的当前执行情况。目前嵌入式系统开发中最常用到的硬件调试器是:
ROMMonitor
ROMEmulator
In-CircuitEmulator
In-CircuitDebugger。
? 采用 ROMMonitor 方式
进行交叉调试需要在宿主机上运行调试器,在宿主机上运行ROM 监视器(ROMMonitor)和被调试程序,宿主机通过调试器与目标机上的 ROM 监视器遵循远程调试协议建立通信连接。ROM 监视器可以是一段运行在目标机 ROM 上的可执行程序,也可以是一个专门的硬件调试设备,它负责监控目标机上被调试程序的运行情况,能够与宿主机端的调试器一同完成对应用程序的调试。
在使用这种调试方式时,被调试程序首先通过 ROM 监视器下载到目标机,然后在 ROM 监视器的监控下完成调试。
优点:ROM 监视器功能强大,能够完成设置断点、 单步执行、查看寄存器、修改内存空间等各项调试功能。
确定:同软件调试一样,使用 ROM 监视器目标机和 宿主机必须建立通信连接。
? 采用 ROMEmulator 方式
进行交叉调试时需 要使用ROM仿真器,并且它通常被插入到目标机上的 ROM 插槽中,专门用于仿真目标机上的 ROM 芯片。
在使用这种调试方式时,被调试程序首先下载到 ROM 仿 真器中,因此等效于下载到
目标机的 ROM 芯片上,然后在 ROM 仿 真 器 中 完成对目标程序的调试。
优点:避免了每次修改程序后都必须重新烧写到目标机的 ROM 中。
缺点:ROM 仿真器本身比较昂贵,功能相对来讲又比较 单一,只适
应于某些特定场合。
? 采用 In-CircuitEmulator(ICE)方式
进行交叉调试时需要使用在线仿真器,它是目前最为有效的
文档评论(0)