Ai galera!! Como prometido vou colocar o passo-a-passo do relógio para que vocês montem um.

O funcionamento dele é o seguinte:

Quando a placa girá, em um determinado tempo ele ascende alguns dos 16 LEDs que estão nele. Vocês podem fazer qualquer imagem desde que comportem o número de postos para fazer a imagem. No meu caso eu coloquei um relógio de ponteiros e estou usando um relógio RTC HT1380. Vocês podem usar o DS1302 no lugar deste que eu usei. 

Vejam o esquemário dele:

Este é o esquemário dele. Prestem bastante atenção na montagem. Eu usei uma placa ilhada para monta-lo e um motor de vidro elétrico de carro mas vocês podem usar outro motor. Lembrem-se de regular a montagem do motor pois, se não estiver na rotação correta não mostrará a imagem direito devendo usar um dimer ou outra coisa que possa regular a rotção do motor.

Preste bastante atenção na ponte foto-acopladorá abaixo:

Ele usa a interrupção externa para mostrar a imagem. A ponte foto-acopladora é composto de um LED infravermelho e um foto-diodo. O LED ficará aceso o tempo todo e quando passar alguma coisa interrompendo a iluminação do LED para o foto-diodo, ele cairá para 0 volts no pino de interrupção, desenhando a imagem, Quando isso não acontece, fica em 5 volts o tempo todo no pino de interrupção ou seja, ele funciona na borda do zero. 

Segue as outras fotos para ajuda-los na montagem:

Aqui vocês podem ver a alimentação. Esse acima é o negativo da fonte GND.

Acima vocês podem ver os 12 volts. Notem o anel de latão que eu usei e também a fita isolante para isolar os 12 volts do negativo GND. Mas ai cada um segue a criatividade para fazer a alimentação. 

Abaixo vocês irão ver o Microcontrolador AT89S52 da família 8051 que controla ele:

Abaixo segue o RTC(Real Timer Conter) Relógio de tempo real que pode ser tanto o HT1380 como o DS1302:

Prestem atenção neste cristal que vai com ele. É um cristal de 32768Hz para contagem do tempo de um segundo. Sem ele não irá funciona. PRESTEM ATENÇÃO NA FREQUÊNCIA.

E logo segue abaixo o registrador de deslocamento 74HC595:

Para acerta a hora veja os botões no esquema. Para ajuste da hora vocês irão aperta o botão próximo como está no esquema. Apertando uma vez este botão ele irá aparecer os segundos contando em binário BCD. Os segundos não tem como alterar a não ser zerá eles apertando o botão incrementa. Aperte novamente uma vez o botão próximo que ele irá mostrar os minutos também em binário BCD. Aperte o botão incrementa e irá ser ajustado os minutos. Aperte novamente o botão próximo e ele irá mostrar as horas para ajuste com o botão incrementa. Logo que depois ajustada a hora aperte novamente o botão próximo que ele irá apaga todos os LEDs ai é só ligar o motor com a velocidade ajustada e vocês verão se propeller clock funcionando. O texto vocês poderão muda-lo no código fonte que seguirá a baixo. 

Qualquer dúvida mande mensagens pois estarei aqui para ajuda-los.

Muito breve eu irei fazer outros dois para a galera do Arduino e para a galera do PIC escrito todos os dois em C.

Ate-lá!!!!!!

Código:

$MOD52
$TITLE(PROPELLER CLOCK)
$PAGEWIDTH(132)
$DEBUG
$OBJECT
$NOPAGING

ORG 0000H ;INICIO DA MEMORIA DE PROGRAMA
LJMP INICIO ;PULA A AREA DO VETOR DE INTERRUPCAO

ORG 0003H ;INICIO DO VETOR DE INTERRUPCAO EXTERNA 0
LJMP INTEX0 ;

ORG 000BH ;INICIO DO VETOR DE TIMER/COUNTER 0
TIME0: RETI
ORG 0013H ;INICIO DO VETOR DE INTERRUPCAO EXTERNA 1
INTEX1: RETI ;

ORG 001BH ;INICIO DO VETOR DE TIMER/COUNTER 1
TIME1: RETI ;

ORG 0023H ;INICIO DO VETOR DE SERIAL
SERIAL: RETI

REST BIT P1.0
SAIDA BIT P1.1
SCLK BIT P1.2
DADOS BIT P1.3
CLOCK BIT P1.4
LATCH BIT P1.5
CONTA BIT P1.6
PROXIMO BIT P1.7

DIGI1 EQU 30H
DIGI2 EQU 31H
SEGU EQU 32H
SEGD EQU 33H
MINU EQU 34H
MIND EQU 35H
HORU EQU 36H
HORD EQU 37H
DIAU EQU 38H
DIAD EQU 39H
MESU EQU 3AH
MESD EQU 3BH
ANOU EQU 3CH
ANOD EQU 3DH
SEMANA EQU 3EH
SEGUNDOS EQU 3FH
MINUTOS EQU 40H
HORAS EQU 41H
BIT1 EQU 42H
BIT2 EQU 43H
BIT3 EQU 44H
BIT4 EQU 45H
DIGI3 EQU 46H
CONTAR EQU 47H
PONTEIROS EQU 48H
MUDAR1 EQU 49H
MUDAR2 EQU 4AH
PONTOS EQU 4BH
PONTOS1 EQU 4CH

ORG 0100H ;INICIO DA MEMORIA DE PROGRAMA

INICIO:
LCALL HABILITAHT1380

MOV IE,#81H
MOV TCON,#01H
GATO:
MOV R1,#08H
MOV A,#0FFH
MOV MUDAR1,#0FFH
MOV MUDAR2,#00H
LIMPA:
RLC A
MOV DADOS,C
CLR CLOCK
SETB CLOCK
DJNZ R1,LIMPA
MOV R1,#08H
MOV A,#0FFH
LIMPA1:
RLC A
MOV DADOS,C
CLR CLOCK
SETB CLOCK
DJNZ R1,LIMPA1
CLR LATCH
SETB LATCH
;GATO23:
; LCALL LEITURA_SEGUNDOS

