Mit Pin 1 am Attiny13/25/45/85 ohne messing mit fuse Bits


Gelegentlich ich habe mit einem Attiny13, 25, 45 und 85 in einem Projekt und hatte gerade das eine kurze Pin. Diese Chips sollen 6 i/o-Pins haben aber pin Nummer eins (PB5/ADC0) dient gleichzeitig als RESET-Pin und um ihn als einen I/O Pin verwenden, muss man die richtigen Sicherungen im Chip gesetzt. Das ist nicht so schwierig, aber das Problem ist, dass sobald die Sicherung festgelegt ist, der Chip kann nicht durch SPI umprogrammiert werden, sondern braucht eine hohe Spannung-Programmierer, der muss zuerst die Sicherung Bit wieder zurückgesetzt.

Sicher könnte upgrade zu einem Attiny2313, aber oft, die heißt, du musst einen neuen Kern, oder macht ein neues Programmierens-Board installieren, aber das ist auch ein Schmerz.

Also, habe ich mich gefragt, wenn das Zurücksetzen Pin als eine I/O Pin ohne Unordnung mit die Fuse Bits verwendet werden könnte, denn immerhin gibt es noch einiges an Spannung, mit zu spielen, bevor Sie die Reset-Stufe erreicht

Obwohl es mir ein bisschen unklar war, was die erforderlichen Low Voltage ist, dass der Reset-Pin für einen Reset, scheint es, dass es niedriger als was in der Regel als "LOW" interpretiert wird.

Das öffnet möglicherweise Möglichkeiten dazwischen nutzen + Vcc und Vreset für Eingabe-Analog als auch Digital - ohne dass den Chip zurückgesetzt

Zuerst getestet habe ich die analoge Eingabefunktion, wie eine größere Reichweite als die digitale Eingabe Funcion hat (wie ich erwartet, dass den Unterschied zwischen Ebbe und RESET sehr klein sein). Ich habe einen Attiny13, bis eine LED und Widerstand an PB0 angeschlossen und den mittleren Kontakt der ein 25 k Variablen Widerstand an Pin 1 und die äußeren Kontakte zu Vcc und 0V bzw. angeschlossen.

Dann lud ich den Attiny13 mit dem folgenden Programm:

 // Using the Reset pin as ADC0 const int Led = 0; int x=0; void setup() { pinMode(Led, OUTPUT); } void loop() { digitalWrite(Led,HIGH); x=analogRead(0); delay(x); digitalWrite(Led,LOW); delay(x); } 

Wenn die Variablen Widerstand gedreht wird, bis hin bis zu den + Vcc Schiene, blinkt die LED in einem gleichmäßigen Rhythmus. Wenn ich die Variable Widerstand abgelehnt hat, die Blinkfrequenz ging auf, d. h. eine schnellere blinkende LED... wie erwartet. Das ging bis die LED blinkt (als die Resetfunktion gekickt) plötzlich gestoppt. ERGO, gibt es eine Reihe, welche Pin 1 für Eingabe, unter Beibehaltung der RESET-Funktion verwendet werden kann.

Es stellt sich heraus, dass der Reset bei 9 K Ohm (von 25) war. Dies entspricht 5 *(9/25) = 45/25=9/5=2.2 Volt.

Das ist in der Regel nicht viel anders aus, was einen niedrigen gilt und es ist etwas höher als das was ich verstanden habe Vreset sein.

Als natürlich können Sie eine Schaltung, die immer am Rande des zurücksetzen, wir müssen in irgendeiner Form des Schutzes zu bauen haben: etwas, das die Spannung am Pin 1 von knallharten 2,2 Volt oder weniger hält.

Betrachten wir die zweite Schaltung. Nehmen wir an, dass wir den niedrigsten Widerstand des LDR wir unter die Lichtverhältnisse messen es verwenden, 1 k. Dann wissen wir, dass der Strom durch, dass 1 k 2.2 minimal sein muss mA über die Reset-Spannung bleiben. Folglich der Gesamtwiderstand der LDR + Widerstand muss 5/2.2=2.27k sein, damit des Widerstands muss minimal 1.27 k. Die nächste E12-Werte sind 1,2 k und 1.5 k und 1,2 k zu schützen, sollten wir wählen. (1.2 k-2,27 v /1.5 > k -> 2-Volt)

