Entradas e saídas dixitais

Introdución: Sinais dixitais

niveisloxicosNun sinal dixital a información está codificada en dous únicos estados: 1 e 0. A cada un deles asígnaselle unha voltaxe ou rango de voltaxes determinado.

Por exemplo, un pulsador ten dous estados: en repouso é un 0 ou nivel baixo (LOW), e cando prememos envía un 1 (nivel alto ou HIGH) ao pin no que está conectado. Un LED tamén ten dous estados: apagado será o (LOW) e aceso 1 (HIGH).

Eses ceros e uns representan unha voltaxe determinada: 0 ou LOW será arredor de 0V, e 1 ou HIGH 5V.

pushbutton-on-off  led-lamp-red-on-off sinal_dixital
[tecnoloxia.org CC By-SA]

Pins E/S dixitais no arduino:

  • arduino_ES_dixitaisPins 0 -> 13 : Pins dixitais de entrada e saída
  • Pin 0 (Rx): Recepción serie de datos
  • Pin 1 (Tx): Transmisión serie de datos
  • Pins ~ (3, 5, 6, 9, 10, 11): Pódense usar como saídas de sinal PWM (verémolo máis adiante)
  • GND: Conexión a terra ou 0V

Guía de programación:

Definir variables:

int número enteiro

Por exemplo, definimos o nome “ledVerde” para  un LED e indicamos que está conectado ao pin 9:

int ledVerde = 9;
const int ledVerde = 9;

Configuración:

pinMode(pin,modo)

Debemos indicar se os pins que imos utilizar son de saída ou de entrada.

void setup() {
    pinMode(ledVerde, OUTPUT);
}
void setup() {
    pinMode(pulsador, INPUT);
}

Por defecto os pins están configurados como entradas, polo que non faría falta indicar as entradas dixitais na configuración, só as saídas.

Funcións dixitais:

digitalWrite(pin,estado)

Permite enviar un sinal dixital ao pin de saída indicado:

  • HIGH ou 1: envía 5V ao pin de saída
  • LOW ou 0: envía 0V ao pin de saída
digitalWrite (9,HIGH);
digitalWrite (9,1);
digitalWrite (13,LOW);
digitalWrite (13,0);

 

digitalRead(pin)

Permite ler 0 ou 1 nun pin dixital de entrada.

int estado = digitalRead (2);   // Define a variable “estado” coa lectura do valor do pin 2
digitalWrite(led,digitalRead(pulsador));   // Transmitimos ao LED o valor do pulsador
digitalWrite(led,estado);     // O mesmo, pero coa variable "estado"

 


Deixa un comentario