MOV A,#81H

LCALL LEITURA
LCALL UNIDADE

MOV SEGU,DIGI1

MOV A,#81H

LCALL LEITURA
LCALL DEZENA

MOV SEGD,DIGI2

; MOV R1,#08H
; MOV A,SEGU
; ORL A,SEGD
; CPL A

;LIMP:
; RLC A
; MOV DADOS,C
; CLR CLOCK
; SETB CLOCK
; DJNZ R1,LIMP
; MOV R1,#08H
; MOV A,#0FFH
;LIMP1:
; RLC A
; MOV DADOS,C
; CLR CLOCK
; SETB CLOCK
; DJNZ R1,LIMP1
; CLR LATCH
; SETB LATCH

MOV A,#83H

LCALL LEITURA
LCALL UNIDADE

MOV MINUTOS,DIGI1
MOV MINU,DIGI1

MOV A,#83H

LCALL LEITURA
LCALL DEZENA

MOV MIND,DIGI2

MOV A,#85H

LCALL LEITURA
LCALL UNIDADE

MOV HORU,DIGI1

MOV A,#85H

LCALL LEITURA
LCALL DEZENA

MOV HORD,DIGI2

MOV A,#87H

LCALL LEITURA
LCALL UNIDADE

MOV DIAU,DIGI1

MOV A,#87H

LCALL LEITURA
LCALL DEZENA

MOV DIAD,DIGI2

MOV A,#89H

LCALL LEITURA
LCALL UNIDADE

MOV MESU,DIGI1

MOV A,#89H

LCALL LEITURA
LCALL DEZENA

MOV MESD,DIGI2

MOV A,#8EH

LCALL LEITURA
LCALL UNIDADE

MOV ANOU,DIGI1

MOV A,#8EH

LCALL LEITURA
LCALL DEZENA

MOV ANOD,DIGI2

MOV A,#8BH

LCALL LEITURA
LCALL UNIDADE

MOV SEMANA,DIGI1

LCALL ACERTA

LJMP GATO


LEITURA:
CLR SCLK
CLR REST
MOV R5,#07H
SETB REST
CLR SCLK
SAPOC:
RRC A
MOV SAIDA,C
SETB SCLK
CLR SCLK
DJNZ R5,SAPOC
SETB SAIDA
MOV A,#00H

MOV R5,#08H
SAPOD:
MOV C,SAIDA
RRC A
SETB SCLK
CLR SCLK
DJNZ R5,SAPOD
RR A
CLR ACC.7
MOV DIGI1,A
CLR SCLK
CLR REST

RET

UNIDADE:
MOV A,DIGI1
ANL A,#0FH
MOV DIGI1,A

RET
DEZENA:
MOV A,DIGI1
ANL A,#0F0H
SWAP A
MOV DIGI2,A

RET

LEITURA_SEGUNDOS:

MOV A,#81H

CLR SCLK
CLR REST
MOV R5,#07H
SETB REST
CLR SCLK
SAPOCS:
RRC A
MOV SAIDA,C
SETB SCLK
CLR SCLK
DJNZ R5,SAPOCS
SETB SAIDA
MOV A,#00H

MOV R5,#08H
SAPODS:
MOV C,SAIDA
RRC A
SETB SCLK
CLR SCLK
DJNZ R5,SAPODS
RR A
CLR ACC.7
MOV DIGI1,A
CLR SCLK
CLR REST
MOV SEGUNDOS,DIGI1

RET

LEITURA_MINUTOS:

MOV A,#83H

CLR SCLK
CLR REST
MOV R5,#07H
SETB REST
CLR SCLK
SAPOCM:
RRC A
MOV SAIDA,C
SETB SCLK
CLR SCLK
DJNZ R5,SAPOCM
SETB SAIDA
MOV A,#00H

MOV R5,#08H
SAPODM:
MOV C,SAIDA
RRC A
SETB SCLK
CLR SCLK
DJNZ R5,SAPODM
RR A
CLR ACC.7
MOV DIGI1,A
CLR SCLK
CLR REST
MOV MINUTOS,DIGI1

RET

LEITURA_HORAS:

MOV A,#85H

CLR SCLK
CLR REST
MOV R5,#07H
SETB REST
CLR SCLK
SAPOCH:
RRC A
MOV SAIDA,C
SETB SCLK
CLR SCLK
DJNZ R5,SAPOCH
SETB SAIDA
MOV A,#00H

MOV R5,#08H
SAPODH:
MOV C,SAIDA
RRC A
SETB SCLK
CLR SCLK
DJNZ R5,SAPODH
RR A
CLR ACC.7
MOV DIGI1,A
CLR SCLK
CLR REST
MOV HORAS,DIGI1

RET

DIGITAL:
MOV A,#81H

LCALL LEITURA
LCALL UNIDADE

MOV SEGU,DIGI1

MOV A,#81H

LCALL LEITURA
LCALL DEZENA

MOV SEGD,DIGI2

MOV A,#83H

LCALL LEITURA
LCALL UNIDADE

MOV MINUTOS,DIGI1
MOV MINU,DIGI1

MOV A,#83H

LCALL LEITURA
LCALL DEZENA

MOV MIND,DIGI2

MOV A,#85H

LCALL LEITURA
LCALL UNIDADE

MOV HORU,DIGI1

MOV A,#85H

LCALL LEITURA
LCALL DEZENA

MOV HORD,DIGI2

RET

ESCREVE:
CLR SCLK
CLR REST
MOV R5,#08H
SETB REST
CLR SCLK
SAPOC1:
RRC A
MOV SAIDA,C
SETB SCLK
CLR SCLK
DJNZ R5,SAPOC1
SETB SAIDA
MOV A,#00H

MOV A,DIGI3
MOV R5,#08H
SAPOD1:

RRC A
MOV SAIDA,C
SETB SCLK
CLR SCLK
DJNZ R5,SAPOD1
CLR SCLK
CLR REST

RET


HABILITAHT1380:
CLR REST ; Coloca o REST em '0' para garantir a
; transi\E7\E3o de '0' para '1' na primeira
; vez que enviar dados para o HT1380
CLR SCLK ; Inicializa o sinal de clock com '0'

