JTAG (二) 协议

http://www.360doc.com/content/18/0322/16/496343_739325658.shtml

https://www.eefocus.com/ilove314/blog/11-09/231577_6834b.html

https://blog.csdn.net/beiguodexueCSDN/article/details/81331607

https://www.cnblogs.com/TaigaCon/archive/2012/12/20/2826941.html

https://blog.csdn.net/worf1234/article/details/7312184

http://blog.chinaunix.net/uid-26913704-id-3215246.html?_t=t

JTAG (二) 协议_第1张图片

上图主要的四种操作是一系列的状态转换过程,其功能详细说明如下

复位TAP控制器操作:

从任意状态切换至Test Logic Reset状态的过程
	上电为 Test Logic Reset状态 。
	在Test Logic Reset状态下,测试部分的逻辑电路全部被禁用,以保证芯片核心逻辑电路的正常工作。
Run Test/Idle:处于Run Test/Idle的操作过程
	Run Test/Idle状态下的动作取决于当前指令寄存器中的指令。有些指令会在该状态下执行一定的操作,而有些指令在该状态下不需要执行任何操作。

SCAN-DR:Select DR-Scan->Capture DR->Shift-DR->Exit 1-DR->Update-DR的过程,用于将数据从扫描链中移入移出;
	上电为Test-Logic Reset状态,然后依次进入:Run-Test/Idle ---> Select-DR-Scan ---> Select-IR-Scan ---> Capture-IR ---> Shift-IR ---> Exit1-IR ---> Update-IR,最后回到Run-Test/Idle状态

SCAN-IR:Select IR-Scan->Capture IR->Shift-IR->Exit 1-IR->Update-IR的过程,用于发送指令到TAP控制器;
	当前可以访问的数据寄存器由指令寄存器中的当前指令决定。要访问由刚才的指令选定的数据寄存器,需要以Run-Test/Idle为起点,依次进入 Select-DR-Scan ---> Capture-DR ---> Shift-DR ---> Exit1-DR ---> Update-DR,最后回到Run-Test/Idle状态。
  在实际调试时,
  	最开始先进行复位操作(RESET),
  	而后通过SCAN-IR要求TAP控制器完成相应的命令,
  	最后通过SCAN-DR来发送指令运行所需的数据或读取指令执行产生的数据。
  	
  通过这样发送一系列特定的命令和数据,就可以通过JTAG接口、TAP控制器来控制MCU的程序执行、读取MCU的寄存器、存储器等资源,实现我们要求的调试功能。

你可能感兴趣的:(驱动)