Sida 1 av 1

Hur man bränner upp två kretsar samtidigt

Postat: 24 november 2009, 00:02:26
av jesse
Hur man bränner upp två kretsar samtidigt med hjälp av smarta tips från elektronikforumet:

Problemet:

5V utgång (logisk) ska skickas till 3.3V ingång.

Lösningen:
sätt ett 10k motstånd på ingången så kommer 5-volten att ledas via interna dioden till V+ på 3.3 volten där den stannar vid 3.3V, enkelt och bra och borde väl inte skapa några problem?

Verkligheten:
Flashminnet som var kopplat till 3.3 volt drar bara några mikroampere i sovande läge. +5 volt via 10k och en diod höjer spänningen på V+ till 4.4 volt då ingen last finns. Men 3.3V-spänningsregulatorn då? Drar inte den ner spänningen till 3.3 volt?

Nej! - I databladet för LP2980-3.3 står det:
If the input voltage is more tha Vbe below the output voltage, this diode will turn on and current will flow into the regulator output. In such cases , a parasitic SCR can latch which will allow a high current to flow into the Vin pin and out the ground pin, which can damage the part.
Just nu mäter jag +4.35 volt på V+ för mitt flashminne som tål max 3.6 volt. När jag frågar om flashminnets ID så svarar det 0xFFFFFF. :doh:

På mitt nästa kort kommer jag att ha en spänningsdelare på ingången 11k+22k vilket ger 3.33 volt på ingången - inget annat!

Re: Hur man bränner upp två kretsar samtidigt

Postat: 24 november 2009, 00:46:34
av blueint
Gillar du möjligtvis Atmel? :razz:

Annars kanske det fungerar att sätta en resistor i serie till ingången samt en zenerdiod från ingången till jord ..? ,vill man vara riktigt petig kan man sätta en åt andra hållet också.
Känner igen omvandlingssituationen från FPGA.

Re: Hur man bränner upp två kretsar samtidigt

Postat: 24 november 2009, 06:47:42
av Swech
10k+22k kommer att funka bra..
Swech

Re: Hur man bränner upp två kretsar samtidigt

Postat: 24 november 2009, 09:09:42
av Icecap
Och som det står i ett större antal tidigare trådar: använd aldrig de interna skyddsdioder i ett design!

Re: Hur man bränner upp två kretsar samtidigt

Postat: 24 november 2009, 11:39:25
av jesse
Swech skrev:10k+22k kommer att funka bra..
jo, men nu råkar jag ha tusentals 11k hemma....

Re: Hur man bränner upp två kretsar samtidigt

Postat: 24 november 2009, 11:50:24
av PeterH
Ta ett 10k och två serikopplade 11k då :badgrin:

Re: Hur man bränner upp två kretsar samtidigt

Postat: 24 november 2009, 12:04:45
av jesse
Jo, du ska se när jag ska ha 1M :shock: mina kretskort är jättestora med långa rader den 11k.... rena turen att det inte var 1ohmsmotstånd jag hade, då hade jag fått köpa en egen pick-and place maskin :mrgreen:

njaee... jag tror nog jag tar ett 22k istället! Det är bökigt nog att löda!

fick nästan liv i flashminnet igen... men den svarar fel, så det är bara att felsöka igen... ID koden som ska vara 0xBF258E blev 0x1C1C1C :humm: bättre än 0xFFFFFF i alla fall... kanske.

EDIT: hm... flashminnet hade visst två olika koder för ID och jag körde givetvis den andra koden :oops:

Nu får jag nästan rätt kod ut, men inte riktigt:
0xBF008E

Enligt databladet:
byte1: BF = Manifaturer ID (SST)
byte2: 25 = Memory type (Serial Flash)
byte3: 8E = Memory Capacity (8 Mbit)

så jag undrar vad Memory type 00 betyder? Kan ju vara så att jag har fel datablad och faktiskt kör typ 00 och inte typ 25. Men det kan ju också betyda "minnet är grillat" med tanke på min behandling av det :vissla:

Men nu då jag fått igång kommunikationen med det så är det väl bara att testa att skriva och läsa lite... så får jag reda på hur grillat det är :P

EDIT2: Jodå, det kan både skriva och läsa! :tumupp:

Är det nån som vill ha drivrutiner i C så kan jag dela med mig av koden. Den är uppdelad i två delar:

1) en allmän SPI interface som är kopplat till hårdvaran. Den kan välja en SPI-enhet av flera genom att man numrerar dem och sen skickas adressen ut på valfria pinnar på PORTB.
2) ett flashminnes-drivrutin som använder sig av SPI interfacet för att kommunicera. Den kan läsa/skriva byte för byte eller en array av bytes till / från SRAM. Alla kommandon till flashminnet är ännu inte implementerade. Så småningom ska den vara kompatibel både med SST's och Atmel's Flashminnen.

Re: Hur man bränner upp två kretsar samtidigt

Postat: 24 november 2009, 14:27:48
av blueint
Lägg det på wikin.. :)

Re: Hur man bränner upp två kretsar samtidigt

Postat: 24 november 2009, 16:37:11
av jesse
jag kan ju göra det sen när jag testat rutinerna ett tag i skarpt läge... är lite för tidigt att lägga ut koden nu, tror jag... (man vet aldrig vad som döljer sig där :twisted: )

Re: Hur man bränner upp två kretsar samtidigt

Postat: 24 november 2009, 16:42:56
av jesse
Angående utsprungsproblemet i den här tråden:

från 5 volt till 3.3 volt logisk nivå:

jag kör nu 11k/22k spänningsdelare vilket ger 3.33 volt. Tyvärr drar det 0.15 mA per ingång i passivt läge (logisk etta), så bara på 6-7 ingångar är jag uppe i 1 mA vilket är slöseri tycker jag.

jag borde ju tagit 100k / 220 k istället !

Re: Hur man bränner upp två kretsar samtidigt

Postat: 24 november 2009, 16:47:18
av blueint
jesse, Folk här får väl ses som varelser som kan tänka själva och korrekturläsa kod. Och du kan ju alltid ändra koden på wikin senare.