SETB REST ; Habilita comunica\E7\E3o com HT1380
MOV A,#8EH ; Habilita escrita no HT1380
CALL ENVIAHT1380 ; Envia 8Eh para o HT1380
MOV A,#00H ; Zera o acumulador para enviar para o HT1380
CALL ENVIAHT1380 ; Envia 00h para o HT1380
CLR REST ; Desabilita comunica\E7\E3o com HT1380

SETB REST ; Habilita comunica\E7\E3o com HT1380
MOV A,#80H ; Ativa o oscilador do HT1380
CALL ENVIAHT1380 ; Envia 80h para o HT1380
MOV A,#00H ; Zera o acumulador para enviar para o HT1380
CALL ENVIAHT1380 ; Envia 00h para o HT1380
CLR REST ; Desabilita comunica\E7\E3o com HT1380


CALL ENVIARELOGIO

RET

ENVIAHT1380:
MOV R7,#08H ; Carrega para enviar 8 bits

ENVIAHT1380_1:
RRC A ; Transfere o bit menos significativo do
; acumulador para o carry
MOV SAIDA,C ; Transfere o carry para a linha de IO
; para enviar ao HT1380
SETB SCLK ; In\EDcio do pulso de clock
CLR SCLK ; Fim do pulso de clock
DJNZ R7,ENVIAHT1380_1 ;
; Enquanto n\E3o chegar a zero \E9 porque
; ainda tem bits a enviar
SETB SAIDA ; Coloca a linha de IO em '1' para
RET

ENVIARELOGIO:
CLR SCLK ; Para garantir que o sinal de clock
; esteja em '0' quando o HT1380 for
; selecionado
SETB REST ; Habilita comunica\E7\E3o com HT1380

MOV A,#01000010B ; Comando de escrita no modo burst
CALL ENVIAHT1380 ; Envia comando para o HT1380

MOV R0,#07H ; Para enviar 7 bytes para o HT1380

ENVIARELOGIO1: ; Loop para enviar 7 bytes
MOV A,#00H ; Carrega o acumulador com o que vai
; enviar
CALL ENVIAHT1380 ; Vai enviar para o HT1380
; buscar o pr\F3ximo byte a enviar
DJNZ R0,ENVIARELOGIO1 ; Fim do loop para enviar 7 bytes

MOV A,#80H ; Para prote\E7\E3o de escrita
CALL ENVIAHT1380 ; Envia a prote\E7\E3o de escrita
CLR REST ; Desabilita comunica\E7\E3o com HT1380

RET

DESCARGA:
MOV R0,#DIGI3
MOV R2,#06H
LOOP:
MOV A,@R0
MOV R1,#08H
LOOP_1:
RLC A
MOV DADOS,C
CLR CLOCK
SETB CLOCK
DJNZ R1,LOOP_1

INC R0

DJNZ R2,LOOP
CLR LATCH
SETB LATCH

RET

ACERTA:
JB PROXIMO,SALI
VERA:
MOV R1,#08H
MOV A,SEGUNDOS
CPL A
LIMP:
RLC A
MOV DADOS,C
CLR CLOCK
SETB CLOCK
DJNZ R1,LIMP
MOV R1,#08H
MOV A,#0FFH
LIMP1:
RLC A
MOV DADOS,C
CLR CLOCK
SETB CLOCK
DJNZ R1,LIMP1
CLR LATCH
SETB LATCH
MOV R6,#0FFH
LOOK:
LCALL DELAY
DJNZ R6,LOOK
SAL1:
JB CONTA,SAL2
JMP ZERO
SAL2:
JB PROXIMO,VERA
JMP ACERT_2
ZERO:
MOV A,#8EH
MOV DIGI3,#00H
LCALL ESCREVE

LCALL DELAY

MOV A,#80H
MOV DIGI3,#00H
LCALL ESCREVE

MOV A,#8EH
MOV DIGI3,#80H
LCALL ESCREVE

JMP VERA
SALI:
MOV R6,#0FFH
LOOK6:
LCALL DELAY
DJNZ R6,LOOK6
RET

ACERT_2:
MOV R1,#08H
MOV A,MINUTOS
CPL A
LIM:
RLC A
MOV DADOS,C
CLR CLOCK
SETB CLOCK
DJNZ R1,LIM
MOV R1,#08H
MOV A,#0FFH
LIM1:
RLC A
MOV DADOS,C
CLR CLOCK
SETB CLOCK
DJNZ R1,LIM1
CLR LATCH
SETB LATCH
MOV R6,#0FFH
LOOK1:
LCALL DELAY
DJNZ R6,LOOK1

JB CONTA,SAL3
JMP MINUT
SAL3:
JB PROXIMO,ACERT_2
SJMP ACERT_3
MINUT:
MOV A,#8EH
MOV DIGI3,#00H
LCALL ESCREVE

LCALL DELAY

INC BIT1
MOV A,#0F0H
ANL A,BIT1
SWAP A
MOV BIT3,A
MOV A,#0FH
ANL A,BIT1

CJNE A,#0AH,PUL
MOV BIT1,#00H
INC BIT3

MOV A,BIT3
SWAP A
XRL A,BIT1
MOV BIT1,A

MOV A,BIT3

CJNE A,#06H,PUL
MOV BIT1,#00H
PUL:
MOV A,#82H
MOV DIGI3,BIT1
LCALL ESCREVE
MOV R6,BIT1

MOV A,#8EH
MOV DIGI3,#80H
LCALL ESCREVE

LJMP ACERT_2
ACERT_3:
MOV R1,#08H
MOV A,HORAS
CPL A
LIN:
RLC A
MOV DADOS,C
CLR CLOCK
SETB CLOCK
DJNZ R1,LIN
MOV R1,#08H
MOV A,#0FFH
LIN1:
RLC A
MOV DADOS,C
CLR CLOCK
SETB CLOCK
DJNZ R1,LIN1
CLR LATCH
SETB LATCH
MOV R6,#0FFH
LOOK2:
LCALL DELAY
DJNZ R6,LOOK2

