
El dispositivo ATtiny13, controlado por un programa de 290 palabras de 16 bits escritas en ensamblador, recuerda los c贸digos de los seis botones del control remoto y enciende / apaga las tres cargas.
Esquema:

El receptor IR TSOP1740 est谩ndar utiliza l贸gica inversa, y esto se tiene en cuenta en el programa. Las se帽ales recibidas provocan una interrupci贸n INT0. La resistencia es necesaria para desatar el receptor IR del microcontrolador durante la carga del firmware.
El procedimiento para ense帽ar los c贸digos de los botones del dispositivo es el siguiente. Encienda la alimentaci贸n con el bot贸n presionado en la entrada PB3 (luego puede soltarlo). La primera carga se encender谩 y apagar谩 brevemente de inmediato. Presionamos el bot贸n en el control remoto, con el cual queremos encender la primera carga. Tan pronto como el control remoto env铆e el mismo c贸digo dos veces (esto sucede si mantiene presionado el bot贸n durante al menos un par de segundos), la primera carga se encender谩 durante cinco segundos y se apagar谩. Y el segundo se encender谩 brevemente y tambi茅n se apagar谩 inmediatamente. Entrenamos el dispositivo para el c贸digo del bot贸n para encender la segunda carga. Luego el tercero. Ahora estamos haciendo lo mismo secuencialmente con los c贸digos de los botones, con los que queremos desconectar las cargas. El programa escribir谩 los c贸digos en la EEPROM, ahora debe apagar y encender la alimentaci贸n, pero no presione el bot贸n en la entrada PB3. El dispositivo entrar谩 en modo operativo, en el que puede administrar cargas.
Al verificar las cargas, los LED se conectan mediante resistencias. Despu茅s de asegurarnos de que todo funciona, conectamos a las salidas las teclas que controlan el rel茅. Como se puede ver en el circuito de cualquiera de las tres teclas, los LED indicadores con resistencias por conveniencia se dejan en su lugar:

En realidad, deber铆a haber transistores NPN conectados por emisores al cable com煤n, pero el autor trabaja as铆. Las cargas pueden ser, por ejemplo, l谩mparas LED con temperaturas de color de 2700, 4000 y 6400 K. Puede cambiarlas manualmente seg煤n los ritmos circadianos, sin depender de la automatizaci贸n.
C贸digo ensamblador:
sin y sin formato HTML .
Confirmaci贸n de que fue posible encontrar 290 palabras de 16 bits:
gavrasm Gerd's AVR assembler version 3.5 (C)2015 by DG4FAC ---------------------------------------------------------- Source file: 12_IR-Rx_Switch.asm Hex file: 12_IR-Rx_Switch.hex Eeprom file: 12_IR-Rx_Switch.eep Compiled: 23.11.2016, 23:23:05 Pass: 2 1: ; 2: ; *************************************** 3: ; * IR-Switch 3-Channel with ATtiny13 * 4: ; * (C)2016 by www.avr-asm-tutorial.net * 5: ; *************************************** ... Program : 290 words. Constants : 0 words. Total program memory: 290 words. Eeprom space : 13 bytes. Data segment : 29 bytes. Compilation completed, no errors. Compilation ended 23.11.2016, 23:23:05