Natürlich eine können die Schaltung mit dem Widerstand und LDR vertauscht, aber dann ist es viel schwieriger zu berechnen, dass ein sicherer Widerstand wie in Dunkelheit den Wert der LDR gehen kann bis zu mehreren Mega Ohm, ein Widerstand, der in dieser Größenordnung ist gefordert.

Sollten Sie einen Trimmer auf PB5 verwenden, dann Sie einseitig mit Vcc, Variable Pin Tp PB5 und die andere Seite zu Boden über einen Widerstand verbinden müssen, so dass der mittlere Kontakt 2,2 Volt nie getroffen wird.
Sie können den Wert dieses Widerstands aus der Wert der Variablen Widerstand mit der Formel berechnen.

R = 0,58 P
In welche r ist der Wert des Widerstandes und P den Wert des Potentiometers. Sie müssen also mit einem 10 k-Potentiometer einen 5,8 k Widerstand verwenden. Das schränkt den Lesebereich auf den analogen Eingang, aber zumindest können Sie es als einen analogen Eingang.

Nur ein Wort "Achtung" die Widerstände, die ich gefunden mit einem anständigen Multimeter, aber es gemessen wurden ist nicht erstklassig. In "Ihrem" Fall benötigen Sie einen Widerstand, der hat einen etwas anderen Wert und natürlich hängt es auch auf den Variablen Widerstand oder andere Eingangsquelle, die Sie verwenden.

Angesichts die Tatsache, dass die Reset-Ebene auf 2,2 Volt, habe ich keine Lust, zu versuchen, ob es, mit DigitalRead funktionieren würde

In Verbindung stehende Artikel

Bauen Sie ein Tricopter mit Rotor Bits

Bauen Sie ein Tricopter mit Rotor Bits

Diese Instructable lernen Sie wie man ein Tricopter mit Rotor Bits zu bauen. Diese Instructable enthält auch theoretischen Diskussionen, Tipps, Tricks und andere Informationen, die ich hoffentlich erhalten Sie auch auf Ihrem Weg zu einem Tricopter Ex
40 x RGB-LED-Controller mit 8-Bit-PWM und wählbaren Muster

40 x RGB-LED-Controller mit 8-Bit-PWM und wählbaren Muster

UPDATE: Dieser Controller wurde ersetzt mit in beträchtlichem Ausmaß überlegen 48 Kanal Mono / 16 Kanal RGB LED Controller mit USB-Anschluss und ColorMotion Kompatibilität. Besuchen Sie http://www.chromationsystems.com/48channled.html für Information
Esp8266-Code-Generator mit 128 Bit-Verschlüsselung - keine Codierung Requried

Esp8266-Code-Generator mit 128 Bit-Verschlüsselung - keine Codierung Requried

Code-Generator für ESP8266 Module mit PfodDesigner, PfodApp und Arduino mit 128 Bit-VerschlüsselungErstellen Sie benutzerdefinierte Menüs für Ihre Andriod. KEIN Android oder Arduino Programmierung erforderlich.Hinweis: Diese instructable Bedürfnisse
So wechseln Sie Fuse Bits des AVR Atmega328p - 8-Bit Mikrocontroller mit Arduino

So wechseln Sie Fuse Bits des AVR Atmega328p - 8-Bit Mikrocontroller mit Arduino

In diesem instructable erfahren Sie wie die Fuse Bits der Atmega328p Microcontroller zu ändern. Arduino Mega verwende ich als Programmierer-Programm Atmega328P-PU auf Steckbrett. Es kommt mit einem Standardwert 1MHz interner Oszillatorfrequenz kalibr
Voting-System mit 4-Bit parallel Adder

Voting-System mit 4-Bit parallel Adder

Hallo! FreundeWillkommen Sie bei mein ein anderes Wahlsystem mit 4-Bit parallel Addierer Projekt. Es ist ein Thema von Digital und Logik-Design by Morris Mano (fünfte Auflage) mit Hilfe dieses Projektes werden Sie wissen, wie die voting-System in der
Zäh White Chocolate Macadamia Nut Cookies mit Toffee-Bits

