comparison py_avrjtag/jtagdev.py @ 12:68ecd42850d3

Start shifting when TAP transiting from CAP to SHIFT states. - It assumes last bit is shifted when transiting from SHIFT states to EXIT1.
author Thinker K.F. Li <thinker@branda.to>
date Tue, 24 Feb 2009 18:53:16 +0800
parents 520f45b72ba7
children 1ea479d26fce
comparison
equal deleted inserted replaced
11:520f45b72ba7 12:68ecd42850d3
83 def go_shift_IR(self): 83 def go_shift_IR(self):
84 if self.state == self.ST_SHIFT_IR: 84 if self.state == self.ST_SHIFT_IR:
85 return 85 return
86 86
87 if self.state == self.ST_IDLE: 87 if self.state == self.ST_IDLE:
88 ptn, ptn_nbits = tms_ptns.TMS_SHIFT_IR 88 ptn, ptn_nbits = tms_ptns.TMS_CAP_IR
89 self._send_tms(ptn, ptn_nbits) 89 self._send_tms(ptn, ptn_nbits)
90 elif self.state == self.ST_EXIT1_DR: 90 elif self.state == self.ST_SHIFT__DR:
91 ptn, ptn_nbits = tms_ptns.TMS_EXIT1_DR_2_SHIFT_IR 91 ptn, ptn_nbits = tms_ptns.TMS_SHIFT_DR_2_CAP_IR
92 self._send_tms(ptn, ptn_nbits) 92 self._send_tms(ptn, ptn_nbits)
93 else: 93 else:
94 raise RuntimeError, 'Transite to shift IR state from invalid state' 94 raise RuntimeError, 'Transite to shift IR state from invalid state'
95 self.state = self.ST_SHIFT_IR 95 self.state = self.ST_SHIFT_IR
96 pass 96 pass
98 def go_shift_DR(self): 98 def go_shift_DR(self):
99 if self.state == self.ST_SHIFT_DR: 99 if self.state == self.ST_SHIFT_DR:
100 return 100 return
101 101
102 if self.state == self.ST_IDLE: 102 if self.state == self.ST_IDLE:
103 ptn, ptn_nbits = tms_ptns.TMS_SHIFT_DR 103 ptn, ptn_nbits = tms_ptns.TMS_CAP_DR
104 self._send_tms(ptn, ptn_nbits) 104 self._send_tms(ptn, ptn_nbits)
105 elif self.state == self.ST_EXIT1_IR: 105 elif self.state == self.ST_SHIFT_IR:
106 ptn, ptn_nbits = tms_ptns.TMS_EXIT1_IR_2_SHIFT_DR 106 ptn, ptn_nbits = tms_ptns.TMS_SHIFT_IR_2_CAP_DR
107 self._send_tms(ptn, ptn_nbits) 107 self._send_tms(ptn, ptn_nbits)
108 else: 108 else:
109 raise RuntimeError, 'Transite to shift DR state from invalid state' 109 raise RuntimeError, 'Transite to shift DR state from invalid state'
110 pass 110 pass
111 self.state = self.ST_SHIFT_DR 111 self.state = self.ST_SHIFT_DR