Watchdog XMEGA Problem

  • 1
  • 2
  • 3
  • 5
  • 6
  • 7
  • Page 2 of 7
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1340
Registered: 02 / 2009
Subject:

Re: Watchdog XMEGA Problem

 · 
Posted: 27.02.2015 - 21:49  ·  #9
Quote by rh

Hallo Thorsten,

die einzelnen BODlevel und BODact bits ergeben immer zusamment die Werte
0..7 bzw. 0..3
Wie gsagt, mit dem XMega WatchDog habe ich keinerlei Erfahrung. Da muss das
XMega Manual ran.

rolf

OK,

dann würde der BodAct0 (Reserved), beim unterschreiten der Spannung keinen
Reset auslösen.

Code
00 Reserved 
01 Sampled 
10 Enabled 
11 Disabled 

Also müsste man dann eben BodAct2 schreiben um diesen auszulösen.

Und beim Bodlevel dann:
Code
BOD level 0 Bitmuster: 111 V:1.6 
BOD level 1 Bitmuster: 110 V:1.9 
BOD level 2 Bitmuster: 101 V:2.1 
BOD level 3 Bitmuster: 100 V:2.4 
BOD level 4 Bitmuster: 011 V:2.6 
BOD level 5 Bitmuster: 010 V:2.9 
BOD level 6 Bitmuster: 001 V:3.2 
BOD level 7 Bitmuster: 000 V:3.4 


Für 2,4V dann BodLevel4 schreiben, richtig? Steht das irgendwo?

Gruß
Thorsten
Harry
Moderator
Avatar
Gender:
Location: zwischen Augsburg und Ulm
Age: 59
Posts: 2078
Registered: 03 / 2003
Subject:

Re: Watchdog XMEGA Problem

 · 
Posted: 27.02.2015 - 23:14  ·  #10
Hi Thorsten,

ich hätte jetzt vermutet, daß es 2 BodAct (0 und 1) und 3 BodLevel (0..2) gibt und diese jeweils für ein Bit stehen.
Demnach müßte das so heißen:
Code

Fusebits5 = [BodAct1, BodLevel0, BodLevel2]   // 2.1V


BodLevel3..7 dürfte nicht kompilierbar sein ..... wenn meine Annahme stimmt ;)

Gruss
Harry
rh
Administrator
Avatar
Gender:
Location: Germany
Age: 24
Homepage: e-lab.de
Posts: 5558
Registered: 03 / 2002
Subject:

Re: Watchdog XMEGA Problem

 · 
Posted: 28.02.2015 - 21:07  ·  #11
und da gibt es eine aktuelle Info über den XMega Watchdog

rolf
You must be logged in or your permissions are to low to see this Attachment(s).
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1340
Registered: 02 / 2009
Subject:

Re: Watchdog XMEGA Problem

 · 
Posted: 02.03.2015 - 10:50  ·  #12
Quote by rh

und da gibt es eine aktuelle Info über den XMega Watchdog

rolf

Hallo rolf,

das kenne ich! Mir geht es mehr darum zu verstehen, wie das mit den DEFINES für die FuseBits zu verstehen ist.

Hat Harry recht?
Code

BodAct:
00 Reserved  
01 Sampled  
10 Enabled  
11 Disabled 


Dann ist BodAct0 für das erste Bit des BodActs und BodAct1 das 2.? Oder ist das jetzt doch anderst?

Gruß
Thorsten
rh
Administrator
Avatar
Gender:
Location: Germany
Age: 24
Homepage: e-lab.de
Posts: 5558
Registered: 03 / 2002
Subject:

Re: Watchdog XMEGA Problem

 · 
Posted: 02.03.2015 - 13:45  ·  #13
Hallo Thorsten,

die Liste ist korrekt.

rolf
Thomas.AC
Benutzer
Avatar
Gender: n/a
Age: 43
Posts: 308
Registered: 07 / 2013
Subject:

Re: Watchdog XMEGA Problem

 · 
Posted: 05.03.2015 - 12:18  ·  #14
ACHTUNG!


1.
Bodlevel-Tabelle immer aus dem Datenblatt nehmen. Elektrische Eigenschaften, Brownout detection characteristics.
XMEGA mit und ohne USB unterscheiden sich da gravierend.

