本文共 1304 字,大约阅读时间需要 4 分钟。
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
上图主要的四种操作是一系列的状态转换过程,其功能详细说明如下
复位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的寄存器、存储器等资源,实现我们要求的调试功能。