JB CONTA,SAL4
JMP HORI
SAL4:
JB PROXIMO,ACERT_3
LJMP SALI
HORI:
MOV A,#8EH
MOV DIGI3,#00H
LCALL ESCREVE

LCALL DELAY

INC BIT2
MOV A,#0F0H
ANL A,BIT2
SWAP A
MOV BIT3,A
MOV A,#0FH
ANL A,BIT2

CJNE A,#04H,PUL2
MOV A,BIT3
CJNE A,#02H,PUL2
MOV BIT2,#00H
JMP PUL1

PUL2:
CJNE A,#0AH,PUL1
MOV BIT2,#00H
INC BIT3

MOV A,BIT3
SWAP A
XRL A,BIT2
MOV BIT2,A

MOV A,BIT3

CJNE A,#03H,PUL1
MOV BIT2,#00H
PUL1:

MOV A,#84H
MOV DIGI3,BIT2
LCALL ESCREVE

MOV A,#8EH
MOV DIGI3,#80H
LCALL ESCREVE

LJMP ACERT_3


DELAY:
MOV R7,#03H
DELA:
MOV R3,#0DAH
DJNZ R3,$
DJNZ R7,DELA

LCALL LEITURA_SEGUNDOS
LCALL LEITURA_MINUTOS
LCALL LEITURA_HORAS

RET
DELAY1:
MOV R1,PONTOS1
MOV R7,#03H
DELA1:
MOV R3,#90H
DJNZ R3,$
DJNZ R7,DELA1

CJNE R1,#05H,SAPI
MOV PONTOS,#0FFH
SAPI:
CJNE R1,#00H,SAPI1
MOV PONTOS,#11011011B
MOV PONTOS1,0AH
SAPI1:
DJNZ R1,SAPI2
SAPI2:
MOV PONTOS1,R1
LCALL DIGITAL

RET

AMOSTRAGEM:
MOV R6,#00H
CACHO:
MOV DPTR,#RELOGIO_SHOW0
MOV A,R6

MOV A,R6
MOVC A,@A+DPTR
MOV PONTEIROS,A

LCALL MANDA

MOV A,#0FFH
LCALL MANDA

MOV R0,HORAS
LCALL PONTEIRO_HOR

MOV R0,MINUTOS
LCALL PONTEIRO_MIN

MOV R0,SEGUNDOS
LCALL PONTEIRO_SEG

CLR LATCH
SETB LATCH
INC R6

LCALL DELAY

CJNE R6,#60D,CACHO

MOV R0,MUDAR1

DJNZ R0,SAIND
MOV MUDAR2,#01H
MOV MUDAR1,#0FFH

SAIND:
MOV MUDAR1,R0
RET

AMOSTRAGEM1:
MOV R6,#00H
CACHO1:
MOV DPTR,#RELOGIO_SHOW1
MOV A,R6

MOV A,R6
MOVC A,@A+DPTR
MOV PONTEIROS,A

LCALL MANDA

MOV DPTR,#RELOGIO_SHOW0

MOV A,#0FFH
LCALL MANDA

MOV R0,HORAS
LCALL PONTEIRO_HOR

MOV R0,MINUTOS
LCALL PONTEIRO_MIN

MOV R0,SEGUNDOS
LCALL PONTEIRO_SEG

CLR LATCH
SETB LATCH
INC R6

LCALL DELAY

CJNE R6,#60D,CACHO1

MOV R0,MUDAR1

DJNZ R0,SAINA
MOV MUDAR2,#02H
MOV MUDAR1,#0FFH

SAINA:
MOV MUDAR1,R0
MOV PONTOS1,#0AH
RET

MANDA:
MOV R1,#08H
MAND:
RRC A
MOV DADOS,C
CLR CLOCK
SETB CLOCK
DJNZ R1,MAND
RET

PONTEIRO_SEG:
CJNE R6,#00H,PONT0

CJNE R0,#00H,SAIN1
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN1:
LJMP SAINDO
PONT0:
CJNE R6,#01H,PONT1

CJNE R0,#01H,SAIN1
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA


MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT1:
CJNE R6,#02H,PONT2

CJNE R0,#02H,SAIN1
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT2:
CJNE R6,#03H,PONT3

CJNE R0,#03H,SAIN1
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN2:
LJMP SAINDO
PONT3:
CJNE R6,#04H,PONT4

CJNE R0,#04H,SAIN2
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT4:
CJNE R6,#05H,PONT5

CJNE R0,#05H,SAIN2
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT5:
CJNE R6,#06H,PONT6

CJNE R0,#06H,SAIN2
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT6:
CJNE R6,#07H,PONT7

CJNE R0,#07H,SAIN3
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT7:
CJNE R6,#08H,PONT8

CJNE R0,#08H,SAIN3
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT8:
CJNE R6,#09H,PONT9

CJNE R0,#09H,SAIN3
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN3:
LJMP SAINDO
PONT9:
CJNE R6,#0AH,PONT10

CJNE R0,#10H,SAIN3
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT10:
CJNE R6,#0BH,PONT11

CJNE R0,#11H,SAIN3
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT11:
CJNE R6,#0CH,PONT12

CJNE R0,#12H,SAIN3
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT12:
CJNE R6,#0DH,PONT13

CJNE R0,#13H,SAIN3
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN4:
LJMP SAINDO
PONT13:
CJNE R6,#0EH,PONT14

CJNE R0,#14H,SAIN4
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT14:
CJNE R6,#0FH,PONT15

CJNE R0,#15H,SAIN4
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT15:
CJNE R6,#10H,PONT16

CJNE R0,#16H,SAIN4
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT16:
CJNE R6,#11H,PONT17

CJNE R0,#17H,SAIN5
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT17:
CJNE R6,#12H,PONT18

CJNE R0,#18H,SAIN5
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN5:
LJMP SAINDO
PONT18:
CJNE R6,#13H,PONT19

CJNE R0,#19H,SAIN5
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT19:
CJNE R6,#14H,PONT20

CJNE R0,#20H,SAIN5
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT20:
CJNE R6,#15H,PONT21

