1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
| voidid_command(void)
{
putp(1,0,IP);//Run-Test/Idle;使JTAG复位
putp(1,0,IP);//Run-Test/Idle
putp(1,0,IP);//Run-Test/Idle
putp(1,0,IP);//Run-Test/Idle
putp(1,1,IP);
putp(1,1,IP);//选择指令寄存器
putp(1,0,IP);//捕获指令寄存器
putp(1,0,IP);//移位指令寄存器
putp(0,0,IP);//SA1110JTAG口指令长度5位,IDCODE为01100
putp(1,0,IP);
putp(1,0,IP);
putp(0,0,IP);
putp(0,0,IP);
putp(0,1,IP);//退出指令寄存器
putp(1,1,IP);//更新指令寄存器,执行指令寄存器中的指令
putp(1,0,IP);//Run-Test/Idle
putp(1,0,IP);//Run-Test/Idle
putp(1,0,IP);//Run-Test/Idle
putp(1,1,IP);
putp(1,0,IP);
if(check_id(SA1110ID))
error_out("failedtoreaddeviceIDfortheSA-1110");
putp(1,1,IP);//退出数据寄存器
putp(1,1,IP);//更新数据寄存器
putp(1,0,IP);//Run-Test/Idle,使JTAG复位
putp(1,0,IP);//Run-Test/Idle
putp(1,0,IP);//Run-Test/Idle
}
|