Nybörjare - PIC/AVR - Lite frågor..
Vad har du för spänningskälla? Har du avkopplingskondingar?
Vad händer om du byter från PB0 till t ex PB3 eller PB4?
Jag kollade lite snabbt i databladet och det verkar inte som att Tiny15 har internt pull-up på Reset. Så du måste se till att Reset ligger hög när du vill köra programmet. Jag föreslår att du byter till PB3 eller PB4 och kör avrdude med "-E noreset". Fungerar det nu?
Mega88 är inte dyr. Den är 5 kr dyrare än Tiny15, dvs betydligt mer prisvärd.
Vad händer om du byter från PB0 till t ex PB3 eller PB4?
Jag kollade lite snabbt i databladet och det verkar inte som att Tiny15 har internt pull-up på Reset. Så du måste se till att Reset ligger hög när du vill köra programmet. Jag föreslår att du byter till PB3 eller PB4 och kör avrdude med "-E noreset". Fungerar det nu?
Mega88 är inte dyr. Den är 5 kr dyrare än Tiny15, dvs betydligt mer prisvärd.
Huh? Såhär har jag kopplat:sodjan skrev:> Jag råkade nudda en av programmerings-trådbyglarna (som var kopplad till PB2) med 5v-sladden,..
Då kopplar alltså om i matningen, med *SPÄNNINGEN PÅ* !!??
Inte speciellt smart. Stäng alltid av allting *innan* du gör omkopplingar...

Det jag gjorde var att jag kopplade loss den röda sladden från spänningsregulatorn (+5V), och den råkade då nudda koppartrådsbygeln som är kopplad till PB2.
Hur tycker du jag borde ha gjort? Dragit ur batterieleminatorn som strömförsörjer allt? Den har ju kondensatorer som lagrar ström, så då måste jag ju kortsluta den först för att ladda ur den.. Jag ser inget fel i att bara dra ur 5v-sladden, det var bara jag som var lite klantig och råkade nudda dendär koppartrådsbygeln.
Men det var ju bra i detta fallet, jag upptäckte ju att det funkade på nåt skumt sätt..
Jamen sedär jacykze skrev:Jag kollade lite snabbt i databladet och det verkar inte som att Tiny15 har internt pull-up på Reset. Så du måste se till att Reset ligger hög när du vill köra programmet.

Men hur gör jag om jag vill använda PB5-pinnen som in/utgång? RESET ligger ju på PB5...

(Ja, jag har testat att koppla matningsspännigen till bara PB5, då hände inget, den startade bara när jag kopplade spänningen till PB2, 3 eller 4. Men när jag kopplar matningsspännigen till Vcc och 5v till RESET (PB5) också, då funkar det alltså.)
Ok, då satsar jag nog på en sån nästa gång.cykze skrev:Mega88 är inte dyr. Den är 5 kr dyrare än Tiny15, dvs betydligt mer prisvärd.
Inaktiverar du Reset-pinnen, så att du kan använda PB5 till annat, måste du köra med parallellprogrammering i fortsättningen för att kunna programmera AVR:en. Så strunta i att använda PB5 som io-pinne.
Kollar man på bilden så har du inga kondensatorer. Det ska man alltid ha. Sätt en 100 nF mellan Vcc och Gnd så nära AVR:en som möjligt. Kolla även databladet för spänningsregulatorn.
Kollar man på bilden så har du inga kondensatorer. Det ska man alltid ha. Sätt en 100 nF mellan Vcc och Gnd så nära AVR:en som möjligt. Kolla även databladet för spänningsregulatorn.
Avkopplingskondensatorerna har till uppgift att förse förbrukaren med hög ström i korta pulser. Även om tex strömförbrukningen är 100mA så kan en krets lätt dra 10ggr mer då tranistorerna inne i kretsen växlar läge. Om det inte finns en lågimpediv strömkälla i närheten av kretsen kommer induktans i ledningarna fram till kretsen göra att man får transienter på spänningsmatningen. Dessa transienter kan göra att kretsen slutar fungera som tänkt. Utan avkopplingar får man dessutom stora EMC problem. Man inser lätt att kondensatorns ESR (inre resistans) ska vara så låg som möjligt för de frekvenser som finns på matningen.
EDIT: stavning
EDIT: stavning
> Hur tycker du jag borde ha gjort?
> Dragit ur batterieleminatorn som strömförsörjer allt?
Ja, om du inte har något bättre metod att bryta matningen.
(Strömbrytare ?)
> det var bara jag som var lite klantig...
Precis !
Det är exakt det du skyddar kretsen mot genom att bryta matningen först,
helt vanlig klantighet...
> Men det var ju bra i detta fallet, jag upptäckte ju att det funkade på nåt skumt sätt..
Det var varken "bra" eller "funkade". Det var bara som det såg ut, och du
feltolkade det du såg (och du borde inte ha hamnat i det läget alls om du
hade studerat databladet lite bättre, bl.a kapitlet om RESET funktionen).
Kondensatorer mellan matningsspänningen och jord har två grundfunktioner.
kan variera lite från fall till fall.
> Dragit ur batterieleminatorn som strömförsörjer allt?
Ja, om du inte har något bättre metod att bryta matningen.
(Strömbrytare ?)
> det var bara jag som var lite klantig...
Precis !
Det är exakt det du skyddar kretsen mot genom att bryta matningen först,
helt vanlig klantighet...

> Men det var ju bra i detta fallet, jag upptäckte ju att det funkade på nåt skumt sätt..
Det var varken "bra" eller "funkade". Det var bara som det såg ut, och du
feltolkade det du såg (och du borde inte ha hamnat i det läget alls om du
hade studerat databladet lite bättre, bl.a kapitlet om RESET funktionen).
Kondensatorer mellan matningsspänningen och jord har två grundfunktioner.
- Utjämning (glättning) av spänningen efter likriktning. Normalt en
elektrolyt på ca 10-1000 uF beroende på vilken strömförbrukning man
har i kretsen. Elektrolyten förser alltså kopplingen med spänning under
tiden som den likriktade spänningen är nära noll. Beroende på vilken
matning man har, kan det sitta i själva spänningsagregatet, eller lokalt
i kopplingen. En elektrolyt är lite "trög" och är inte avsedd att avkoppla
högfrekventa störningar. - Avkoppling av högfrekventa störningar, främst genererade av kretsen
självt. T.ex RS232 omvandlare av typen MAX232 genererar *mycket* störningar
som måste avkopplas med en konding (1uF enligt databladet) ansluten
nära MAX232's pinnar för matningsspänning. Även av AVR/PIC som t.ex
PWM-driver lysdioder, kommer att generera mycket transienter på
matningsspänningen som behöver avkopplas/utjämnas. "Standard" lösningen
är en 100nF polyester (vanligast) eller keramisk konding monterad så nära
aktuell kapsel/IC som möjligt.
kan variera lite från fall till fall.