CJNE R0,#21H,SAIN5
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT21:
CJNE R6,#16H,PONT22

CJNE R0,#22H,SAIN5
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT22:
CJNE R6,#17H,PONT23

CJNE R0,#23H,SAIN6
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT23:
CJNE R6,#18H,PONT24

CJNE R0,#24H,SAIN6
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT24:
CJNE R6,#19H,PONT25

CJNE R0,#25H,SAIN6
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN6:
LJMP SAINDO
PONT25:
CJNE R6,#1AH,PONT26

CJNE R0,#26H,SAIN6
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT26:
CJNE R6,#1BH,PONT27

CJNE R0,#27H,SAIN6
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT27:
CJNE R6,#1CH,PONT28

CJNE R0,#28H,SAIN6
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT28:
CJNE R6,#1DH,PONT29

CJNE R0,#29H,SAIN7
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT29:
CJNE R6,#1EH,PONT30

CJNE R0,#30H,SAIN7
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT30:
CJNE R6,#1FH,PONT31

CJNE R0,#31H,SAIN7
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B
LCALL MANDA
SAIN7:
LJMP SAINDO
PONT31:
CJNE R6,#20H,PONT32

CJNE R0,#32H,SAIN7
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT32:
CJNE R6,#21H,PONT33

CJNE R0,#33H,SAIN7
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT33:
CJNE R6,#22H,PONT34

CJNE R0,#34H,SAIN7
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT34:
CJNE R6,#23H,PONT35

CJNE R0,#35H,SAIN7
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B
LCALL MANDA
LJMP SAINDO
PONT35:
CJNE R6,#24H,PONT36

CJNE R0,#36H,SAIN8
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT36:
CJNE R6,#25H,PONT37

CJNE R0,#37H,SAIN8
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT37:
CJNE R6,#26H,PONT38

CJNE R0,#38H,SAIN8
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN8:
LJMP SAINDO
PONT38:
CJNE R6,#27H,PONT39

CJNE R0,#39H,SAIN8
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT39:
CJNE R6,#28H,PONT40

CJNE R0,#40H,SAIN8
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT40:
CJNE R6,#29H,PONT41

CJNE R0,#41H,SAIN8
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT41:
CJNE R6,#2AH,PONT42

CJNE R0,#42H,SAIN8
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT42:
CJNE R6,#2BH,PONT43

CJNE R0,#43H,SAIN9
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT43:
CJNE R6,#2CH,PONT44

CJNE R0,#44H,SAIN9
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT44:
CJNE R6,#2DH,PONT45

CJNE R0,#45H,SAIN9
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN9:
LJMP SAINDO
PONT45:
CJNE R6,#2EH,PONT46

CJNE R0,#46H,SAIN9
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT46:
CJNE R6,#2FH,PONT47

CJNE R0,#47H,SAIN9
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT47:
CJNE R6,#30H,PONT48

CJNE R0,#48H,SAIN9
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT48:
CJNE R6,#31H,PONT49

CJNE R0,#49H,SAIN9
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT49:
CJNE R6,#32H,PONT50

CJNE R0,#50H,SAIN10
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT50:
CJNE R6,#33H,PONT51

CJNE R0,#51H,SAIN10
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN10:
LJMP SAINDO
PONT51:
CJNE R6,#34H,PONT52

CJNE R0,#52H,SAIN10
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT52:
CJNE R6,#35H,PONT53

CJNE R0,#53H,SAIN10
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT53:
CJNE R6,#36H,PONT54

CJNE R0,#54H,SAIN10
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT54:
CJNE R6,#37H,PONT55

CJNE R0,#55H,SAIN10
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT55:
CJNE R6,#38H,PONT56

CJNE R0,#56H,SAIN11
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT56:
CJNE R6,#39H,PONT57

CJNE R0,#57H,SAIN11
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN11:
LJMP SAINDO
PONT57:
CJNE R6,#3AH,PONT58

CJNE R0,#58H,SAIN11
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT58:
CJNE R6,#3BH,SAINDO

CJNE R0,#59H,SAINDO
MOV A,PONTEIROS
XRL A,#03H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAINDO:
RET

PONTEIRO_MIN:
CJNE R6,#00H,PONT00

CJNE R0,#00H,SAIN01
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN01:
LJMP SAINDO0
PONT00:
CJNE R6,#01H,PONT01

CJNE R0,#01H,SAIN01
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA


MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT01:
CJNE R6,#02H,PONT02

CJNE R0,#02H,SAIN01
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT02:
CJNE R6,#03H,PONT03

CJNE R0,#03H,SAIN01
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN02:
LJMP SAINDO0
PONT03:
CJNE R6,#04H,PONT04

CJNE R0,#04H,SAIN02
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT04:
CJNE R6,#05H,PONT05

CJNE R0,#05H,SAIN02
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT05:
CJNE R6,#06H,PONT06

CJNE R0,#06H,SAIN02
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT06:
CJNE R6,#07H,PONT07

CJNE R0,#07H,SAIN03
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT07:
CJNE R6,#08H,PONT08

CJNE R0,#08H,SAIN03
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT08:
CJNE R6,#09H,PONT09

CJNE R0,#09H,SAIN03
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN03:
LJMP SAINDO0
PONT09:
CJNE R6,#0AH,PONT010

CJNE R0,#10H,SAIN03
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT010:
CJNE R6,#0BH,PONT011

CJNE R0,#11H,SAIN03
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT011:
CJNE R6,#0CH,PONT012

CJNE R0,#12H,SAIN03
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT012:
CJNE R6,#0DH,PONT013

CJNE R0,#13H,SAIN03
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN04:
LJMP SAINDO0
PONT013:
CJNE R6,#0EH,PONT014

CJNE R0,#14H,SAIN04
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT014:
CJNE R6,#0FH,PONT015

CJNE R0,#15H,SAIN04
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT015:
CJNE R6,#10H,PONT016

CJNE R0,#16H,SAIN04
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT016:
CJNE R6,#11H,PONT017

CJNE R0,#17H,SAIN05
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT017:
CJNE R6,#12H,PONT018

