Consulta sobre cambio de instrucciones

Buenas tardes soy nuevo en el mundo del arduino y estoy realizando un código en el cual entro información al ordenador como si fuera un macro

Mi consulta el siguiente, como se puede hacer para que cuando cambia el ordenador de pantalla el arduino se detenga y deje de ejecutar el scrip.

Si alguno sabe la solución seria de mucha ayuda. saludos

Saludos Una forma que se me ocurre es que hagas solicitud de la información a través de comandos.

El soft en tu PC tendría que ser quien detecte cuando hagas el cambio de pantalla y cuando este seleccionada envié peticiones al Arduino y este devuelva los datos.

el cambio de pantalla es en un programa que tu has hecho o hablas de pantallas en general de windows?

surbyte: el cambio de pantalla es en un programa que tu has hecho o hablas de pantallas en general de windows?

Hablo de pantallas generales de windows, un ejemplo seria el arduino esta escribiendo en el word, al momento que no pueda escribir que el scrip se detenga y no haga mas nada. (en mi caso es mac no windows)

Saludos

un ejemplo seria el arduino esta escribiendo en el word, al momento que no pueda escribir que el scrip se detenga y no haga mas nada. (en mi caso es mac no windows)

Cómo haces para que arduino escriba en word? No digo que no se pueda, pregunto cómo haces? usando un vbscript?

Es importante que cuando describas una tarea o un objetivo seas claro. En lo que a mi respecta puedo opinar de Windows y no de Mac. Pero se que otros pueden con MAC y o Linux. Entonces establece el entorno de trabajo para comprender bien la situación. Si es en MAC yo paso de aquí en mas.

Lo del word era solo un ejemplo, el código es el que pongo a continuación pero no me convence como esta hecho ya que no se detiene en ningún momento, (aclaro el código no es mío) la idea era de que cuando la pantalla cambie deje de ejecutar el scrip

#include <usb_keyboard.h>

const int ledPin = 13; // choose the pin for the LED
int counter = 0;
int fakecounter = counter;
char pin=“xxxx”;

void setup() {
pinMode(ledPin, OUTPUT); // declare LED as output
delay(500);

}

void loop(){
keyboard_modifier_keys = 0;
if (counter <= 9999){
delay(400); // duracion del proseso entre numero y numero
digitalWrite(ledPin, LOW);
delay(275);
digitalWrite(ledPin, HIGH);
sprintf(pin, “%04d”, fakecounter);
//sending first digit
Keyboard.press(pin[0]);
delay(450);
Keyboard.release(pin[0]);
delay(420);
//sending second digit
Keyboard.press(pin[1]);
delay(398);
Keyboard.release(pin[1]);
delay(510);
//sending third digit
Keyboard.press(pin[2]);
delay(421);
Keyboard.release(pin[2]);
delay(423);
//sending forth digit
Keyboard.press(pin[3]);
delay(430);
Keyboard.release(pin[3]);
delay(525);
//sending enter
Keyboard.press(KEY_ENTER);
delay(305);
Keyboard.release(KEY_ENTER);

}
if (counter > 9999){
for (int blinkies = 0; blinkies < 8; blinkies++) {
digitalWrite(ledPin, HIGH);
delay(20);
digitalWrite(ledPin, LOW);
delay(200);
}
delay(5000);
}

++counter;
fakecounter = counter;

}

Con que facilidad se puede complicar algo que es tan facil de explicar de manera sencilla y detallada y no como leo este post que a cada comentario tuyo aparece algo. No quiero pelearte, si hacerte ver que hay que explicar las cosas pensando que la persona que la lea tenga todo el panorama. Mira que has ido comentando post a post:

1) Comienzas hablando de pantallas y como detectarlas para hacer algo con el arduino. Hablas de script por lo que uno piensa que ocurre a nivel Ordenador.

2) Luego dices que usas una mAC

3) Y ahora resulta que todo ocurría con USB_keyboard y se trata de un Arduino que emula teclado y que con el cambias las pantallas a las que refieres.

Preguntaste:

Mi consulta el siguiente, como se puede hacer para que cuando cambia el ordenador de pantalla el arduino se detenga y deje de ejecutar el scrip.

Supongo que por script hablas de sketch (programa que corre en Arduino) , o sea detener el programa del Arduino? si acabas de cambiar pantalla con la presión de una tecla en el teclado emulado USB la siguiente fase es detenerlo ya que la respuesta lógica es que el ordenador haga algo en respuesta a la presión de tu tecla.

surbyte: Con que facilidad se puede complicar algo que es tan facil de explicar de manera sencilla y detallada y no como leo este post que a cada comentario tuyo aparece algo. No quiero pelearte, si hacerte ver que hay que explicar las cosas pensando que la persona que la lea tenga todo el panorama.

Perdon por no haber sido claro de entrada.

surbyte: Preguntaste: Supongo que por script hablas de sketch (programa que corre en Arduino) , o sea detener el programa del Arduino? si acabas de cambiar pantalla con la presión de una tecla en el teclado emulado USB la siguiente fase es detenerlo ya que la respuesta lógica es que el ordenador haga algo en respuesta a la presión de tu tecla.

Asi es hablo de un sketch, entiendo la respuesta lógica pero no se como volcarla al código

Saludos surbyte

Veamos. Tienes en el arduino un sketch (programa) que emula un teclado de ordenador. Del que sea Windows, MAC o Linux. Hasta ahi bien. Cada presión en un pulsador de arduino hara algo en la pantalla del ordenador. Ese algo dependerá del programa que corra, como bien dijiste y ahora te comprendo, si está corriendo Word, no sé, escribirás algo en dicho programa. Ahora bien, cada Sistema Operativo tiene una serie de teclas que cambian pantalla. Primero debes emular esas teclas o combinación de teclas. Supongamos que el envió de dos pulsaciones del teclado emulado genera un cambio de pantalla en el ordenador. Ya está!!! no tienes mas que hacer eso, y el cambio de pantalla se habrá realizado.

Luego que quieres hacer en el arduino?