TV-fjärrstyrda hem apparaten använder 8051 (4 / 4 steg)
Steg 4: Kod för 8051 mikrokontroller
Sammanställa asm filen i valfritt 8051 assembler program. Jag har använt denna ASEM-51 assebler. Det skapar hex-fil som vi behöver ladda upp till microcontroller med 8051 programmerare. Jag har använt "Top win Universal programmerare". Kolla det här Top vinna produkter. Det kan vara gränssnitt med så många mikrokontrollers, eeproms etc.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; ;
; TV-fjärrkontroll baserat hem apparaten växelsystem. ;
; Jaspal Singh;
; 05/06/2015.
; ;
; ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
$mod51
VAR1 equ r7; Tillfälliga variabeln
TEMP equ 10H; Temp variabel
GREVE equ 11H; Greve
ADDR equ 12H; enhetsadress
CMD equ 13H; Kommandot
KNÄPPA lite 00H; Knäppa lite
TOG lite 01H; Mallfräs för flip
IR equ P3.3; IR-mottagare ansluten till detta stift
SW1 equ P1.0; Växel 1 anslutas här
Sw2 equ P1.1; Växel 2 ansluten här
SW3 equ P1.2; Switch 3 anslutas här
SW4 equ P1.3; Switch 4 anslutas här
SW5 equ P1.4; Switch 5 anslutas här
SW6 equ P1.5; Switch 6 anslutas här
SW7 equ P1.6; Växel 7 anslutas här
SW8 equ P1.7; Switch 8 anslutas här
SWport equ P1; Port som växlar är anslutna
org 00H; Start för prog
MOV SWport, #00 H, stänga alla reläer!
MOV sp, #50 tim. Stack pekaren initiering
CLR TOG; Tydlig Mallfräs
viktigaste:
JB IR, $; Vänta på första biten
MOV VAR1, #255; 3.024mS fördröja
djnz VAR1 $
MOV VAR1, #255
djnz VAR1 $
MOV VAR1, #255
djnz VAR1 $
MOV VAR1, #255
djnz VAR1 $
MOV VAR1, #255
djnz VAR1 $
MOV VAR1, #100
djnz VAR1 $
MOV c, IR; Läs Flip bit
MOV FLIP, c
CLR A
MOV räkna, #5. Räkningen för adress
fadd:
MOV VAR1, #255; 1.728mS fördröjning för varje bit
djnz VAR1 $
MOV VAR1, #255
djnz VAR1 $
MOV VAR1, #255
djnz VAR1 $
MOV VAR1, #4
djnz VAR1 $
MOV c, IR
RLC en
djnz räkna, Folkesson
MOV ADDR, A; Spara adressen
CLR en