CJNE R0,#18H,SAIN05
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN05:
LJMP SAINDO0
PONT018:
CJNE R6,#13H,PONT019

CJNE R0,#19H,SAIN05
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT019:
CJNE R6,#14H,PONT020

CJNE R0,#20H,SAIN05
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT020:
CJNE R6,#15H,PONT021

CJNE R0,#21H,SAIN05
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT021:
CJNE R6,#16H,PONT022

CJNE R0,#22H,SAIN05
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT022:
CJNE R6,#17H,PONT023

CJNE R0,#23H,SAIN06
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT023:
CJNE R6,#18H,PONT024

CJNE R0,#24H,SAIN06
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT024:
CJNE R6,#19H,PONT025

CJNE R0,#25H,SAIN06
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN06:
LJMP SAINDO0
PONT025:
CJNE R6,#1AH,PONT026

CJNE R0,#26H,SAIN06
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT026:
CJNE R6,#1BH,PONT027

CJNE R0,#27H,SAIN06
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO
PONT027:
CJNE R6,#1CH,PONT028

CJNE R0,#28H,SAIN06
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT028:
CJNE R6,#1DH,PONT029

CJNE R0,#29H,SAIN07
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT029:
CJNE R6,#1EH,PONT030

CJNE R0,#30H,SAIN07
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT030:
CJNE R6,#1FH,PONT031

CJNE R0,#31H,SAIN07
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B
LCALL MANDA
SAIN07:
LJMP SAINDO0
PONT031:
CJNE R6,#20H,PONT032

CJNE R0,#32H,SAIN07
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT032:
CJNE R6,#21H,PONT033

CJNE R0,#33H,SAIN07
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT033:
CJNE R6,#22H,PONT034

CJNE R0,#34H,SAIN07
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT034:
CJNE R6,#23H,PONT035

CJNE R0,#35H,SAIN07
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B
LCALL MANDA
LJMP SAINDO0
PONT035:
CJNE R6,#24H,PONT036

CJNE R0,#36H,SAIN08
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT036:
CJNE R6,#25H,PONT037

CJNE R0,#37H,SAIN08
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT037:
CJNE R6,#26H,PONT038

CJNE R0,#38H,SAIN08
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN08:
LJMP SAINDO0
PONT038:
CJNE R6,#27H,PONT039

CJNE R0,#39H,SAIN08
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT039:
CJNE R6,#28H,PONT040

CJNE R0,#40H,SAIN08
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT040:
CJNE R6,#29H,PONT041

CJNE R0,#41H,SAIN08
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT041:
CJNE R6,#2AH,PONT042

CJNE R0,#42H,SAIN08
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT042:
CJNE R6,#2BH,PONT043

CJNE R0,#43H,SAIN09
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT043:
CJNE R6,#2CH,PONT044

CJNE R0,#44H,SAIN09
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT044:
CJNE R6,#2DH,PONT045

CJNE R0,#45H,SAIN09
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN09:
LJMP SAINDO0
PONT045:
CJNE R6,#2EH,PONT046

CJNE R0,#46H,SAIN09
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT046:
CJNE R6,#2FH,PONT047

CJNE R0,#47H,SAIN09
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT047:
CJNE R6,#30H,PONT048

CJNE R0,#48H,SAIN09
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT048:
CJNE R6,#31H,PONT049

CJNE R0,#49H,SAIN09
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT049:
CJNE R6,#32H,PONT050

CJNE R0,#50H,SAIN010
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT050:
CJNE R6,#33H,PONT051

CJNE R0,#51H,SAIN010
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN010:
LJMP SAINDO0
PONT051:
CJNE R6,#34H,PONT052

CJNE R0,#52H,SAIN010
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT052:
CJNE R6,#35H,PONT053

CJNE R0,#53H,SAIN010
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT053:
CJNE R6,#36H,PONT054

CJNE R0,#54H,SAIN010
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT054:
CJNE R6,#37H,PONT055

CJNE R0,#55H,SAIN010
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT055:
CJNE R6,#38H,PONT056

CJNE R0,#56H,SAIN011
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT056:
CJNE R6,#39H,PONT057

CJNE R0,#57H,SAIN011
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAIN011:
LJMP SAINDO0
PONT057:
CJNE R6,#3AH,PONT058

CJNE R0,#58H,SAIN011
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDO0
PONT058:
CJNE R6,#3BH,SAINDO0

CJNE R0,#59H,SAINDO0
MOV A,PONTEIROS
XRL A,#07H
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAINDO0:
RET

PONTEIRO_HOR:
CJNE R6,#00H,PONTH0 ;24

CJNE R0,#00H,VOLTALE
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
VOLTALE:
LJMP PONTH11
PONTH0:
CJNE R6,#05H,PONTH1 ;1

CJNE R0,#01H,VOLTALE1
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA


MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
VOLTALE1:
LJMP PONTH12
PONTH1:
CJNE R6,#0AH,PONTH2 ;2

CJNE R0,#02H,VOLTALE2
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
VOLTALE2:
LJMP PONTH13

PONTH2:
CJNE R6,#0FH,PONTH3 ;3

CJNE R0,#03H,VOLTALE3
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
VOLTALE3:
LJMP PONTH14
PONTH3:
CJNE R6,#20D,PONTH4 ;4

CJNE R0,#04H,VOLTALE4
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
VOLTALE4:
LJMP PONTH15

PONTH4:
CJNE R6,#25D,PONTH5 ;5

CJNE R0,#05H,VOLTALE5
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
VOLTALE5:
LJMP PONTH16
PONTH5:
CJNE R6,#30D,PONTH6 ;6

CJNE R0,#06H,VOLTALE6
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
VOLTALE6:
LJMP PONTH17
PONTH6:
CJNE R6,#35D,PONTH7 ;7

CJNE R0,#07H,VOLTALE7
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
VOLTALE7:
LJMP PONTH18
PONTH7:
CJNE R6,#40D,PONTH8 ;8

CJNE R0,#08H,VOLTALE8
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
VOLTALE8:
LJMP PONTH19
PONTH8:
CJNE R6,#45D,PONTH9 ;9

