buenas tardes.
de que manera puedo leer una salida (en mi caso bit 5 del puerto D del atmega 328) adentro de una ISR pero sin usar digitalRead () yaque la misma insume muchos ciclos de clock.
gracias
buenas tardes.
de que manera puedo leer una salida (en mi caso bit 5 del puerto D del atmega 328) adentro de una ISR pero sin usar digitalRead () yaque la misma insume muchos ciclos de clock.
gracias
Busca en Google las instrucciones PORT, DDR, PIN
ya lo probe, no me funciono. gracias igual por la respuesta peter
Entonces dime como pretendes leerlo?
Porque no lees las normas del foro y posteas tu código porque es imposible aconsejarte si no vemos que has hecho y cómo lo has hecho.
Solo hay dos maneras de leer un pin
Decir que no funcionan, solo hace pensar que las usaste inadecuadamente.
No dije q las use adecuadamente , simplemente dije q no me funciono, basandome en la poca informacion que obtuve.
void Interrrupcion_Sensor_Optico ( void ) // cuerpo de la ISR externa
{
if ( PIND5 == 1 )
{
vuelta = vuelta + 1 ;
}
if ( PIND6 == 1 )
{
vuelta = vuelta - 1 ;
}
}
anteriormente donde dice PINDx lo habia echo con digitalRead
cabe aclarar que lo q deseo leer son salidas y no entradas
Tampoco has leído las normas del foro, hazlo, 1er hilo de esta o cualquier sección.
Luego edita tu último post. Nada va como texto plano.
Y además y esto si es importante, coloca todo el código porque debemos ver como configuras el puerto y que puerto es?
EDITO: por favor, quita de tu mente este comentario
basandome en la poca informacion que obtuve.
Si te hago una busqueda, te puedes aburrir o no te alcanza la vida para leer todo lo que hay al respecto.
Google AVR Port
Google Arduino PORT
etc, etc, etc
Y solo para que veas algo de lo que te digo te dejo este link
Diras pero eso no es arduino!! Si claro pero el ATmega328 es un microcontrolador que antes de programarlo como Arduino se programaba como cualquier micro, y luego se estableció este criterio de
void setup(){}
void loop(){}
mas las librerías conocidas.
lo que acabo de indicarte sirve para aprender.
Pero tambien puedes encontrar lo mismo bajo el entorno Arduino link2
Por el escaso código que pusiste es un contador con dirección, para eso están las interrupciones.