Goedkope draadloze muizenval alarm met behulp van een ATtiny85 (6 / 8 stap)

Stap 6: De code

Download de bijgevoegde Ino bestand en gebruik uw favoriete methode om te compileren en uploaden naar uw ATtiny85. Mijn favoriete methode is het gebruik van een Arduino UNO als programmeur als beschreven hier. Stel uw ATtiny start op 1MHz voordat het uploaden indien mogelijk. Als je gewoon krijgen wilt op mee dan heb je mijn toestemming om naar de volgende stap, maar ik hoop dat u vindt de volgende bit informatief.

Deze code maakt gebruik van de ATtiny85 de slaapstand om de batterijstroom te besparen. Het gaat iets als dit:

Wakker >> Switch muizenval circuit op >> controleren of muizenval circuit geopend is >> als open, overschakelen op zender circuit voor 250 milliseconden >> Switch muizenval circuit uit >> gaan slapen gedurende 10 minuten... enz.

Wanneer in de slaapstand staat, gebruikt de microcontroller een uiterst kleine kleine hoeveelheid stroom. In theorie kan de weinig cr2032 batterij houden gaan voor maanden of zelfs jaren. Aangezien het slechts voor een fractie van een seconde wakker wordt elke tien minuten of zo, kracht vereiste laag gehouden. Als je echt gek op om het meeste uit uw batterij, begrijp ik ten minste één plaats waar je kan een weerstand misschien toevoegen aan het circuit en er zijn sommige tweaks die je zou kunnen aan de code doen - maar ziek ' verhuren u postuur op uiterlijk. Stuur een reactie als je!

Dus hoe weet de ATtiny wanneer het tijd is om wakker te worden? De code stelt iets genaamd een "Watchdog-Timer' (WDT) aan het activeren van een interrupt wanneer het time-out (of overloop). Standaard een overflow WDT zal leiden tot de ATtiny resetten indien het programma vast te om wat voor reden zitten komt, maar we willen niet dat dit gebeurt hier. Gelukkig, deze functionaliteit kan worden uitgeschakeld en de WDT kan worden omhoog enkel in brand gestoken een interrupt.

De bijgevoegde code is meestal een vrij standaard Arduino schets. Als je een Arduinohead zoals ik ben, kunnen delen van deze code grenzen aan sommige onbekend terrein. Het gaat om wat beetje wiskunde (Zie deze fantastische introductie) met betrekking tot het ATtinyx5 gegevensblad. Het programma manipuleert de Watchdog Timer besturingselement registreren van de ATtiny85 - Zie sectie 8.5.2 van het gegevensblad voor meer informatie. Dit register is een 8-bits Brok van geheugen in de chip die bepaalt wat de watchdog-timer doet. Elke bit van dit register heeft een bepaalde betekenis voor de microcontroller - ze uitschakelen bepaalde functionaliteiten afhankelijk van de bit een 1 of een 0. Deze bits worden afgehandeld in de code door een klein beetje van C bits math magie!

BV

WDTCR | = (1 << WDCE | 1 << WDE)

WDTCR verwijst naar de Watchdog Timer besturingselement registreren, laten we zeggen, omwille van dit voorbeeld is het in eerste instantie 00000001.

De | = is de compound bitsgewijze of exploitant in C - het is gewoon een verkorte manier ter aanduiding van een OR-bewerking op een groep van bits (8 bits in het geval van WDTCR).

<< is een bitsgewijze linker shift-operator. Een snelle blik op 8.5.2 gedeelte van het gegevensblad zal tonen dat de WDCE (Watchdog verandering inschakelen) stukje van het WDTCR-register de vijfde van rechts is. WDCE is gedefinieerd als 4, dus 1 << 4 zou een 1 waarde van rechts naar links (vanaf positie 0) verschuiven zodat 00010000. WDE wordt gedefinieerd als 3 waardoor 00001000. | de C-notatie voor bitsgewijze OR. Dus (1 << WDCE | 1 << WDE) is (00010000 | 00001000) waardoor 00011000.

Daarom 00000001 | = 00011000 00011001 zal geven. Oef!

De ISR(WDT_vect) functie is de Interrupt Service Routine die wordt aangeroepen telkens wanneer die de watchdog-timer zorgt ervoor dat een interrupt. De WDT_vect identificeert de watchdog-timer-interruptvector. De maximale time-out voor die de WDT kon bedraagt is ongeveer 8 seconden. Hierdoor verhoogt de ISR een teller en de microcontroller zal alleen het circuit muizenval controleren wanneer de teller raakt 75, die ongeveer 10 minuten zou zijn.

Gerelateerde Artikelen

$4 WiFi deur Alarm met behulp van een ESP8266 #IoT

$4 WiFi deur Alarm met behulp van een ESP8266 #IoT

In dit IoT-project zal ik u tonen hoe te maken van een WiFi-deur alarm die u alarmeert, waar u ook bent!Ik had zijn idee van het ontwerpen van een wifi toegelaten deur alarm, nadat een vriend het huis was ingebroken.Hier is een kort overzicht van hoe
Hoe het bouwen van een goedkope werkbank voor houtbewerking met behulp van een mal van Kreg HD, met VIDEO tutorial

Hoe het bouwen van een goedkope werkbank voor houtbewerking met behulp van een mal van Kreg HD, met VIDEO tutorial

