Sida 1 av 1

Reset på Atmel AVR och användning av skyddsdiod?

Postat: 30 maj 2008, 19:41:43
av MicaelKarlsson
På sidan 15 i AVR040: EMC Design Considerations står det att man bör (skall) använda en småsignal diod från GND till RESET.
Jag har tidigare inte gjort detta och det har fungerat men nu tänkte jag höra hur ni brukar göra?

Kanske bör tillägga att det gäller hobbyprojekt och inget annat.

Motivera gärna svaret.

Postat: 30 maj 2008, 20:24:12
av limpan4all
Det gäller bara vid parallellprogrammering, och vem använder det i en ISP lösning?

Postat: 30 maj 2008, 21:43:44
av Swech
Gäller inte alls parallell prog...det handlar om ESD

" If high ESD protection of Reset is not required, or is achieved by other components,
the diode may be omitted. The resistor and capacitor are still recommended for
optimum Reset behavior."

Flesta hobbyprylar brukar sakna både det ena och det andra..
så denna diod kan man säkerligen utelämna.
Däremot vid produkter som skall säljas... skall/bör man använda dioden
eller extern resetkrets.

Själv kör jag i princip 100% med extern resetkrets...

Swech

Postat: 30 maj 2008, 23:20:09
av björn
Brukar inte använda diod, dock använder jag för det mesta extern resetkrets, enklast möjliga lösning med bara ett motstånd kan ge jobbiga problem med plötsliga reseter som jag inte orkar felsöka efter (framförallt var det ett problem innan, den interna har blivit bättre men jag är "hellre säker än ledsen")

Postat: 31 maj 2008, 22:21:48
av jesse
Först tänkte jag att jag kunde strunta helt i yttre komponenter, jag gjorde resetpinnen till ingång och aktiverade pull-up motståndet. Men hm.. vet inte ens om porten är ansluten om pinnen är programmerad som reset :oops:

Har dock inte haft några problem med ofrivillig reset men självklart måste man ha ett motstånd till + om man inte vill riskera något.

Vilket värde bör man ha på kondingen till jord? Den får ju inte vara för stor, då skickar den ju en massa ström till programmeraren när den byter nivå?

Hur gör ni med andra oanvända ben - I/O?

Postat: 1 juni 2008, 10:54:21
av MicaelKarlsson
jesse om du syftar på kondensatorn från RST till jord står det så här i dokumentet jag länkade till i första inlägget:
To achieve the same protection on Reset as on other I/O pins, an external diode
should be connected from Reset to VCC. A normal small-signal diode will do. In
addition, a pull-up resistor (10K typical) and a small filter capacitor (4.7 nF) should be
connected as shown in Figure 4-7.
Jag brukar bara initiera de I/O jag skall använda och det har fungerat så här långt. Gäller bara hobbyprojekt så hur man gör professionellt får någon annan svara på!

Postat: 1 juni 2008, 11:31:51
av Icecap
Dioden har egentligen inget med ESD att göra, den är för att säkra en tydlig reset vid spänningsdip.

Grejen är att VDD kan sjunka snabbt men kondensatorn har en liten reserv. Om VDD sjunker mycket snabbt och återkommer snabbt också kommer det aldrig att utföras en reset, helt enkelt för att kondensatorn inte hinner urladdas nog.

Men har man dioden får man olika tidkonstanter för laddning och urladdning, laddar upp "långsamt" och laddar ur "snabbt" vilket ger bättre/stabilare funktion.

Alltså är ESD inte orsaken!

Postat: 1 juni 2008, 11:42:19
av Swech
Icecap.. jag säger som Magnus, Brasse och Eva.. "Fel fel fel"...
Just denna diod är beskriven i Appnote som
AVR040: EMC Design Considerations
Scope
This application note covers the most common EMC problems designers encounter
when using microcontrollers. It will briefly discuss the various phenomena.

During parallel programming, a 12V signal is connected to the Reset pin. There is
therefore no internal protection diode from Reset to VCC; there is only one from GND
to Reset. See Figure 4-6.
To achieve the same protection on Reset as on other I/O pins, an external diode
should be connected from Reset to VCC. A normal small-signal diode will do. In
addition, a pull-up resistor (10K typical) and a small filter capacitor (4.7 nF) should be
connected as shown in Figure 4-7.
Det är beskrivet i denna note att reset saknar ESD diod till VCC då
denna pinne kan anslutas till +12V vid parallell programmering,
Alla övriga IO har dioder både till GND och VCC..

Det scenario du beskriver bör fångas upp av Brown Out detektorn..

Hursomhelst.. Har själv aldrig satt dit dioden i fråga, har däreomt alltid
extern resetkrets..

Swech

Postat: 1 juni 2008, 12:23:41
av MicaelKarlsson
Hur konstruerar du den externa resetkretsen?

Postat: 1 juni 2008, 12:30:45
av Icecap
T.ex. vid att köpa en DS1813 eller MAX6314

Postat: 1 juni 2008, 12:50:50
av MicaelKarlsson
:humm: Den där skall jag testa (DS1813) vid tillfälle (=nästa Elfa beställning). Tack för tipsen Icecap!