2. Setzen von fusebit bedeutet logisch 0, fuses werden gelöscht !!!

Beispiel:

FuseBits5 = [BODLEVEL1, BODLEVEL2]; // BODLEVEL1 und BODLEVEL2 setzen,
// die sind dann logisch 0 nicht 1!

BODLEVEL2 BODLEVEL1 BODLEVEL0
0 0 1 => bodlevel 6, nicht 1!

Für XMEGAA4U (also USB Version) ergibt das einen bodlevel von 2,8 V

Hoffe, ich konnte Helfen.
Thomas.AC
Benutzer
Avatar
Gender: n/a
Age: 43
Posts: 308
Registered: 07 / 2013
Subject:

Re: Watchdog XMEGA Problem

 · 
Posted: 06.03.2015 - 16:53  ·  #15
@pvs-deck Hast du einen Xmega mit USB?

Die gepostete Tabelle scheint aus dem Xmega Manual zu sein.
Im Manual gibt es die Fußnote 1
Quote

The values are nominal values only. For accurate, actual numbers, consult the device datasheet.



Anbei eine Tabelle aus dem Datasheet der XMEGA A1U Typen:
Code

BOD Level 0 falling Vcc    1.62 V   typ.
BOD Level 1 falling Vcc    1.8 V
BOD Level 2 falling Vcc    2.0 V
BOD Level 3 falling Vcc    2.2 V
BOD Level 4 falling Vcc    2.4 V
BOD Level 5 falling Vcc    2.6 V
BOD Level 6 falling Vcc    2.8 V
BOD Level 7 falling Vcc    3.0 V


und die dazugehörigen Fuses, wie ich denke das es richtig ist

Code

bodlevel0 (111) 1.62V: FuseBits5 = [BodAct0]
bodlevel1 (110) 1.8V: FuseBits5 = [BodLevel0,BodAct0]
bodlevel2 (101) 2.0V: FuseBits5 = [BodLevel1, BodAct0]
bodlevel3 (100) 2.2V: FuseBits5 = [BodLevel0,BodLevel1, BodAct0]
bodlevel4 (011) 2.4V: FuseBits5 = [BodLevel2, BodAct0]
bodlevel5 (010) 2.6V: FuseBits5 = [BodLevel0,BodLevel2, BodAct0]
bodlevel6 (001) 2.8V: FuseBits5 = [BodLevel1,BodLevel2, BodAct0]
bodlevel7 (000) 3.0V: FuseBits5 = [BodLevel0,BodLevel1,BodLevel2, BodAct0]


Mit BodAct0 ist der Brownout enabled
Wenn sampling mode gewünscht, dann BodAct1 programmieren
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1340
Registered: 02 / 2009
Subject:

Re: Watchdog XMEGA Problem

 · 
Posted: 07.04.2015 - 21:56  ·  #16
Hallo Thomas.AC,

ok. Ich denke ich habe es verstanden.

Ich nutze den USB xmega256A3U.

Aber das mit dem Watchdog über Fuse bekomme ich nicht zum laufen:

Ich hatte das lt. Manual so verstanden, das die PER-Werte beim Startup direkt aus den FUSEBITS übernommen werden:

Code
  FuseBits1              = [ WDPER0, WDPER3 ];   // Watchdog   0:3 / 0110 512CLK 0.512s


Beißt sich das mit den Software-Defines? Oder muss ich den Watchdog doch noch aktivieren?

Code
Import SysTick,SerPortD0, SerPortC0, TWI_E, TWI_C, WatchDog, SysLEDblink, ADC_B, FAT16_32, USBsmart, SPI_C;
...
...
...
Define
...
...
  WatchDog = msec500; 
...
...
 


Nur wenn ich das rausmache, kann ich das Programm nicht übersetzen, ich dachte der Watchdog startet über die Fuses automatisch ???

Wo habe ich meinen Denkfehler?

Gruß
Thorsten
  • 1
  • 2
  • 3
  • 5
  • 6
  • 7
  • Page 2 of 7
Selected quotes for multi-quoting:   0

Registered users in this topic

Currently no registered users in this section

The statistic shows who was online during the last 5 minutes. Updated every 90 seconds.
MySQL Queries: 15 · Cache Hits: 14   140   154 · Page-Gen-Time: 0.024678s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI