Professional Documents
Culture Documents
}
LED se activa con valor de entrada analgica
/*** Global variables ***/
int sensorPin = A0;
int ledPin = 13;
int sensorValue = 0;
/*** Function declaration ***/
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
sensorValue = analogRead(sensorPin);
if (sensorValue > 200) {
digitalWrite(ledPin, HIGH);
}
digitalWrite(ledPin, LOW);
}
Lectura de puerto analgico y transmitida digital en serie
int potPin = 0;
int val = 0;
void setup () {
Serial.begin(9600);
void loop () {
val = analogRead(potPin);
Serial.println(val);
delay (20);
}
Entrada analogical controla bit de salida
int potPin = 0;
int val = 0;
int ledPin = 13;
void setup () {
//Serial.begin(9600);
pinMode(ledPin, OUTPUT);
}
//int a = 0;
void loop () {
//a++;
val = analogRead(potPin);
if (val>=205) {
digitalWrite(ledPin, HIGH);
//Serial.println("1");
//a=0;
}
else {
//Serial.println("0");
digitalWrite(ledPin, LOW);
}
delay(200);
}
Reloj con LCD
#include <LiquidCrystal.h>
LiquidCrystal lcd(7,6,5,4,3,2);
int ss = 0;
int mm = 32;
int hh = 16;
void setup () {
lcd.begin(16,2);
}
void loop () {
for (ss = 0; ss < 60; ss++) {
lcd.clear();
lcd.setCursor(3,0);
lcd.print("Hrs");
lcd.setCursor(4,1);
lcd.print(hh);
lcd.setCursor(6,1);
lcd.print(":");
lcd.setCursor(7,0);
lcd.print("Min");
lcd.setCursor(7,1);
lcd.print(mm);
lcd.setCursor(9,1);
lcd.print(":");
lcd.setCursor(11,0);
lcd.print("Seg");
lcd.setCursor(12,1);
lcd.print(ss);
delay(1000);
}
if(ss>59) {
ss = 00;
mm = mm+1;
}
if (hh == 24) {
hh = 00;
mm = 00;
ss = 00;
}
}
Con VISUALINO
#include <Wire.h>
#include <LiquidCrystal.h>
void setup()
{
lcd.begin(16, 2);
lcd.clear();
void loop() {
lcd.setCursor(3,0);
lcd.print("Hrs");
lcd.setCursor(6,1);
lcd.print(":");
lcd.setCursor(7,0);
lcd.print("Min");
lcd.setCursor(9,1);
lcd.print(":");
lcd.setCursor(11,0);
lcd.print("Seg");
ss=0;
while (ss < 60) {
ss=ss + 1;
lcd.setCursor(4,1);
lcd.print(hh);
lcd.setCursor(7,1);
lcd.print(mm);
lcd.setCursor(12,1);
lcd.print(ss);
delay(1000);
if (ss > 59) {
ss=0;
mm=mm + 1;
}
if (mm > 59) {
ss=0;
hh=hh + 1;
}
if (hh == 24) {
hh=0;
mm=0;
ss=0;
}
}
}
Juego de luces
void setup () {
DDRD = B11111111; //Byte como salida digital
}
void loop () {
PORTD = B00001010; //secuencia
delay(200);
PORTD = B00000110;
delay(200);
PORTD = B00000101;
delay(200);
PORTD = B00001001;
delay(200);
PORTD = B00000010; //parejas horizontales
delay(200);
PORTD = B00000001;
delay(200);
PORTD = B00001011; //parejas verticales
delay(200);
PORTD = B00000111;
delay(200);
}
Saca la funcin seno en radianes
#include <LiquidCrystal.h>
LiquidCrystal lcd(7,6,5,4,3,2);
void setup () {
lcd.begin(16,2);
}
void loop () {
float a;
a = sin(1.5708);
lcd.print(a);
delay(500);
lcd.begin(16,2);
}
Obtiene el seno del puerto analgico 0
#include <LiquidCrystal.h>
LiquidCrystal lcd(7,6,5,4,3,2); //define los terminales utilizados
float a;
int potPin = 0;
float val = 0;
void setup () {
lcd.begin(16,2);
void loop () {
lcd.clear();
lcd.print("Degree= ");
val=analogRead(potPin);
val=val*0.3515625; //convert to 360
lcd.print(val);
val=val*0.01745329; //cenvert to rad
a = sin(val);
lcd.setCursor(0,1);
lcd.print("Sin=");
lcd.setCursor(8,1);
lcd.print(a);
delay(500);
}
Convertido analgico a digital (serial)
#include <LiquidCrystal.h>
LiquidCrystal lcd(7,6,5,4,3,2); // define los terminales utilizados
int potPin = 0;
int val = 0;
void setup () {
lcd.begin(16,2); //especifica la ubicacin del cursor en el lcd
Serial.begin(9600);
}
void loop () {
lcd.clear();
val = analogRead(potPin);
Serial.println(val);
lcd.print(val); //presenta en pantalla el valor de la entrada analgica
//delay(20);
}
http://todoelectrodo.blogspot.com/2012/05/control-de-varias-funciones-de-un-
led.html
//Definicion de Variables//
//Programa Principal
void loop ()
{
int espera=200;
int time=0;
i=0;
case 1:
digitalWrite(led,HIGH);//On
break;
case 2:
digitalWrite(led, LOW);//blink
delay(100);
digitalWrite(led,HIGH);
break;
case 3:
digitalWrite(led,HIGH);//blink quickly
delay(10);
digitalWrite(led, LOW);
break;
case 4:
time = millis();
}
delay (100);
}