Ticket #34294

Ver0xdeで、子機モード時にCH1,CH2入力の割り込みを受け付けなくなる。

Date d'ouverture: 2014-09-08 13:26 Dernière mise à jour: 2014-09-09 09:39

Rapporteur:
Propriétaire:
Type:
État:
Ouvert [Owner assigned]
Composant:
(Aucun)
Jalon:
(Aucun)
Priorité:
9 - le plus élevé
Sévérité:
9 - le plus élevé
Résolution:
Aucun
Fichier:
Aucun

Détails

Ver0xdeで、子機モード時にCH1,CH2入力の割り込みを受け付けなくなる。完全に動作が止まってしまう現象が発生している。

(詳細) ・ver0xcd以前では、この現象はない。 ・親機モードでは正常に動作している。

Ticket History (3/3 Histories)

2014-09-08 13:26 Updated by: blackzoro
  • New Ticket "Ver0xdeで、子機モード時にCH1,CH2入力の割り込みを受け付けなくなる。" created
2014-09-08 13:59 Updated by: blackzoro
Commentaire

この現象に陥った際の消費電流値は常時4.7mA程度を消費し続けていることを確認。

2014-09-09 09:39 Updated by: blackzoro
Commentaire

再度、CH1,CH2の入力を受け付けなくなる現象をリアルタイムデバッグ時で確認。ブレイクしてみたところ、

0000018A  LDD R24,Z+0		Load indirect with displacement 

このコードを永久ループしている状態であることが分かった。

00000154  SUBI R24,0x01		Subtract immediate 
--- C:\mywork\new_wireless_module\open\cc1101driver\branches\test002_AVRS6_20140819\test02\test02\Debug/../src/i2c.c 
		if(i > 100) return;
00000155  BREQ PC+0x04		Branch if equal 
	while( !(TWCR & _BV(TWINT)) )
00000156  LDD R25,Z+0		Load indirect with displacement 
00000157  TST R25		Test for Zero or Minus 
00000158  BRGE PC-0x0A		Branch if greater or equal, signed 
00000159  RET 		Subroutine return 
    TWDR = d; // ���M�f�[�^
0000015A  STS 0x00BB,R24		Store direct to data space 
    TWCR = _BV(TWINT) | _BV(TWEN);
0000015C  LDI R24,0x84		Load immediate 
0000015D  STS 0x00BC,R24		Store direct to data space 
    i2c_wait_int_clear();//while( !(TWCR & _BV(TWINT)) ) ; // �f�[�^�̑��o�����ҋ@
0000015F  RCALL PC-0x0015		Relative call subroutine 
    if((TWSR & TW_STATUS_MASK) != TW_MT_DATA_ACK) i2c_error();
00000160  LDS R24,0x00B9		Load direct from data space 
00000162  ANDI R24,0xF8		Logical AND with immediate 
00000163  CPI R24,0x28		Compare with immediate 
00000164  BREQ PC+0x02		Branch if equal 
--- No source file -------------------------------------------------------------
00000165  RJMP PC-0x002B		Relative jump 
00000166  RET 		Subroutine return 
00000167  PUSH R28		Push register on stack 
00000168  MOV R28,R24		Copy register 
00000169  LDI R24,0xA4		Load immediate 
0000016A  STS 0x00BC,R24		Store direct to data space 
0000016C  RCALL PC-0x0022		Relative call subroutine 
0000016D  LDS R25,0x00B9		Load direct from data space 
0000016F  ANDI R25,0xF8		Logical AND with immediate 
00000170  CPI R25,0x08		Compare with immediate 
00000171  BREQ PC+0x04		Branch if equal 
00000172  CPI R25,0x10		Compare with immediate 
00000173  BREQ PC+0x02		Branch if equal 
00000174  RCALL PC-0x003A		Relative call subroutine 
00000175  STS 0x00BB,R28		Store direct to data space 
00000177  LDI R24,0x84		Load immediate 
00000178  STS 0x00BC,R24		Store direct to data space 
0000017A  RCALL PC-0x0030		Relative call subroutine 
0000017B  LDS R24,0x00B9		Load direct from data space 
0000017D  ANDI R24,0xF8		Logical AND with immediate 
0000017E  CPI R24,0x18		Compare with immediate 
0000017F  BREQ PC+0x04		Branch if equal 
00000180  CPI R24,0x40		Compare with immediate 
00000181  BREQ PC+0x02		Branch if equal 
00000182  RCALL PC-0x0048		Relative call subroutine 
00000183  POP R28		Pop register from stack 
00000184  RET 		Subroutine return 
00000185  LDI R24,0x94		Load immediate 
00000186  STS 0x00BC,R24		Store direct to data space 
00000188  LDI R30,0xBC		Load immediate 
00000189  LDI R31,0x00		Load immediate 
0000018A  LDD R24,Z+0		Load indirect with displacement 
0000018B  SBRS R24,4		Skip if bit in register set 
--- No source file -------------------------------------------------------------
0000018C  RJMP PC-0x0002		Relative jump 
--- C:\mywork\new_wireless_module\open\cc1101driver\branches\test002_AVRS6_20140819\test02\test02\Debug/../src/i2c.c 
}
0000018D  RET 		Subroutine return 
{
0000018E  PUSH R28		Push register on stack 
0000018F  PUSH R29		Push register on stack 
00000190  MOV R29,R24		Copy register 
00000191  MOV R28,R22		Copy register 
    i2c_error_flag =  0;
00000192  STS 0x01D8,R1		Store direct to data space 
    i2c_start(RTC_R2223L | TW_WRITE);
00000194  LDI R24,0x64		Load immediate 
00000195  RCALL PC-0x002E		Relative call subroutine 
    i2c_write(


Attachment File List

No attachments

Modifier

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » Connexion