Gratis plannen zijn ook hierna beschikbaar in Imperial en Metric.Stap 1: Zie volledige Video Tutorial Video hier.Warren uit één hout Tools toont hoe het bouwen van een goedkope en makkelijke eiland houtbewerking werkbank met hond gaatjes, gewrichten
Arduino - FLOOD ALARM - met behulp van een eenvoudige waterniveau Sensor

Arduino - FLOOD ALARM - met behulp van een eenvoudige waterniveau Sensor

Hallo mensen! Vandaag maakte ik een eenvoudige overstroming alarm met een waterniveau sensor. Ik verkoop niet deze sensoren op mijn website omdat ze niet duren erg lang wanneer meten van water zal ik bestellen goud bekleed degenen en test hen voor ee
ARDUINO Inbraak Alarm met behulp van infrarood zender-Detector paar

ARDUINO Inbraak Alarm met behulp van infrarood zender-Detector paar

In deze tutorial zal ik laten zien u, hoe maak je een eenvoudige goedkope Intrusion Detection(Burglar alarm) met behulp van een Arduino Uno-board. Dit project maakt gebruik van de infrarood zender-Detector paar om op te sporen van inbraak en een alar
Pak Alarm met behulp van arduino LDR + piëzo zoemer

Pak Alarm met behulp van arduino LDR + piëzo zoemer

Dit kleine project leert u, hoe maak je een eenvoudige Grab alarm met behulp van een LDR (light afhankelijke resistor). Wanneer u probeert te verplaatsen van je hand over de LDR, is er een luid alarm dat gaat op en het alarm wordt uitgeschakeld zodra
Maak een eenvoudige draadloze RF robot met behulp van Arduino!

Maak een eenvoudige draadloze RF robot met behulp van Arduino!

UPDATE: IK HEB JOYSTICK-CONTROLE TOEGEVOEGD AAN DEZE ROBOT. GELIEVE TE VERWIJZEN NAAR DE STAP 7, ALS U WILT BEPALEN UW ROBOT VIA JOYSTICK.HalloDit is mijn eerste instructable en in deze tutorial, I 'm gonna Toon u hoe te bouwen van een eenvoudige dra
Androino! Controle van een Arduino vanaf uw Android-apparaat met behulp van een goedkope bluetooth-module.

Androino! Controle van een Arduino vanaf uw Android-apparaat met behulp van een goedkope bluetooth-module.

Dit instructable toont je hoe om te lezen van sensor-waardes van een Arduino met uw Androïde apparaat met behulp van een seriële goedkoop bluetooth-apparaat dat u voor onder $10 op dealextreme of ebay bestellen kunt.In het volgende voorbeeld gebruikt
DIY Track zag met behulp van een goedkope cirkelzaag

DIY Track zag met behulp van een goedkope cirkelzaag

Als alles anders noodzaak maakt een noodzaak, en in dit geval ik nodig om te kunnen snijden lange rechte herhaalbare deelstukken op 18mm of dikker multiplex. Terwijl zoiets een Festo Track-zaag ontzagwekkend zou zijn heb ik niet de fondsen voor iets
Bouw uw eigen logica sonde op de goedkope met behulp van een 555 Timer!

Bouw uw eigen logica sonde op de goedkope met behulp van een 555 Timer!

Hallo! Door te klikken op dit instructable je een stap dichter bij het gebouw een goedkoop, gemakkelijk om te bouwen, en wat nog belangrijker is nuttig kleine gadget... een logica sonde! Een logica sonde is handig wanneer u werkt met verschillende ch
Bewerking van een PCB met behulp van een goedkope CNC Machine

Bewerking van een PCB met behulp van een goedkope CNC Machine

Inleiding:Voor deze tutorial zullen we een ontwerp dat we van EAGLE, gebruik PCB-GCode en Autoleveler software te laden in onze ZEN Toolworks Mach 3 CNC machine gemaakt. Wat we kunnen doen is het vervolgens creëren van printplaten met behulp van onze
Sunshine Alarm met behulp van LM555 en LM358

Sunshine Alarm met behulp van LM555 en LM358

Hallo vrienden,Dit is een eenvoudig ontwerp alarm voor uw winter breekt. Met dit alarm die u niet te tijd stellen hoeft, het detecteert het daglicht in de ochtend en piepergeluid genereert voor ca. 1 minuut. U moet niet tijd voor uw winters, stel de
Hack een oude iPod met behulp van een Android en een Arduino.

Hack een oude iPod met behulp van een Android en een Arduino.

Deze tutorial toont je hoe een Arduino gebruiken om te schakelen van dat oude stoffige muziekspeler in een Bluetooth gecontroleerde docking station.Zelfs als er al een gebarsten scherm of een lege batterij die kan nog steeds worden gebruikt.De volgen
Met behulp van een telefoon als een toestel voor een Handheld Radio

Met behulp van een telefoon als een toestel voor een Handheld Radio

dit instructable toont hoe het bouwen van een adaptter die het mogelijk maakt een telefoon als een toestel gebruikt voor een bidirectionele radio. Het voordeel is dat meer ergonomisch lust voor de gebruiker dan een headset mic regeling kan worden. He
Hand van de boor met behulp van een schroevendraaier

Hand van de boor met behulp van een schroevendraaier

hoe maak je een eenvoudige, goedkope hand boren met een schroevendraaier.  De redenen waarom dat iemand zou willen bouwen van een boor van de hand zijn:1. kan niet veroorloven een draadloze of vaste boor, maar moet nog boorgaten en dingen bouwen.2. b