Taula de continguts:
- Pas 1: tensió de subministrament
- Pas 2: temperatura interna
- Pas 3: comparador analògic (interrupció)
- Pas 4: comptador
- Pas 5: constants predefinides
- Pas 6: conservar la variable a la memòria RAM mitjançant el restabliment
- Pas 7: accediu al senyal de rellotge
- Pas 8: estructura interna del port de l'ATmega328P
- Pas 9: LED integrat (incorporat) com a fotodetector
Vídeo: Funcions Arduino menys conegudes: 9 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:14
Aquesta és més una llista de les funcions no tan esmentades de les plataformes Arduino que s’utilitzen habitualment (per exemple, Uno, Nano). Aquest llistat hauria d’actuar com a referència sempre que hàgiu de buscar aquestes funcions i fer-ne difusió.
Mireu el codi per veure exemples de totes aquestes funcions, ja que les he fet servir en diversos dels meus projectes aquí en format instructiu (per exemple, Arduino 1-wire Display (144 Chars)). Els passos següents expliquen una característica cadascun.
Pas 1: tensió de subministrament
L'Arduino pot mesurar la seva pròpia tensió d'alimentació d'una manera indirecta. Mesurant la referència interna amb la tensió d'alimentació com a referència límit superior podeu obtenir la relació entre la referència interna i la tensió d'alimentació (la tensió d'alimentació que actua com a límit superior per a la lectura analògica / ADC). Com ja sabeu el valor exacte de la referència de tensió interna, podeu calcular la tensió d'alimentació.
Per obtenir detalls exactes sobre com fer-ho, inclòs el codi d'exemple, vegeu:
- Voltímetre secret Arduino: mesura el voltatge de la bateria:
- Pot Arduino mesurar el seu propi Vin ?:
Pas 2: temperatura interna
Alguns Arduino estan equipats amb un sensor de temperatura intern i, per tant, poden mesurar la seva temperatura interna (semicoductor).
Per obtenir detalls exactes sobre com fer-ho, inclòs el codi d'exemple, vegeu:
Sensor de temperatura intern:
Pot Arduino mesurar el seu propi Vin ?:
Pas 3: comparador analògic (interrupció)
Arduino pot configurar un comparador analògic entre els pins A0 i A1. Per tant, un dóna el nivell de tensió i l’altre comprova si hi ha un creuament d’aquest voltatge. Es produeix una interrupció en funció de si la cruïlla és una vora ascendent o descendent (o ambdues coses). El programari pot detectar la interrupció i actuar en conseqüència.
Per obtenir detalls exactes sobre com fer-ho, inclòs el codi d'exemple, vegeu:
Interrupció del comparador analògic:
Pas 4: comptador
Per descomptat, els AVR tenen diversos comptadors inclosos. Normalment s’utilitzen per configurar el temporitzador de diverses freqüències i augmentar les interrupcions en cas de necessitat. Un altre ús molt passat a la moda és utilitzar-los com a comptadors sense cap màgia addicional, només heu de llegir el valor quan el necessiteu (enquesta). Un ús intressant d’aquest podria ser el de rebotar botons, p. Confereix, per exemple, aquest missatge: comptador d'exemple AVR T1
Pas 5: constants predefinides
Hi ha algunes variables predefinides que es poden utilitzar per afegir informació de versió i recopilació al vostre projecte.
Per obtenir detalls exactes sobre com fer-ho, inclòs el codi d'exemple, vegeu:
Serial.println (_ DATA_); // data de compilació
Serial.println (_ TIME_); // temps de compilació
String stringOne = String (ARDUINO, DEC);
Serial.println (stringOne); // versió ide arduino
Serial.println (_ VERSIÓ_); // versió gcc
Serial.println (_ FITXER_); // arxiu compilat
aquests fragments de codi enviaran aquestes dades a la consola sèrie.
Pas 6: conservar la variable a la memòria RAM mitjançant el restabliment
És ben sabut que Arduino Uno (ATmega328) té una EEPROM interna que us permet conservar els valors i els paràmetres durant l’apagat i restaurar-los al pròxim engegat. Un fet no tan conegut podria ser que en realitat és possible preservar el valor durant el restabliment fins i tot a la memòria RAM (tot i que els valors es perden durant el cicle d’alimentació) amb la sintaxi:
variable sense signar llarga que es conserva _atribut_ ((secció (".noinit")));
Això us permet, per exemple, comptar el nombre de RESETs i, mitjançant EEPROM, també el nombre d’engegades.
Per obtenir detalls exactes sobre com fer-ho, inclòs el codi d'exemple, vegeu:
- Conserva la variable a Ram mitjançant el restabliment:
- Biblioteca EEPROM:
Pas 7: accediu al senyal de rellotge
Els Arduinos i altres AVR (com ATtiny) tenen un rellotge intern que us permet executar-los sense utilitzar un oscil·lador de cristall extern. A més, al mateix temps també poden connectar aquest senyal a l'exterior posant-lo en un pin (per exemple, PB4). El més complicat aquí és que heu de canviar els bits de fusible dels xips per habilitar aquesta característica i canviar els bits de fusible sempre comporta el risc de tapar el xip.
Heu d’habilitar el fusible CKOUT i la manera més senzilla de fer-ho és seguint les instruccions sobre Com canviar els fusibles dels microcontroladors AVR Atmega328p - 8bit mitjançant Arduino.
Per obtenir detalls exactes sobre com fer-ho, inclòs el codi d'exemple, vegeu:
- Sintonització de l’oscil·lador intern ATtiny: https://becomingmaker.com/tuning-attiny-oscillator …
- Com canviar els fusibles de microcontrolador AVR Atmega328p - 8 bits mitjançant Arduino:
Pas 8: estructura interna del port de l'ATmega328P
Conèixer l’estructura interna dels ports de l’ATmega328P ens permet superar els límits d’ús estàndard. Conferiu la secció sobre el mesurador de capacitat per a un rang de 20 pF a 1000 nF per obtenir més detalls i un esquema del circuit intern.
L'exemple senzill és utilitzar botons amb ports digitals que no necessiten cap resistència a causa de l'ús de resistència de tracció interna, tal com es mostra a l'Exemple de sèrie d'entrada d'entrada o al botó Arduino que no té resistència.
Més avançat és l’ús d’aquest coneixement, tal com s’esmenta per mesurar capactors de fins a 20 pF i, a més, sense cap cablejat addicional. Per tal d’aconseguir aquest rendiment, l’exemple fa ús de la impedància interna / d’entrada, de la resistència de tracció interna i del condensador perdut. Compareu amb el tutorial Arduino CapacitanceMeter que no pot baixar d’uns quants nF.
Pas 9: LED integrat (incorporat) com a fotodetector
Moltes plaques Arduino tenen LED integrats o incorporats que es poden controlar des del codi, per exemple. les plaques Uno o Nano del pin 13. En afegir un cable únic d’aquest pin a un pin d’entrada analògica (per exemple, A0), també podem utilitzar aquest LED com a fotodetector. Això es pot utilitzar de diverses maneres, com ara; utilitzeu-lo per mesurar la il·luminació ambiental, utilitzeu el LED com a botó, utilitzeu el LED per a la comunicació bidireccional (PJON AnalogSampling), etc.
Recomanat:
Creix més enciam en menys espai o Creix enciam a l’espai, (més o menys) .: 10 passos
Cultivar més enciam en menys espai o … Cultivar enciam a l’espai, (més o menys): es tracta d’una presentació professional al Concurs de fabricants de Growing Beyond Earth, enviat a través d’Instrumentsables. No podia estar més emocionat de dissenyar per a la producció de cultius espacials i publicar el meu primer Instructable. Per començar, el concurs ens va demanar que
Arduino UNO (creació de menús i funcions): 4 passos
Arduino UNO (creació de menús i funcions): en aquest instructiu, explorarem com crear menús, llegir la temperatura des d’un sensor TC74A0 i mostrar els “valors” (en aquest cas números de mòbils) d’una manera infinita, però limitada a la memòria a bord de l'arduino. Anem a
Generador de funcions portàtils a Arduino: 7 passos (amb imatges)
Generador de funcions portàtils a Arduino: el generador de funcions és una eina molt útil, sobretot quan ens plantegem provar la resposta del nostre circuit a un senyal determinat. En aquest instructiu, descriuré la seqüència constructiva d’un petit generador de funcions portàtils fàcils d’utilitzar. Característiques de
Generador de tons Arduino sense biblioteca ni funcions de sèrie (amb interrupcions): 10 passos
Generador de tons Arduino sense biblioteca ni funcions de sèrie (amb interrupcions): això no és una cosa que normalment sigui útil per instruir, prefereixo la meva obra metàl·lica, però com que sóc estudiant d'enginyeria elèctrica i he de fer una classe sobre microcontroladors ( Disseny de sistemes incrustats), vaig pensar que faria un instructable en un dels meus p
Bolígraf IR minimalista: sense soldadura, menys d'un minut, menys d'un dòlar: 3 passos
Bolígraf IR minimalista: sense soldadura, menys d'un minut, menys d'un dòlar: el meu primer instructable, espero que sigui útil: si voleu provar el JC Lee (el JC significa Johnny Chung, però també fa una mica els miracles. ..) o el programa Smoothboard a www.smoothboard.net (anys llum abans, perquè Boon Jin va començar