FMUSER Transmitir vídeo e áudio sem fio mais fácil!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> albanês
ar.fmuser.org -> árabe
hy.fmuser.org -> armênio
az.fmuser.org -> Azerbaijão
eu.fmuser.org -> Basco
be.fmuser.org -> bielorrusso
bg.fmuser.org -> búlgaro
ca.fmuser.org -> catalão
zh-CN.fmuser.org -> Chinês (simplificado)
zh-TW.fmuser.org -> chinês (tradicional)
hr.fmuser.org -> croata
cs.fmuser.org -> checo
da.fmuser.org -> dinamarquês
nl.fmuser.org -> holandês
et.fmuser.org -> estoniano
tl.fmuser.org -> filipino
fi.fmuser.org -> finlandês
fr.fmuser.org -> francês
gl.fmuser.org -> galego
ka.fmuser.org -> georgiano
de.fmuser.org -> alemão
el.fmuser.org -> grego
ht.fmuser.org -> crioulo haitiano
iw.fmuser.org -> hebraico
hi.fmuser.org -> Hindi
hu.fmuser.org -> húngaro
is.fmuser.org -> islandês
id.fmuser.org -> indonésio
ga.fmuser.org -> irlandês
it.fmuser.org -> italiano
ja.fmuser.org -> Japonês
ko.fmuser.org -> coreano
lv.fmuser.org -> letão
lt.fmuser.org -> Lituano
mk.fmuser.org -> macedônio
ms.fmuser.org -> malaio
mt.fmuser.org -> maltês
no.fmuser.org - norueguês
fa.fmuser.org -> persa
pl.fmuser.org -> polonês
pt.fmuser.org -> português
ro.fmuser.org -> romeno
ru.fmuser.org -> russo
sr.fmuser.org -> Sérvio
sk.fmuser.org -> Eslovaco
sl.fmuser.org -> esloveno
es.fmuser.org -> espanhol
sw.fmuser.org -> Swahili
sv.fmuser.org -> sueco
th.fmuser.org -> Tailandês
tr.fmuser.org -> turco
uk.fmuser.org -> ucraniano
ur.fmuser.org -> Urdu
vi.fmuser.org -> vietnamita
cy.fmuser.org -> Galês
yi.fmuser.org -> iídiche
Transmissor FM estéreo controle 51 MCU fazendo BH1415F
Descrição: 1, controlar usando MCS51, usando o projeto menor sistema de aplicação, o circuito externo é muito simples! 16 design de botão, você pode controlar 80.0 ~ faixa de freqüência 109.9MHz;
2,4 dígitos ânodo comum LED exibição frequência;
Características: 1, pode ser definido de forma independente cem, dez, um pouco, a freqüência do ponto decimal;
2, os presets de freqüência de transmissão;
3, controles mono / estéreo; instruções transmissor banda estéreo;
-------------------------------------------------- -------------------------------------
; ***************************;
; CNC FM controlador;
; ***************************;
;
; 26H-29H exibição decimal, um pouco, dez, cem número de código BCD, os dados 24H-25H controle de freqüência de descarga (hexadecimal)
;
CONBITL EQU 21H; byte de controle de freqüência baixa 8
CONBITH EQU 22H; byte de controle de freqüência alta de oito
PALAVRA-CHAVE EQU 23H; Ao armazenar valor de chave a exploração portuária P1
;
;
ORG 0000H; programa endereço de início
LJMP INÍCIO; execução iniciar a transferência de
ORG 0003H;
RETI; não interrompa programa
ORG 000BH;
RETI; não interrompa programa
ORG 0013H;
RETI; não interrompa programa
ORG 001BH;
RETI; não interrompa programa
ORG 0023H;
RETI; não interrompa programa
ORG 002BH;
RETI; não interrompa programa
;
; Inicialização procedimento
CLEARMEN: MOV R0, # 20H; 20H-29H circulação apuradas
MOV R1, # 0AH;
CLEARLOOP: MOV @ R0, # 00H;
INC R0;
DJNZ R1, CLEARLOOP;
MOV P0, # 0FFH; quatro portas definidas
MOV P1, # 0FFH;
MOV P2, # 0FFH;
MOV P3, # 0FFH;
Ações BH3.0 proibidas; CLR P1415
CLR P3.1;
CLR P3.2;
LCALL KEYFUN15; modo de transmissão de som estéreo doméstico, o indicador transmissor estéreo aberto
CLEAR1: PCON MOV, # 00H; registo de controlo é cancelado
MOV 29H, # 00H; definir o valor inicial de 88MHZ (mostrado como 088.0)
MOV 28H, # 08H;
MOV 27H, # 08H;
MOV 26H, # 00H;
LCALL DISPUPDAT; escreve chips BH1415 (modificado freqüências de transmissão)
RET; sub-rotina retorna
;
, Principal
INÍCIO: LCALL CLEARMEN; poder na inicialização
PRINCIPAL: LCALL keywork; investigar sub-rotina chave
LCALL Display; tempo de exibição LED
AJMP PRINCIPAL; transferir ciclo PRINCIPAL
NOP; tratamento de erros PC
NOP;
AJMP INÍCIO; re-inicializar
;
; 4 * 4 digitalização chave matriz de verificação de rotina
Keywork: MOV P1, # 0FFH;
CLR P1.0;
MOV A, P1;
ANL A, # 0F0H;
CJNE A, # 0F0H, KEYCON;
SETB P1.0;
CLR P1.1;
MOV A, P1;
ANL A, # 0F0H;
CJNE A, # 0F0H, KEYCON;
SETB P1.1;
CLR P1.2;
MOV A, P1;
ANL A, # 0F0H;
CJNE A, # 0F0H, KEYCON;
SETB P1.2;
CLR P1.3;
MOV A, P1;
ANL A, # 0F0H;
CJNE A, # 0F0H, KEYCON;
SETB P1.3;
RET;
KEYCON: DL10MS LCALL; processamento de estabilização
MOV A, P1;
ANL A, # 0F0H;
CJNE A, # 0F0H, KEYCHE;
Keyout: RET; interferência, a sub-rotina retorna
KEYCHE: MOV A, P1;
PALAVRA-CHAVE MOV, A;
CJLOOP: LCALL Display;
MOV A, P1;
ANL A, # 0F0H;
CJNE A, # 0F0H, CJLOOP;
MOV R7, # 00H;
MOV DPTR, # keytab;
CHEKEYLOOP: MOV A, R7;
MOVC Um, @ A + DPTR;
XRL A, palavra-chave;
JZ KEYOK; 0 (igual) vire KEYOK
INC R7; gama, além de um número de tabela de consulta
CJNE R7, # 10H, CHEKEYLOOP;
RET;
;
KEYOK: MOV A, R7;
MOV B, A, B dentro
RL A; esquerda
ADD A, B, adicionando (chave para lidar com a JMP 3 pela instrução 3-byte)
MOV DPTR, # KEYFUNTAB;
JMP @ A + DPTR;
KEYFUNTAB: LJMP KEYFUN00;
LJMP KEYFUN01;
LJMP KEYFUN02;
LJMP KEYFUN03
LJMP KEYFUN04
LJMP KEYFUN05
LJMP KEYFUN06
LJMP KEYFUN07
LJMP KEYFUN08
LJMP KEYFUN09
LJMP KEYFUN10
LJMP KEYFUN11
LJMP KEYFUN12
LJMP KEYFUN13
LJMP KEYFUN14
LJMP KEYFUN15; salto para a funcionalidade chave 15th do programa
RET; retorno de erro de transferência em massa
;
, O número da chave correspondente a tabela de valores de porta a P1 (enquanto pressiona duas chaves são operação inválida)
Keytab: DB 0EEH, 0DEH, 0BEH, 7EH, 0EDH, 0DDH, 0BDH, 7DH
DB 0EBH, 0DBH, 0BBH, 7BH, 0E7H, 0D7H, 0B7H, 77H, 0FFH, 0FFH
;
, Funcionalidade chave Não. 0 do programa
KEYFUN00: INC 29H;
MOV A, 29H;
CLR C;
CJNE A, # 02H, FUN00;
FUN00: JC FUN00OUT;
MOV 29H, # 00H;
FUN00OUT: MOV A, 29H;
XRL A, # 01H;
JNZ F00OUT1;
MOV 28H, # 00H;
AJMP F00OUT;
F00OUT1: MOV 28H, # 08H;
F00OUT: LCALL DISPUPDAT;
RET; Returns
;
, A funcionalidade chave 1st do programa
KEYFUN01: INC 28H;
MOV A, 28H;
CLR C;
CJNE A, # 0AH, FUN01;
FUN01: JC FUN01OUT;
MOV 28H, # 00H;
FUN01OUT: MOV A, 29H;
XRL A, # 01H;
JNZ F01OUT;
MOV 28H, # 00H;
AJMP F001OUT;
F01OUT: MOV A, 28H;
XRL A, # 08H;
JZ F001OUT;
MOV A, 28H;
XRL A, # 09H;
JZ F001OUT;
MOV 28H, # 08H;
F001OUT: LCALL DISPUPDAT;
RET; Returns
;
, O programa de função-chave 2nd
KEYFUN02: INC 27H; um dígito além 1
MOV A, 27H;
CLR C;
CJNE A, # 0AH, FUN02; determinar se a menos de 10
FUN02: JC FUN02OUT; menos de 10 transforma FUN02OUT
MOV 27H, # 00H; maior do que ou igual a 10 é limpo para 0
FUN02OUT: LCALL DISPUPDAT; escrevendo chip de controle (freqüência de transmissão modificado)
RET;
;
, A funcionalidade chave 3rd do programa
KEYFUN03: INC 26H; um dígito além 1
MOV A, 26H;
CLR C;
CJNE A, # 0AH, FUN03; julgamento não seja inferior a 10
FUN03: JC FUN03OUT; menos de 10 transforma FUN03OUT
MOV 26H, # 00H; maior do que ou igual a 10 é limpo para 0
FUN03OUT: LCALL DISPUPDAT; escrevendo chip de controle (freqüência de transmissão modificado)
RET; Returns
;
; 04 programas funcionais (freqüência teclas predefinidas)
KEYFUN04: MOV 29H, # 01H; predefinido freqüência 109.0MHZ transmissão
MOV 28H, # 00H
MOV 27H, # 09H
MOV 26H, # 00H
LCALL DISPUPDAT; chip de controle de escrita (frequência de transmissão modificado)
RET
;
; 05 programas funcionais (freqüência teclas predefinidas)
KEYFUN05: MOV 29H, # 01H; predefinido freqüência 108.0MHZ transmissão
MOV 28H, # 00H
MOV 27H, # 08H
MOV 26H, # 00H
LCALL DISPUPDAT; chip de controle de escrita (frequência de transmissão modificado)
RET
;
; 06 programas funcionais (freqüência teclas predefinidas)
KEYFUN06: MOV 29H, # 01H; predefinido freqüência 105.0MHZ transmissão
MOV 28H, # 00H
MOV 27H, # 05H
MOV 26H, # 00H
LCALL DISPUPDAT; chip de controle de escrita (frequência de transmissão modificado)
RET
;
, A funcionalidade chave 7th do programa (chaves de freqüência predefinida)
KEYFUN07: MOV 29H, # 01H; predefinido freqüência 100.0MHZ transmissão
MOV 28H, # 00H
MOV 27H, # 00H
MOV 26H, # 00H
LCALL DISPUPDAT; chip de controle de escrita (frequência de transmissão modificado)
RET
;
; 08 programas funcionais (freqüência teclas predefinidas)
KEYFUN08: MOV 29H, # 00H; 98.0MHZ frequência de transmissão predefinida
MOV 28H, # 09H
MOV 27H, # 08H
MOV 26H, # 00H
LCALL DISPUPDAT; chip de controle de escrita (frequência de transmissão modificado)
RET
;
; 09 programas funcionais (freqüência teclas predefinidas)
KEYFUN09: MOV 29H, # 00H; 96.0MHZ frequência de transmissão predefinida
MOV 28H, # 09H
MOV 27H, # 06H
MOV 26H, # 00H
LCALL DISPUPDAT; chip de controle de escrita (frequência de transmissão modificado)
RET
;
, A funcionalidade chave 10th do programa (chaves de freqüência predefinida)
KEYFUN10: MOV 29H, # 00H; 94.0MHZ frequência de transmissão predefinida
MOV 28H, # 09H
MOV 27H, # 04H
MOV 26H, # 00H
LCALL DISPUPDAT; chip de controle de escrita (frequência de transmissão modificado)
RET
;
; 11 programas funcionais (freqüência teclas predefinidas)
KEYFUN11: MOV 29H, # 00H; 92.0MHZ frequência de transmissão predefinida
MOV 28H, # 09H
MOV 27H, # 02H
MOV 26H, # 00H
LCALL DISPUPDAT; chip de controle de escrita (frequência de transmissão modificado)
RET
;
, A funcionalidade chave 12th do programa (chaves de freqüência predefinida)
KEYFUN12: MOV 29H, # 00H; 90.0MHZ frequência de transmissão predefinida
MOV 28H, # 09H
MOV 27H, # 00H
MOV 26H, # 00H
LCALL DISPUPDAT; chip de controle de escrita (frequência de transmissão modificado)
RET
;
, A funcionalidade chave 13th do programa (chaves de freqüência predefinida)
KEYFUN13: MOV 29H, # 00H; 88.0MHZ frequência de transmissão predefinida
MOV 28H, # 08H
MOV 27H, # 08H
MOV 26H, # 00H
LCALL DISPUPDAT; chip de controle de escrita (frequência de transmissão modificado)
RET
;
, A funcionalidade chave 14th do programa (chaves de freqüência predefinida); transmissão predefinido 87.0MHZ freqüência
KEYFUN14: MOV 29H, # 00H
MOV 28H, # 08H
MOV 27H, # 07H
MOV 26H, # 08H
LCALL DISPUPDAT; chip de controle de escrita (frequência de transmissão modificado)
RET
;
; 15 programas funcionais chave (key configuração estéreo / mono)
KEYFUN15: CPL 03H;
JNB 03H, MONO;
CLR P3.3;
LCALL PUTBIT;
RET; Returns
MON SETB P3.3;
LCALL PUTBIT;
RET; Returns
;
, A BCD para hexadecimal, e cinco de controle de código síntese opcode, escreva chip de controle
DISPUPDAT: LCALL bcdb;
LCALL CONCOMMAND;
LCALL PUTBIT; enviar palavras de controle para BH1415
RET; Returns
;
; A BCD para programa hexadecimal
Bcdb: MOV CONBITL, # 00H; palavra de controle para 0
CONBITH MOV, # 00H; palavra de controle para 0
MOV CONBITL, 26H; casas decimais controlar palavra no baixo 8
MOV A, 27H; um dígito por operações 10
MOV B, # 10;
LCALL MULLOOP; sub-rotina de multiplicação sintonia
MOV A, 28H; 100 operação de multiplicação de dez dígitos
MOV B, # 100;
LCALL MULLOOP; sub-rotina de multiplicação sintonia
MOV A, 29H;
JNZ ADD3E8; centenas dígito é uma volta ADD3E8 (mais operações 1000)
RET; centenas dígito é 0 saída
ADD3E8: CLR C; bandeira binário claro
MOV A, # 0E8H; baixo víbora 8-bit
ADD A, CONBITL; acumular
MOV CONBITL, A; CONBITL volta
MOV A, # 03H; alta oito Adição
ADDC A, CONBITH;
MOV CONBITH, A; CONBITH volta
RET; Returns
;
, Multiplicação e processo de acumulação (a quatro exibição do código BCD decimal em um número binário)
MULLOOP: MUL AB; multiplicação
Limpar flag de carry; CLR C
ADD A, CONBITL; lote com CONBITL acrescentando baixo 8
MOV CONBITL, A; CONBITL volta
MOV A, CONBITH;
ADDC A, B; integrado no acumulador de alta 8 bits com CONBITH
MOV CONBITH, A; CONBITH volta
RET; Returns
;
, Os dados de controle de frequência e cinco síntese código de controle palavra de controle BH1415
CONCOMMAND: ANL CONBITH, # 07H;
MOV A, 20H;
Um ORL, CONBITH;
MOV CONBITH, A;
RET; Returns
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Programa Display;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Ânodo comum LED, seção de saída da porta P0 de código, P2 saída porta palavra digitalização
EXIBIÇÃO: MOV R1, # 26H; exibe o primeiro endereço
MOV R5, # 0FEH; Vamos palavra digitalização
JOGO: MOV A, R5; em A
MOV P2, A; saída porta P2
MOV A, @ R1; buscar dados de exibição
MOV DPTR, # TAB; tomar a primeira tabela de códigos segmento endereço
MOVC A, @ A + DPTR; Segmento investigação
MOV P0, A; de saída P0
MOV A, R5; lê a palavra digitalizada
JB ACC.1, PLAY1; do que dez (LED), o ponto decimal não é exibido
CLR P0.7; tinha dez anos, ponto de exibição decimal
PLAY1: LCALL DL1MS; acendeu um milissegundo
INC R1; apontando para o lado dos dados de exibição
JNB ACC.3, ENDOUT; foi o quarto LED, saída
RL A, em vez disso, deixou uma
MOV R5, A; volta R5
SETB P0.7; decimal Off
JOGO AJMP; transferência ciclo JOGO
ENDOUT: MOV P2, # 0FFH; show termina off saída de vídeo
MOV P0, # 0FFH;
RET; Returns
;
; 0-9 da Seção Shenyang cronômetro
TAB: DB 0C0H, 0F9H, 0A4H, 0B0H, 99H, 92H, 82H, 0F8H, 80H, 90H, 0FFH, 0FFH
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Enviar controle sub-rotina byte;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
PUTBIT: MOV A, CONBITL; menor palavra de controle 8-bit em um
SETB P3.2; BH1415 Ativar (escrever)
LCALL PUT; enviar oito
MOV A, CONBITH; alta oito palavra controle em um
LCALL PUT; enviar oito
CLR P3.2; BH1415 escrever desativado
CLR P3.0; redefinir
CLR P3.1; redefinir
RET; Returns
;
, Sub-rotina Byte transmissão
PUT: MOV R3, # 8; enviar oito controle
CLR C; Qing C
PUT1: RRC A; Carry direita (começando de baixo)
MOV P3.0, C; baixo à porta P3.0
NOP; atrasar 4 microssegundos
NOP;
NOP;
NOP;
SETB P3.1; dados de trava (borda de subida de dados trava)
NOP; atrasar 4 microssegundos
NOP;
NOP;
NOP;
CLR P3.1;
DJNZ R3, PUT1; pedaços 8 não terminar sua vez PUT1 recorrência
8 final acabado; RET
;
; 513 sub-rotina de atraso microssegundo
DL513: MOV R3, # 0FFH
DL513LOOP: DJNZ R3, DL513LOOP
RET
;
; 1 sub-rotina de atraso milissegundo (luzes LED usado)
DL1MS: MOV R4, # 02H
DL1MSLOOP: LCALL DL513
DJNZ R4, DL1MSLOOP
RET
;
; 10 rotina demora ms (jitter eliminação por)
DL10MS: MOV R6, # 0AH
DL10MSLOOP: LCALL DL1MS
DJNZ R6, DL10MSLOOP
RET
;
;
END
Nosso outro produto:
Digite o e-mail para obter uma surpresa
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> albanês
ar.fmuser.org -> árabe
hy.fmuser.org -> armênio
az.fmuser.org -> Azerbaijão
eu.fmuser.org -> Basco
be.fmuser.org -> bielorrusso
bg.fmuser.org -> búlgaro
ca.fmuser.org -> catalão
zh-CN.fmuser.org -> Chinês (simplificado)
zh-TW.fmuser.org -> chinês (tradicional)
hr.fmuser.org -> croata
cs.fmuser.org -> checo
da.fmuser.org -> dinamarquês
nl.fmuser.org -> holandês
et.fmuser.org -> estoniano
tl.fmuser.org -> filipino
fi.fmuser.org -> finlandês
fr.fmuser.org -> francês
gl.fmuser.org -> galego
ka.fmuser.org -> georgiano
de.fmuser.org -> alemão
el.fmuser.org -> grego
ht.fmuser.org -> crioulo haitiano
iw.fmuser.org -> hebraico
hi.fmuser.org -> Hindi
hu.fmuser.org -> húngaro
is.fmuser.org -> islandês
id.fmuser.org -> indonésio
ga.fmuser.org -> irlandês
it.fmuser.org -> italiano
ja.fmuser.org -> Japonês
ko.fmuser.org -> coreano
lv.fmuser.org -> letão
lt.fmuser.org -> Lituano
mk.fmuser.org -> macedônio
ms.fmuser.org -> malaio
mt.fmuser.org -> maltês
no.fmuser.org - norueguês
fa.fmuser.org -> persa
pl.fmuser.org -> polonês
pt.fmuser.org -> português
ro.fmuser.org -> romeno
ru.fmuser.org -> russo
sr.fmuser.org -> Sérvio
sk.fmuser.org -> Eslovaco
sl.fmuser.org -> esloveno
es.fmuser.org -> espanhol
sw.fmuser.org -> Swahili
sv.fmuser.org -> sueco
th.fmuser.org -> Tailandês
tr.fmuser.org -> turco
uk.fmuser.org -> ucraniano
ur.fmuser.org -> Urdu
vi.fmuser.org -> vietnamita
cy.fmuser.org -> Galês
yi.fmuser.org -> iídiche
FMUSER Transmitir vídeo e áudio sem fio mais fácil!
Contato
Endereço:
No.305 Sala HuiLan Edifício No.273 Huanpu Road Guangzhou China 510620
Categorias
Newsletter