CJNE R0,#09H,VOLTALE9
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
VOLTALE9:
LJMP PONTH20
PONTH9:
CJNE R6,#50D,PONTH10 ;10

CJNE R0,#10H,VOLTALE10
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
VOLTALE10:
LJMP PONTH21
PONTH10:
CJNE R6,#55D,PONTH11 ;11

CJNE R0,#11H,VOLTALE11
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
VOLTALE11:
LJMP PONTH22
PONTH11:
CJNE R6,#00D,PONTH12 ;12

CJNE R0,#12H,SAINH3
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
PONTH12:
CJNE R6,#05D,PONTH13 ;13

CJNE R0,#13H,SAINH3
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAINH3:
LJMP SAINDOH
PONTH13:
CJNE R6,#0AH,PONTH14 ;14

CJNE R0,#14H,SAINH4
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
PONTH14:
CJNE R6,#0FH,PONTH15 ;15

CJNE R0,#15H,SAINH4
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
PONTH15:
CJNE R6,#20D,PONTH16 ;16

CJNE R0,#16H,SAINH4
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
PONTH16:
CJNE R6,#25D,PONTH17 ;17

CJNE R0,#17H,SAINH4
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAINH4:
LJMP SAINDOH
PONTH17:
CJNE R6,#30D,PONTH18 ;18

CJNE R0,#18H,SAINH4
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
PONTH18:
CJNE R6,#35D,PONTH19 ;19

CJNE R0,#19H,SAINH4
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
PONTH19:
CJNE R6,#40D,PONTH20 ;20

CJNE R0,#20H,SAINH4
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
PONTH20:
CJNE R6,#45D,PONTH21 ;21

CJNE R0,#21H,SAINDOH
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
PONTH21:
CJNE R6,#50D,PONTH22 ;22

CJNE R0,#22H,SAINDOH
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
LJMP SAINDOH
PONTH22:
CJNE R6,#55D,SAINDOH ;23

CJNE R0,#23H,SAINDOH
MOV A,PONTEIROS
XRL A,#01111111B
CPL A

LCALL MANDA

MOV A,#00000000B

LCALL MANDA
SAINDOH:
RET
CAI:
MOV A,R6
MOVC A,@A+DPTR
LCALL MANDA
INC R6
MOV A,#0FFH
LCALL MANDA
CLR LATCH
SETB LATCH
LCALL DELAY1
CJNE R6,#07H,CAI
RET

AMOSTRA_SEGU:
CJNE R0,#00H,VAI
MOV DPTR,#ZER
MOV R6,#00H
LCALL CAI
SJMP SEGUE
VAI:
CJNE R0,#01H,VAI1
MOV DPTR,#UM
MOV R6,#00H
LCALL CAI
SJMP SEGUE
VAI1:
CJNE R0,#02H,VAI2
MOV DPTR,#DOIS
MOV R6,#00H
LCALL CAI
SJMP SEGUE
VAI2:
CJNE R0,#03H,VAI3
MOV DPTR,#TRES
MOV R6,#00H
LCALL CAI
SJMP SEGUE
VAI3:
CJNE R0,#04H,VAI4
MOV DPTR,#QUATRO
MOV R6,#00H
LCALL CAI
SJMP SEGUE
VAI4:
CJNE R0,#05H,VAI5
MOV DPTR,#CINCO
MOV R6,#00H
LCALL CAI
SJMP SEGUE
VAI5:
CJNE R0,#06H,VAI6
MOV DPTR,#SEIS
MOV R6,#00H
LCALL CAI
SJMP SEGUE
VAI6:
CJNE R0,#07H,VAI7
MOV DPTR,#SETE
MOV R6,#00H
LCALL CAI
SJMP SEGUE
VAI7:
CJNE R0,#08H,VAI8
MOV DPTR,#OITO
MOV R6,#00H
LCALL CAI
SJMP SEGUE
VAI8:
CJNE R0,#09H,SEGUE
MOV DPTR,#NOVE
MOV R6,#00H
LCALL CAI
SEGUE:
RET

REGLOG:
MOV R6,#00H
MOV DPTR,#RELOGIO_DIGITAL
MOV R1,PONTOS1
REGLO:
MOV A,R6
MOVC A,@A+DPTR
LCALL MANDA
MOV A,#0FFH
LCALL MANDA
CLR LATCH
SETB LATCH
LCALL DELAY1
INC R6
CJNE R6,#0CH,REGLO

MOV R0,SEGU
LCALL AMOSTRA_SEGU
MOV R0,SEGD
LCALL AMOSTRA_SEGU
LCALL DELAY1

MOV A,PONTOS
LCALL MANDA
MOV A,#0FFH
LCALL MANDA
CLR LATCH
SETB LATCH
LCALL DELAY1

MOV A,#0FFH
LCALL MANDA
MOV A,#0FFH
LCALL MANDA
CLR LATCH
SETB LATCH
LCALL DELAY1

MOV R0,MINU
LCALL AMOSTRA_SEGU
MOV R0,MIND
LCALL AMOSTRA_SEGU
LCALL DELAY1

MOV A,PONTOS
LCALL MANDA
MOV A,#0FFH
LCALL MANDA
CLR LATCH
SETB LATCH
LCALL DELAY1

MOV A,#0FFH
LCALL MANDA
MOV A,#0FFH
LCALL MANDA
CLR LATCH
SETB LATCH
LCALL DELAY1

MOV R0,HORU
LCALL AMOSTRA_SEGU
MOV R0,HORD
LCALL AMOSTRA_SEGU

MOV R6,#00H
MOV DPTR,#RELOGIO_DIGITAL
REGLO1:
MOV A,R6
MOVC A,@A+DPTR
LCALL MANDA
MOV A,#0FFH
LCALL MANDA
CLR LATCH
SETB LATCH
LCALL DELAY1
INC R6
CJNE R6,#0BH,REGLO1

MOV R0,MUDAR1

DJNZ R0,SAIND1
MOV MUDAR2,#00H
MOV MUDAR1,#0FFH

SAIND1:
MOV MUDAR1,R0
RET

