Sommario:

NODEMCU LUA ESP8266 con contatore di decadi CD4017: 4 passaggi (con immagini)
NODEMCU LUA ESP8266 con contatore di decadi CD4017: 4 passaggi (con immagini)

Video: NODEMCU LUA ESP8266 con contatore di decadi CD4017: 4 passaggi (con immagini)

Video: NODEMCU LUA ESP8266 con contatore di decadi CD4017: 4 passaggi (con immagini)
Video: ESP8266 Object Counting with Mobile Application 2024, Dicembre
Anonim
NODEMCU LUA ESP8266 con contatore di decadi CD4017
NODEMCU LUA ESP8266 con contatore di decadi CD4017

Il CD4017 è un contatore/divisore di decadi. Ciò significa che quando riceve un impulso lo conta e invia un'uscita al pin appropriato. È un IC abbastanza facile da usare e puoi costruire il circuito su una breadboard o acquistarne uno da Ebay per circa 99p dalla Cina. Ovviamente devi saldare tutto insieme.

Il pin 3 è l'uscita del timer 555 e il pin 14 è l'ingresso del CD4017.

Passaggio 1: circuiti

circuiti
circuiti
circuiti
circuiti

Se stavi costruendo il circuito su una breadboard, potresti tralasciare la parte del timer 555 e guidarla con ESP8266. Potresti pensare, perché acquistare il kit per guidarlo con un ESP8266. Una buona ragione è che se acquistassi tutti i componenti singolarmente, costerebbero molto più di 99p, un altro è che puoi armeggiare con esso.

Se guidi il circuito CD4017 con ESP8266 funzionerà a 3,3 volt. Rimuovere il timer 555 dalla presa DIL e prendere un ponticello da D1 (o dal pin che si sta utilizzando) e inserirlo nel pin 3 della presa DIL 555.

Tornando all'ESP8266, ci sono diversi modi per produrre un impulso su un pin

Se leggi la documentazione di NodeMCU, fornirà più esempi di gpio.serout.

Ognuna di queste 2 righe di codice produrrà un impulso sul pin D1 GPIO5.

Questa linea produce un impulso di 5 millisecondi ogni secondo 100 volte.

gpio.serout(1, gpio. HIGH, {5000, 995000}, 100, 1)

Questa linea produce un impulso di 5 millisecondi ogni mezzo secondo 100 volte, quindi stampa Fatto.

gpio.serout(1, gpio. LOW, {5000, 50000}, 100, function() print("Fatto") end)

Passaggio 2: codice

Codice
Codice

È possibile utilizzare il codice seguente per produrre un impulso sul pin D1 GPIO5. La modifica del valore (100) darà frequenze di polso diverse.

impulso = 0

pin = 1 gpio.mode(pin, gpio. OUTPUT) tmr.alarm(1, 100, 1, function() se impulso == 0 allora impulso = 1 gpio.write(pin, gpio. HIGH) altrimenti impulso = 0 gpio.write(pin, gpio. LOW) end end)

Passaggio 3: produrre un impulso

Produrre un impulso
Produrre un impulso
Produrre un impulso
Produrre un impulso

Un altro modo per produrre un impulso è con un circuito multivibratore. Di nuovo puoi ottenerli su Ebay per 99p o puoi costruirne uno su una breadboard. Questo è un circuito molto comune e ci sono molti esempi su Internet. Prendere un'uscita tra Q1 e D1 o Q2 e D2 sullo schema elettrico.

Ancora un altro modo per produrre un impulso è prendere un ponticello dal pin 3 della presa del timer 555 e toccare momentaneamente l'alimentazione da 3,3 volt.

Passaggio 4: conclusione

Ho cercato di mostrare come produrre un impulso per pilotare un altro circuito usando metodi diversi. Molti circuiti elettronici sono azionati da impulsi.

Ho usato il CD4017 come esempio. Lo stesso potrebbe essere applicato al CD4022 che ha 8 uscite invece di 10.

Per maggiori informazioni scarica la scheda tecnica per il CD4017 che è ampiamente disponibile.

Non sono un ESP8266 o un esperto di elettronica e quanto sopra sono alcune delle mie scoperte nel corso degli anni.

Consigliato: