Sugerida pelo autor Instructables sob o apelido fmtuve caseiro É um botão da tampa do frasco, que deve ser pressionado no final do dia útil. Ele simula o atalho de teclado Cmd + Q, que no Mac OS X desempenha a mesma função que a conhecida combinação Alt + F4 no Linux e Windows. A caixa do dispositivo é impressa em 3D, eletrônica executado em Arduino Pro Micro. E parece que o mestre colocou a produção de tais dispositivos em operação:
Todos os componentes do produto caseiro são mostrados abaixo, dos quais as três partes localizadas à direita são impressas em 3D e os arquivos STL para impressão estão em isto Arquivo ZIP.
Depois de imprimir os detalhes do estojo, o mestre solda os pentes para o Arduino de uma maneira incomum - do lado dos componentes:
Coloca neste recesso no fundo do casco:
Acontece como no KDPV no canto superior direito:
Virando a parte central do gabinete, coloque um botão, corte em meio jumper do tipo “duPont” e solde os contatos do botão, isole as conexões com um tubo termo-retrátil:
Liga a parte do meio com o botão de volta, conecta-o ao fundo, conecta o botão aos pinos GND e A8 Arduino. Um resistor de pull-up não faria mal aqui, mas funcionaria sem ele.
Em seguida, o assistente adiciona ao botão o empurrador de peças impresso em 3D superior:
Escreve um esboço:
O texto é o seguinte:
#include
#include
// PIN8 conectado
const int switch_pin = 8;
int button_state = 0;
int previous_button_state = ALTO;
long last_debounce_time = 0;
const long debounce_delay = 50;
configuração nula ()
{
// Usamos o registro interno de pullup porque o switch está conectado diretamente.
pinMode (switch_pin, INPUT_PULLUP);
digitalWrite (switch_pin, HIGH);
Keyboard.begin ();
}
loop vazio ()
{
button_state = digitalRead (switch_pin);
if ((button_state! = previous_button_state) && (button_state == HIGH))
{
if ((millis () - last_debounce_time)> debounce_delay)
{
// Sair do programa (CMD + Q no mac) e tenha um bom dia!
// Use KEY_LEFT_ALT + KEY_F4 para PC
Keyboard.press (KEY_LEFT_GUI);
Keyboard.press ('q');
atraso (100);
Keyboard.releaseAll (); // Isso é importante depois que todo Keyboard.press continua pressionado
last_debounce_time = millis ();
}
}
previous_button_state = button_state;
}
Aqui acontece que: se você ativar o resistor de pull-up embutido no sketch, o externo não é necessário. No texto, você precisa alterar o atalho do teclado para o necessário. Depois de preencher o esboço, o mestre instala uma tampa de garrafa no empurrador:
E ele começa a trabalhar em um pequeno cartaz publicitário:
Talvez ele o convença a repetir esse design. Afinal, a coisa é positiva, que rapidamente começará a ser associada ao retorno para casa do trabalho.