INTEX0:
PUSH PSW
PUSH ACC
SAINDO9:
MOV R0,MUDAR2
CJNE R0,#00H,TELA1
LCALL AMOSTRAGEM
SJMP SAINDO10
TELA1:
CJNE R0,#01H,TELA2
LCALL AMOSTRAGEM1
SJMP SAINDO10
TELA2:
CJNE R0,#02H,SAINDO9
LCALL REGLOG
SAINDO10:
POP ACC
POP PSW

RETI

RELOGIO_SHOW0:
DB 11111100B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111110B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111110B ;1
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B ;15 LINHAS

DB 11111100B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111110B ;2
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111110B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B ;30 LINHAS

DB 11111100B ;3
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111110B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111110B ;4
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B ;45 LINHAS

DB 11111100B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111110B ;5 (1)
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111110B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B ;60 LINHAS

RELOGIO_DIGITAL:

DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B ;12 LINHAS

ZER:
DB 11111111B
DB 11000001B ;0
DB 10111110B
DB 10111110B
DB 11000001B
DB 11111111B
DB 11111111B

UM:
DB 11111111B
DB 11111110B
DB 10000000B ;1
DB 11011110B
DB 11011111B
DB 11111111B
DB 11111111B
DOIS:
DB 11111111B
DB 11001110B ;2
DB 10110110B
DB 10110110B
DB 11011000B
DB 11111111B
DB 11111111B
TRES:
DB 11111111B
DB 11001001B ;3
DB 10110110B
DB 10110110B
DB 11011101B
DB 11111111B
DB 11111111B
QUATRO:
DB 11111111B
DB 10000000B ;4
DB 11011011B
DB 11101011B
DB 11110011B
DB 11111111B
DB 11111111B
CINCO:
DB 11111111B
DB 10110001B ;5
DB 10101110B
DB 10101110B
DB 10001101B
DB 11111111B
DB 11111111B
SEIS:
DB 11111111B
DB 11011001B ;6
DB 10110110B
DB 10110110B
DB 11000001B
DB 11111111B
DB 11111111B
SETE:
DB 11111111B
DB 10011111B ;7
DB 10101111B
DB 10110000B
DB 10111111B
DB 11111111B
DB 11111111B
OITO:
DB 11111111B
DB 11001001B ;8
DB 10110110B
DB 10110110B
DB 11001001B
DB 11111111B
DB 11111111B
NOVE:
DB 11111111B
DB 11000001B ;9
DB 10110110B
DB 10110110B
DB 11001101B
DB 11111111B
DB 11111111B

RELOGIO_SHOW1:

DB 11111111B
DB 11111111B
DB 01100111B
DB 01101011B
DB 10011011B
DB 11111111B
DB 11111111B
DB 11111011B
DB 00000011B ;5 (1)
DB 11111011B
DB 11111111B
DB 11111111B
DB 00000101B
DB 11111111B
DB 11111111B
DB 00000111B
DB 11011011B
DB 00000111B
DB 11111111B
DB 11111111B
DB 00000111B ;60 LINHAS

DB 11110111B
DB 11011111B
DB 01111111B
DB 00000111B
DB 11111111B
DB 10000111B
DB 01111011B
DB 01111011B
DB 10000111B
DB 11111111B
DB 11111111B
DB 11111111B ;1
DB 11111111B
DB 11111111B ;15 LINHAS

DB 11111111B ;2
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B
DB 11111111B ;30 LINHAS

DB 11111111B ;3
DB 10000111B
DB 01111011B
DB 01111011B
DB 11111111B
DB 11111111B
DB 00000011B
DB 11101111B
DB 00000011B
DB 11111111B
DB 11111111B
DB 00000011B ;4
DB 11001011B
DB 01100111B
DB 11111111B
DB 11111111B
DB 00001011B

END

https://www.youtube.com/watch?v=CdsAyJiRjIU

Exibições: 10243

Comentar

Você precisa ser um membro de Laboratorio de Garagem (arduino, eletrônica, robotica, hacking) para adicionar comentários!

Entrar em Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)

Comentário de Tamara Meneghetti em 24 julho 2014 às 13:46

Obrigada Christiano e Daniel!! Ajudaram muito!! :))

Comentário de Christiano Reis em 24 julho 2014 às 11:47

Você explicou tudo Daniel! Obrigado!!!

Comentário de Daniel (OráculoX) em 24 julho 2014 às 9:34

Olá.

Creio que a palavra chave entre a velocidade do motor (RPM) e o tempo de amostragem, se chama "sincronismo", que ocorre a cada passagem pelo sensor acoplado à interrupção externa !INT0.

A cada momento em que ocorre o sincronismo, ocorrerá o disparo das linhas(colunas) dos caracteres. Sendo este disparo efetuado em um tempo definido, sendo este tempo entre uma coluna e outra, quem realmente define qual será a "resolução" dos caracteres no propeller. Sendo assim, um tempo curto gera caracteres "curtos" ou "comprimidos", e um tempo longo gera caracteres "longos" ou "esticados".

 Uma forma indireta de amostrar a velocidade do motor (RPM) seria efetuar a medida do período entre cada interrupção da interrupção externa. E esta medida sendo efetuada em cima de algum timer que exista no microcontrolador. Lembrando que a medida ideal é depois que o motor entra em regime e estabiliza sua velocidade.

 Espero ter ajudado. T+. ^^

Comentário de Christiano Reis em 24 julho 2014 às 9:02

Não tem RPM. O segredo da coisa é o tempo de amostragem. Como você falou é por tentativa e erro. Se você for na função DELAY:, e modificar a contagem dos registradores no qual R3 é o contador e o R7 é o multiplicador. você poderá alterar o tempo de amostragem. Qualquer coisa etamos ai para ajudar.

Comentário de Tamara Meneghetti em 24 julho 2014 às 0:28

Olá!!

Estou fazendo um propeller, gostaria de saber qual a referência que vocês usam de rpm's para o motor? Existe alguma relação ou é tentativa e erro? Estou procurando essa relação e não encontro, se puderem me ajudar... Agradeço desde já!!

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço