FMUSER Wirless Transmit Video and Audio Máis fácil!

[protexido por correo electrónico] WhatsApp + 8618078869184
Lingua

    51 MCU transmisor FM estéreo control facendo BH1415F

     

    51 MCU transmisor FM estéreo control facendo BH1415F

    Descrición: 1, control mediante MCS51, mediante o deseño menor sistema de aplicación, o circuíto externo é moi sinxelo! deseño de botón 16, pode controlar franxa de frecuencia 80.0MHz 109.9 ~;
    2,4 díxitos ánodo común LED exhibición frecuencia;
    Características: 1, pode ser definido de forma independente cen, dez, un pouco, a frecuencia do punto decimal;
    2, os modelos de frecuencia de transmisión;
    3, controis mono / estéreo; instrucións transmisor estéreo banda;
    -------------------------------------------------- -------------------------------------
    ; ***************************;
    ; controlador CNC FM;
    ; ***************************;
    ;
    ; 26H-29H exhibición casa decimal, un pouco, dez, cen número de código BCD, datos de control de frecuencia de descarga 24H-25H (hexadecimal)
    ;
    CONBITL equ 21H; control byte de baixa frecuencia 8
    CONBITH equ 22H; byte de control de frecuencia alta de oito
    Contrasinal equ 23H; Ao gardar valor de clave varrido de portas P1
    ;
    ;
    ORG 0000H; programa de dirección de inicio
    LJMP iniciar; execución iniciar a transferencia
    ORG 0003H;
    Réti; non interrompa programa
    ORG 000BH;
    Réti; non interrompa programa
    ORG 0013H;
    Réti; non interrompa programa
    ORG 001BH;
    Réti; non interrompa programa
    ORG 0023H;
    Réti; non interrompa programa
    ORG 002BH;
    Réti; non interrompa programa
    ;
    ; procedemento de arranque
    CLEARMEN: MOV R0, # 20H; circulación 20H-29H apurada
    MOV R1, # 0AH;
    CLEARLOOP: MOV @ R0, # 00H;
    INC R0;
    DJNZ R1, CLEARLOOP;
    MOV P0, # 0FFH; catro portas definen
    MOV P1, # 0FFH;
    MOV P2, # 0FFH;
    MOV P3, # 0FFH;
    CLR P3.0; accións BH1415 prohibidas
    CLR P3.1;
    CLR P3.2;
    LCALL KEYFUN15; modo de transmisión de son estéreo doméstico, o indicador de transmisor estéreo aberto
    CLEAR1: MOV PCON, # 00H; rexistro de control é borrada
    MOV 29H, # 00H; definir o valor inicial de 88MHZ (mostrado como 088.0)
    MOV 28H, # 08H;
    MOV 27H, # 08H;
    MOV 26H, # 00H;
    LCALL DISPUPDAT; escribe chip de BH1415 (frecuencias de transmisión modificado)
    RET; retorno de subrutinas
    ;
    ; principal
    INICIO: LCALL CLEARMEN; alimentación na inicialización
    PRINCIPAL: LCALL keywork; investigar sub-rutina clave
    LCALL exhibición; tempo de exhibición LED
    AJMP principal; descargar ciclo MAIN
    NOP; tratamento de erros PC
    NOP;
    AJMP INICIO; reiniciar
    ;
    ; 4 4 * matriz de teclado varrido verificación de rutina
    Keywork: MOV P1, # 0FFH;
    CLR P1.0;
    MOV A, P1;
    ANL A, # 0F0H;
    Un CJNE, # 0F0H, KEYCON;
    SETB P1.0;
    CLR P1.1;
    MOV A, P1;
    ANL A, # 0F0H;
    Un CJNE, # 0F0H, KEYCON;
    SETB P1.1;
    CLR P1.2;
    MOV A, P1;
    ANL A, # 0F0H;
    Un CJNE, # 0F0H, KEYCON;
    SETB P1.2;
    CLR P1.3;
    MOV A, P1;
    ANL A, # 0F0H;
    Un CJNE, # 0F0H, KEYCON;
    SETB P1.3;
    RET;
    DL10MS LCALL ;: KEYCON procesamento de debounce
    MOV A, P1;
    ANL A, # 0F0H;
    Un CJNE, # 0F0H, KEYCHE;
    KEYOUT: RET; interferencia, as sub-rutina retorna
    KEYCHE: MOV A, P1;
    Contrasinal MOV, A;
    CJLOOP: LCALL exhibición;
    MOV A, P1;
    ANL A, # 0F0H;
    Un CJNE, # 0F0H, CJLOOP;
    MOV R7, # 00H;
    MOV DPTR, # Keytab;
    CHEKEYLOOP: MOV A, R7;
    MOVC Un @ A DPTR;
    XRL Un, contrasinal,
    JZ KEYOK; 0 (igual) á súa vez KEYOK
    INC R7; gama, ademais dun número de táboa de consulta
    CJNE R7, # 10H, CHEKEYLOOP;
    RET;
    ;
    KEYOK: MOV A, R7;
    MOV B, A; B en
    RL; esquerda
    ADD A, B; engadindo (clave para xestionar JMP 3 por instrución 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; ir á función da chave 15th do programa
    RET; retorno de erro de transferencia masiva
    ;
    ; Número tecla correspondente á táboa de P1 valor de porta (ao premer dúas chaves son operación non é válida)
    Keytab: DB 0EEH, 0DEH, 0BEH, 7EH, 0EDH, 0DDH, 0BDH, 7DH
    DB 0EBH, 0DBH, 0BBH, 7BH, 0E7H, 0D7H, 0B7H, 77H, 0FFH, 0FFH
    ;
    ; No función clave 0 do programa
    KEYFUN00: INC 29H;
    MOV A, 29H;
    CLR C;
    Un CJNE, # 02H, FUN00;
    FUN00: JC FUN00OUT;
    MOV 29H, # 00H;
    FUN00OUT: MOV A, 29H;
    Un XRL, # 01H;
    JNZ F00OUT1;
    MOV 28H, # 00H;
    AJMP F00OUT;
    F00OUT1: MOV 28H, # 08H;
    F00OUT: LCALL DISPUPDAT;
    RET; volve
    ;
    ; A función clave 1st do programa
    KEYFUN01: INC 28H;
    MOV A, 28H;
    CLR C;
    Un CJNE, # 0AH, FUN01;
    FUN01: JC FUN01OUT;
    MOV 28H, # 00H;
    FUN01OUT: MOV A, 29H;
    Un XRL, # 01H;
    JNZ F01OUT;
    MOV 28H, # 00H;
    AJMP F001OUT;
    F01OUT: MOV A, 28H;
    Un XRL, # 08H;
    JZ F001OUT;
    MOV A, 28H;
    Un XRL, # 09H;
    JZ F001OUT;
    MOV 28H, # 08H;
    F001OUT: LCALL DISPUPDAT;
    RET; volve
    ;
    ; O programa principal función 2nd
    KEYFUN02: INC 27H; díxito máis 1
    MOV A, 27H;
    CLR C;
    Un CJNE, # 0AH, FUN02; determinar se a menos de 10
    FUN02: JC FUN02OUT; menos 10 transforma FUN02OUT
    MOV 27H, # 00H; maior que ou igual a 10 é limpo para 0
    FUN02OUT: LCALL DISPUPDAT; escribindo chip de control (frecuencia de transmisión modificado)
    RET;
    ;
    ; A función clave 3rd do programa
    KEYFUN03: INC 26H; díxito máis 1
    MOV A, 26H;
    CLR C;
    Un CJNE, # 0AH, FUN03; xuízo non sexa inferior a 10
    FUN03: JC FUN03OUT; menos 10 transforma FUN03OUT
    MOV 26H, # 00H; maior que ou igual a 10 é limpo para 0
    FUN03OUT: LCALL DISPUPDAT; escribindo chip de control (frecuencia de transmisión modificado)
    RET; volve
    ;
    ; programas funcionais clave 04 (teclas predefinidos frecuencia)
    KEYFUN04: MOV 29H, # 01H; Frecuencia de transmisión 109.0MHZ Preset
    MOV 28H, # 00H
    MOV 27H, # 09H
    MOV 26H, # 00H
    LCALL DISPUPDAT; escribindo chip de control (frecuencia de transmisión modificado)
    Ret
    ;
    ; programas funcionais clave 05 (teclas predefinidos frecuencia)
    KEYFUN05: MOV 29H, # 01H; Frecuencia de transmisión 108.0MHZ Preset
    MOV 28H, # 00H
    MOV 27H, # 08H
    MOV 26H, # 00H
    LCALL DISPUPDAT; escribindo chip de control (frecuencia de transmisión modificado)
    Ret
    ;
    ; programas funcionais clave 06 (teclas predefinidos frecuencia)
    KEYFUN06: MOV 29H, # 01H; Frecuencia de transmisión 105.0MHZ Preset
    MOV 28H, # 00H
    MOV 27H, # 05H
    MOV 26H, # 00H
    LCALL DISPUPDAT; escribindo chip de control (frecuencia de transmisión modificado)
    Ret
    ;
    ; A función clave 7th do programa (teclas de frecuencia predefinida)
    KEYFUN07: MOV 29H, # 01H; Frecuencia de transmisión 100.0MHZ Preset
    MOV 28H, # 00H
    MOV 27H, # 00H
    MOV 26H, # 00H
    LCALL DISPUPDAT; escribindo chip de control (frecuencia de transmisión modificado)
    Ret
    ;
    ; programas funcionais clave 08 (teclas predefinidos frecuencia)
    KEYFUN08: MOV 29H, # 00H; 98.0MHZ frecuencia de transmisión predefinida
    MOV 28H, # 09H
    MOV 27H, # 08H
    MOV 26H, # 00H
    LCALL DISPUPDAT; escribindo chip de control (frecuencia de transmisión modificado)
    Ret
    ;
    ; programas funcionais clave 09 (teclas predefinidos frecuencia)
    KEYFUN09: MOV 29H, # 00H; 96.0MHZ frecuencia de transmisión predefinida
    MOV 28H, # 09H
    MOV 27H, # 06H
    MOV 26H, # 00H
    LCALL DISPUPDAT; escribindo chip de control (frecuencia de transmisión modificado)
    Ret
    ;
    ; A función clave 10th do programa (teclas de frecuencia predefinida)
    KEYFUN10: MOV 29H, # 00H; 94.0MHZ frecuencia de transmisión predefinida
    MOV 28H, # 09H
    MOV 27H, # 04H
    MOV 26H, # 00H
    LCALL DISPUPDAT; escribindo chip de control (frecuencia de transmisión modificado)
    Ret
    ;
    ; programas funcionais clave 11 (teclas predefinidos frecuencia)
    KEYFUN11: MOV 29H, # 00H; 92.0MHZ frecuencia de transmisión predefinida
    MOV 28H, # 09H
    MOV 27H, # 02H
    MOV 26H, # 00H
    LCALL DISPUPDAT; escribindo chip de control (frecuencia de transmisión modificado)
    Ret
    ;
    ; A función clave 12th do programa (teclas de frecuencia predefinida)
    KEYFUN12: MOV 29H, # 00H; 90.0MHZ frecuencia de transmisión predefinida
    MOV 28H, # 09H
    MOV 27H, # 00H
    MOV 26H, # 00H
    LCALL DISPUPDAT; escribindo chip de control (frecuencia de transmisión modificado)
    Ret
    ;
    ; A función clave 13th do programa (teclas de frecuencia predefinida)
    KEYFUN13: MOV 29H, # 00H; 88.0MHZ frecuencia de transmisión predefinida
    MOV 28H, # 08H
    MOV 27H, # 08H
    MOV 26H, # 00H
    LCALL DISPUPDAT; escribindo chip de control (frecuencia de transmisión modificado)
    Ret
    ;
    ; A funcionalidade 14th clave do programa (teclas predefinidos de frecuencia); 87.0MHZ frecuencia de transmisión predefinida
    KEYFUN14: MOV 29H, # 00H
    MOV 28H, # 08H
    MOV 27H, # 07H
    MOV 26H, # 08H
    LCALL DISPUPDAT; escribindo chip de control (frecuencia de transmisión modificado)
    Ret
    ;
    ; programas funcionais clave 15 (stereo / chave configuración mono)
    KEYFUN15: CPL 03H;
    JNB 03H, MONO;
    CLR P3.3;
    LCALL PUTBIT;
    RET; volve
    MON SETB P3.3;
    LCALL PUTBIT;
    RET; volve
    ;
    ; A BCD para hexadecimal e cinco control síntese código de código de operación, escriba chip de control
    DISPUPDAT: LCALL bcdb;
    LCALL CONCOMMAND;
    LCALL PUTBIT; enviar palabras de control para BH1415
    RET; volve
    ;
    ; O programa BCD para hexadecimal
    BCDB: MOV CONBITL, # 00H; palabra de control para 0
    MOV CONBITH, # 00H; palabra de control para 0
    MOV CONBITL, 26H; cifras decimais das palabras de control para o baixo 8
    MOV A, 27H; díxito por operacións 10
    MOV B, # 10;
    LCALL MULLOOP; sintonizar sub-rutina de multiplicación
    MOV A, 28H; 100 operación de multiplicación de dez díxitos
    MOV B, # 100;
    LCALL MULLOOP; sintonizar sub-rutina de multiplicación
    MOV A, 29H;
    JNZ ADD3E8; centos díxito é un ADD3E8 vez (máis operacións 1000)
    RET; centos díxito é 0 saída
    ADD3E8: CLR C; bandeira binario clara
    MOV A, # 0E8H; baixo 8 bits Adder
    ADD A, CONBITL; acumular
    CONBITL MOV, A; CONBITL volta
    MOV A, # 03H; alta de oito Adición
    Un ADDC, CONBITH;
    MOV CONBITH, A; CONBITH volta
    RET; volve
    ;
    ; Multiplicación e proceso de acumulación (a catro código de visualización BCD decimal nun número binario)
    MULLOOP: MUL AB; multiplicación
    flag carry clara; CLR C
    ADD A, CONBITL; trazar con CONBITL engadindo baixo 8
    CONBITL MOV, A; CONBITL volta
    MOV A, CONBITH;
    ADDC A, B; integrado no acumulador de bits alta 8 con CONBITH
    MOV CONBITH, A; CONBITH volta
    RET; volve
    ;
    ; datos de control de frecuencia e de cinco código de control síntese palabra de control BH1415
    CONCOMMAND: ANL CONBITH, # 07H;
    MOV A, 20H;
    Un ORL, CONBITH;
    MOV CONBITH, A;
    RET; volve
    ;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; ; programa de exhibición; ;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; visor LED ánodo común, sección de saída do porto P0 de código, P2 porta palabra dixitalización de saída
    Exhibición: MOV R1, # 26H; Dille a primeira dirección
    MOV R5, # 0FEH; Imos palabra dixitalización
    XOGO: MOV A, R5; en A
    MOV P2, A; porta de saída P2
    MOV A, @ R1; buscar datos de exhibición
    MOV DPTR, # TAB; tomar táboa de códigos segmento primeiro enderezo
    MOVC Un @ A DPTR; Segmento de investigación
    MOV P0, A; a partir da saída P0
    MOV A, R5; le a palabra dixitalizada
    JB ACC.1, PLAY1; dez (LED), o punto decimal non aparece
    CLR P0.7; tiña dez anos, o punto de vista decimal
    PLAY1: DL1MS LCALL; acendeu un milissegundo
    INC R1; sinalando os datos de visualización xunto
    JNB ACC.3, ENDOUT; foi o cuarto LED, saída
    RL; Pola contra, deixou unha
    MOV R5, A; volta R5
    SETB P0.7; off decimal
    AJMP xogo; ciclo de transferencia XOGO
    ENDOUT: MOV P2, # 0FFH; Concerto remata off saída de vídeo
    MOV P0, # 0FFH;
    RET; volve
    ;
    ; 0-9 da Sección Shenyang cronómetro
    TAB: DB 0C0H, 0F9H, 0A4H, 0B0H, 99H, 92H, 82H, 0F8H, 80H, 90H, 0FFH, 0FFH
    ;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; ; Enviar o control byte sub-rutina; ;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;
    PUTBIT: MOV A, CONBITL; menor 8 bits da palabra de control en A
    SETB P3.2; BH1415 Activar (escribir)
    LCALL PUT; enviar oito
    MOV A, CONBITH; alta de oito palabra de control en A
    LCALL PUT; enviar oito
    CLR P3.2; BH1415 escribir minusválidos
    CLR P3.0; restablecer
    CLR P3.1; restablecer
    RET; volve
    ;
    ; Byte sub-rutina de transmisión
    PUT: MOV R3, # 8; enviar oito control
    CLR C; Qing C
    PUT1: RRC A; Leve á dereita (desde abaixo)
    MOV P3.0, C; abaixo para o porto P3.0
    NOP; microssegundos de atraso 4
    NOP;
    NOP;
    NOP;
    SETB P3.1; enganche de datos (datos traba subida do sinal)
    NOP; microssegundos de atraso 4
    NOP;
    NOP;
    NOP;
    CLR P3.1;
    DJNZ R3, PUT1; bits de 8 non rematar a súa quenda PUT1 recorrencia
    final acaba 8; RET
    ;
    ; 513 sub-rutina de atraso microssegundo
    DL513: MOV R3, # 0FFH
    DL513LOOP: DJNZ R3, DL513LOOP
    Ret
    ;
    ; 1 atraso milissegundo sub-rutina (luces LED usado)
    DL1MS: MOV R4, # 02H
    DL1MSLOOP: LCALL DL513
    DJNZ R4, DL1MSLOOP
    Ret
    ;
    ; sub-rutina 10 atraso ms (eliminación de jitter by)
    DL10MS: MOV R6, # 0AH
    DL10MSLOOP: LCALL DL1MS
    DJNZ R6, DL10MSLOOP
    Ret
    ;
    ;
    FIN

     

     

     

     

    Liste as Pregunta

    apelido

    email

    preguntas

    Noso outro produto:

    Paquete de equipos de estación de radio FM profesional

     



     

    Solución IPTV hoteleira

     


      Introduce o correo electrónico para obter unha sorpresa

      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 -> Armenian
      az.fmuser.org -> azerí
      eu.fmuser.org -> éuscaro
      be.fmuser.org -> bielorruso
      bg.fmuser.org -> Búlgaro
      ca.fmuser.org -> catalán
      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 -> danés
      nl.fmuser.org -> Holandés
      et.fmuser.org -> estoniano
      tl.fmuser.org -> filipino
      fi.fmuser.org -> finés
      fr.fmuser.org -> Francés
      gl.fmuser.org -> galego
      ka.fmuser.org -> xeorxiano
      de.fmuser.org -> alemán
      el.fmuser.org -> Grego
      ht.fmuser.org -> crioulo haitiano
      iw.fmuser.org -> Hebreo
      hi.fmuser.org -> hindi
      hu.fmuser.org -> Hungarian
      is.fmuser.org -> islandés
      id.fmuser.org -> indonesio
      ga.fmuser.org -> irlandés
      it.fmuser.org -> Italiano
      ja.fmuser.org -> xaponés
      ko.fmuser.org -> coreano
      lv.fmuser.org -> letón
      lt.fmuser.org -> Lituano
      mk.fmuser.org -> macedonio
      ms.fmuser.org -> malaio
      mt.fmuser.org -> maltés
      no.fmuser.org -> Norwegian
      fa.fmuser.org -> persa
      pl.fmuser.org -> polaco
      pt.fmuser.org -> Portugués
      ro.fmuser.org -> Romanés
      ru.fmuser.org -> ruso
      sr.fmuser.org -> serbio
      sk.fmuser.org -> Eslovaco
      sl.fmuser.org -> Esloveno
      es.fmuser.org -> castelán
      sw.fmuser.org -> Suahili
      sv.fmuser.org -> Sueco
      th.fmuser.org -> Thai
      tr.fmuser.org -> turco
      uk.fmuser.org -> ucraíno
      ur.fmuser.org -> urdú
      vi.fmuser.org -> Vietnamita
      cy.fmuser.org -> galés
      yi.fmuser.org -> Yiddish

       
  •  

    FMUSER Wirless Transmit Video and Audio Máis fácil!

  • contacto

    dirección:
    No.305 Sala HuiLan Building No.273 Huanpu Road Guangzhou China 510620

    E-mail:
    [protexido por correo electrónico]

    Tel/WhatsApps:
    + 8618078869184

  • categorías

  • boletín informativo

    NOME OU COMPLETO

    Correo-e

  • solución paypal  Western UnionBanco de China
    E-mail:[protexido por correo electrónico]   WhatsApp: +8618078869184 Skype: sky198710021 falar comigo
    Copyright 2006 2020-Powered by www.fmuser.org

    Contacto