Zäh White Chocolate Macadamia Nut Cookies mit Toffee-Bits

hier ist eine schnelle und einfache Rezept für weiße Schokolade Macadamia-Nuss-Kekse mit Toffee-Bits. Diese Cookies sind knusprig an der Außenseite, innen zäh und voller Köstlichkeiten! Das tolle an dieser Charge ist, dass es viele Links gibt über Te
Wie erstelle ich eine coole Cyberpunk-Top mit Tastatur Bits

Wie erstelle ich eine coole Cyberpunk-Top mit Tastatur Bits

da fand ich ein paar Tastaturen in einem Müllcontainer, letztes Jahr ich um Dilettantismus wurden habe, mit, was Sie können die Teile (wie mein älteres Projekt und einige andere coole Tastatur Projekte Instructables Umlauf) bin ich nicht * wirklich *
Interfacing PS2-Controller mit AVR-Bit Bang

Interfacing PS2-Controller mit AVR-Bit Bang

Hey Freunde in diesem instructable ich werde Ihnen zeigen wie man Schnittstelle Sony PS2-Controller mit AVR-Mikrocontroller. Dies wird praktisch Code Sie in Zukunft verwendet werden, um Roboter zu steuern. Analogen Wert erhalten Sie vom Joystick die
Routine in Assembler mit 8-Bit PIC unterbrechen

Routine in Assembler mit 8-Bit PIC unterbrechen

Hallo Leser. Dies ist eine grundlegende und wichtige Anweisung für Mikrocontroller low-Level-Programmierung je gemacht habe. Sprechen über die externen Interrupts Routine in Assembler für PIC. Ich werde heute eine Blaupause für die Entwicklung einer
Wie man mess around mit 8-Bit Spiel Screershots

Wie man mess around mit 8-Bit Spiel Screershots

zunächst brauchen Sie die Pinsel-Anwendung (es heißt "Paint" haben Sie eine p.c.)p.s. sparen mein Computer ist nicht die Image-Tags, das ist, warum gibt es keineSchritt 1: suchen Sie ein gutes Bild Mario Bilder sind gut, mit zu beginnen, weil si
Ihre Pralinen mit Arduino IDE und ATtiny13 Pimp

Ihre Pralinen mit Arduino IDE und ATtiny13 Pimp

Die Idee zu diesem Projekt kam mir auf dem Weg in den Papierkorb. Ich war mit eine Box, die gerade geleert wurde original Ferrero Rocher süße Inhalt wegwerfen von meiner lieben Frau beauftragt. Dies war kurz nach dem Valentinstag. Also, ich habe alle
Mini 2-Rad-Roboter mit IR Sensor Gewicht 14gr und ATTiny13 Soic

Mini 2-Rad-Roboter mit IR Sensor Gewicht 14gr und ATTiny13 Soic

Hallo aus Frankreich!Mein Name ist MicSorry für mein Englisch (:Mein Ziel einen sehr kleinen BotEin wenig leichter für Roboter bauen können wir haben Geduld und eine gute MagnifyingglassesSeinen Namen: Roule_RobotSeine Nikename: RRLeergewicht: 14grAb
Kleine Farb-Mixer - Konstantstrom-3W RGB LED mit Batterie-Indikator und polymorphen Diffusor

Kleine Farb-Mixer - Konstantstrom-3W RGB LED mit Batterie-Indikator und polymorphen Diffusor

Eine RGB LED Steuerung ist eine einfache und häufig Mikrocontroller Projekt, oft das nächste Projekt fertig nach blinken und verblassen eine LED.Um dies noch interessanter, baute ich es mit einem ATtiny13, eines der kleinsten und einfachsten AVRs, di
Wie erstelle ich kleine Roboter mit nRover Board

Wie erstelle ich kleine Roboter mit nRover Board

Die nRover ist eine kleine Platine entworfen, um kleine Roboter wie UGV (unbemannte Bodenfahrzeuge), Linie Anhänger oder home-Automation zu bauen, von Wifi, Bluetooth oder Radio Control gesteuert werden. Das Hauptziel ist die Entwicklung einer kleine