FMUSER Transmitir vídeo e áudio sem fio mais fácil!

[email protegido] WhatsApp + 8615915959450
Língua

    Transmissor FM estéreo controle 51 MCU fazendo BH1415F

    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

    Liste todos os Pergunta

    Alcunha/Nickname

    E-mail

    Frequentes

    Nosso outro produto:






      Digite o e-mail para obter uma surpresa

      fmuser.org

      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

       
      1 字段 2 字段 3 字段 4 字段 5 字段 6 字段 7 字段 8 字段 9 字段 10 字段
  •  

    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

    E-mail
    [email protegido]

    Tel/What Apps:
    +8615915959450

  • Categorias

  • Newsletter

    PRIMEIRO OU NOME COMPLETO

    Email

  • solução paypal Moneygram Western Union Banco da China
    E-mail[email protegido]   WhatsApp: +8615915959450 Skype: sky198710021 Fala comigo
    Copyright 2006 2020-Powered By www.fmuser.org

    Contate-nos