Forum: Mikrocontroller und Digitale Elektronik Attiny10 TPI und Peripherie


von Pascal (Gast)


Lesenswert?

Seid gegrüsst liebe Forenmitglieder.

Ich möchte gerne eine kleine Schaltung mit dem Attiny10 realisieren und 
stehe da etwas auf der Leitung.

Die Pins PB0/PB1/PB3 werden ja für die Programmierung via. TPI genutzt. 
Wenn ich nun an PB0 einen Transistor ansteuern will, dann wird dieser ja 
während der Programmierung bereits geschaltet.

Oder wenn ich via Spannungsteiler VCC mit dem ADC abnehmen will, dann 
kommt da bei der Programmierung ja eine externe Spannung (vom AVRISP 
MK2) daher, welche durch den Spannungsteiler auf Masse belastet wird.

Ist der Attiny10 eher für eine Programmierung ausserhalb der Applikation 
gedacht, oder wie umgeht man solche unangenehmen Verhalten?

Hoffe ich habe mich einigermassen verständlich ausgedrückt.

Besten Dank bereits im Voraus für Hinweise.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Pascal schrieb:
> Ist der Attiny10 eher für eine Programmierung ausserhalb der Applikation
> gedacht, oder wie umgeht man solche unangenehmen Verhalten?

Du musst deine Schaltung darauf auslegen.  Sofern man nicht am
Ende auch noch RSTDISBL setzen will, kann man das beispielsweise
erreichen, indem man während /RESET alle "gefährlichen" Dinge von
den Pins abklemmt.

Das gleiche Problem hat man natürlich auch bei größeren Controllern,
wenn man die Programmierleitungen auch im normalen Betrieb benutzen
will, aber dort kann man das u. U. vermeiden, weil man genügend Pins
als Reserve hat.

von Pascal E. (nimmzwei)


Lesenswert?

Jörg Wunsch schrieb:
> Pascal schrieb:
>> Ist der Attiny10 eher für eine Programmierung ausserhalb der Applikation
>> gedacht, oder wie umgeht man solche unangenehmen Verhalten?
>
> Du musst deine Schaltung darauf auslegen.  Sofern man nicht am
> Ende auch noch RSTDISBL setzen will, kann man das beispielsweise
> erreichen, indem man während /RESET alle "gefährlichen" Dinge von
> den Pins abklemmt.
>
> Das gleiche Problem hat man natürlich auch bei größeren Controllern,
> wenn man die Programmierleitungen auch im normalen Betrieb benutzen
> will, aber dort kann man das u. U. vermeiden, weil man genügend Pins
> als Reserve hat.

Besten Dank für die rasche Antwort.

Dass heisst ein möglichst hochohmiger Spannungsteiler zum ADC.

Da ich den INT0 brauche, kann ich den Transistor nicht auf den vom 
AVRISP ungenutzten PB2 legen. Dann müsste ich nach deiner Aussage dies 
via nachträglich eingesetztem Jumper realisieren?

Was für Pegel kommen denn vom AVRISP MK2 daher? Wie ist es definiert ob 
man im HighVoltage-Level oder LowVoltage-Level Bereich Programmiert?

Grüsse Pascal

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Pascal E. schrieb:

> Dass heisst ein möglichst hochohmiger Spannungsteiler zum ADC.

Zum Beispiel.  An den Pins hängende (low current) LEDs sind typisch
auch kein Problem, sie blinken halt dann einfach beim Programmieren
vor sich hin.

> Dann müsste ich nach deiner Aussage dies
> via nachträglich eingesetztem Jumper realisieren?

Jumper sind natürlich auch eine Möglichkeit, wenn man keine Logik
an /RESET realisieren will.

> Was für Pegel kommen denn vom AVRISP MK2 daher?

Die Pegelwandler da drin benutzen die Spannung an VTref als
Referenz, um ihre eigenen Pegel zu erzeugen.  Sie werden also
jeweils zwischen wenig über 0 und knapp unter VTref aussteuern.

Wie das genau erfolgt, ist allerdings nicht dokumentiert.

von Pascal E. (nimmzwei)


Lesenswert?

> Jumper sind natürlich auch eine Möglichkeit, wenn man keine Logik
> an /RESET realisieren will.


Danke nochmals,

also wäre eine Möglichkeit noch ein CD4016 vor die Pins zu schalten, 
welcher die Peripherieleitung nur beim LowSTatus der /RESET Spannung 
freischaltet. Damit wären die anderen Bauteile ausgekoppelt.

Oder ich verwende doch den grossen Bruder aus der ATMega Serie.

Ich denke es lichtet langsam im dunkeln Wald.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Pascal E. schrieb:
> Oder ich verwende doch den grossen Bruder aus der ATMega Serie.

Naja, zwischen einem ATtiny10 und den ATmegas liegen ja noch eine
ganze Menge anderer ATtiny-Derivate. ;-)  ATtiny25 oder ATtiny44
sind auch ganz nett.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.