Señales de vídeos

Iniciado por Meta, 19 Febrero 2012, 13:44 PM

0 Miembros y 1 Visitante están viendo este tema.

Meta

Hola:

Viendo el Tetris con PIC16F84A por todas partes, aquí y allá.

Con este trozo de código que encontré hace tiempo y lo tengo conservado para aprender hacer cosas en TV con señales de vídeos tanto PAL donde vivo, y NTSC que también se configura ahora en las TV €uropeas.

¿Alguien que tenga la TV NTSC estandar se su país, tiene la posibilidad de usar la configuración PAL como los €uropeos al NTSC? Esi si, la versión PAL la imagen se ve más nítida, sobre todo en los videojuegos PlayStation, etc... se nota mucho.

; Prueba de sincronización horizontal
; Este código crea líneas verticales
; en el centro se despliega una línea blanca, a las orillas
; dos líneas grises y todo lo demás aparece en negro.
; Se debe utilizar un cristal de 12MHz
; A RB0 se conecta una resistencia de 1K ohm
; A RB1 se conecta una resistencia de 470 ohm
; ---|
;    |
; RB0|-/\/\/\--|
;    |         |
; RB1|-/\/\/\--|---* Salida de video
;    |
; -- |

    list    p=16f88
    include    p16f88.inc
    radix    hex
    __config    _CONFIG1,_CP_OFF&_DEBUG_OFF&_WRT_PROTECT_OFF&_CPD_OFF&_LVP_OFF&_BODEN_OFF&_MCLR_OFF&_PWRTE_OFF&_WDT_OFF&_HS_OSC
   
    cblock    0x20
    delaycnt
    hrzcnt
    stuff
    counter1
    counter2
    endc

COLOR_SYNC    EQU    0x00
COLOR_BLACK    EQU    0x01
COLOR_GRAY    EQU 0X02
COLOR_WHITE    EQU    0X03

VIDEO_PORT    EQU    PORTB


DELAY    MACRO
        LOCAL    LABEL
        movwf    delaycnt
LABEL    decfsz    delaycnt,f
        goto LABEL
        ENDM

dnop    MACRO
        LOCAL    label
label    goto    label+1
        ENDM

    org        0x00
    goto    INICIO

    org        0x05
INICIO
    bsf        STATUS,RP0    ; Cambio al banco 1
    clrf    ANSEL        ; Todos los pines digitales
    clrf    TRISB        ; Puerto B como salida
    bcf        STATUS,RP0    ; Regreso al banco 0
    clrf    VIDEO_PORT    ; Se limpia el puerto B

    clrf    TMR2
    clrf    T2CON
    bsf        STATUS,RP0
    movlw    0xFF
    movwf    PR2
    bcf        STATUS,RP0

HORIZONTAL
    bsf        T2CON,TMR2ON
    movlw    COLOR_BLACK
    ; Front Porch
    movwf    VIDEO_PORT
    movlw    .1
    DELAY
    DNOP
    movlw    COLOR_SYNC
    ; 5us de sincronización
    movwf    VIDEO_PORT
    movlw    .4
    DELAY
    movlw    COLOR_BLACK
    ; Back Porch por 5us
    movwf    VIDEO_PORT
    movlw    .4
    DELAY
    ; 52us de video
    movlw    COLOR_GRAY
    ; 4us de gris
    movwf    VIDEO_PORT
    movlw    .3
    DELAY
    movlw    COLOR_BLACK
    ; 20us de negro
    movwf    VIDEO_PORT
    movlw    .19
    DELAY
    movlw    COLOR_WHITE
    ; 4us de blanco
    movwf    VIDEO_PORT
    movlw    .3
    DELAY
    movlw    COLOR_BLACK
    ; 20us de negro
    movwf    VIDEO_PORT
    movlw    .19
    DELAY
    movlw    COLOR_GRAY
    ;4us de gris
    movwf    VIDEO_PORT
    movlw    .3
    DELAY   
    goto    HORIZONTAL

    end



Estoy pendiente de que me llegue por correos una DemoBoard y hacer cosas de estas con ella. En este caso da igual que PIC hacerlos, ya que me vienen estos:
1 x PIC12F508 de la gama baja y 8 patillas
1 x PIC16F88 de la gama media y 18 patillas
1 x PIC16F886 de la gama media y 28 patillas (viene de serie con USB-PIC'SCHOOL, insertado en su zócalo)
1 x PIC16F887 de la gama media y 40 patillas
1 x PIC18F2550 de la gama alta y 28 patillas
1 x PIC18F4550 de la gama alta y 40 patillas
También tengo el PIC16F84A-04 que no debe faltar. Así tengo para rato.

Con esto quiero entender como se hace señales de TV y sonidos tipo beep como los PC al iniciar.
Poco a poco entenderé el código. Los que sepan o hayan hechos proyectos sobre señales de TV, es buena idea poner enlaces por aquí.

Para hacer pruebas primero haré un montaje completo como indica aquí sobre el tetris. Luego hexaminar con menos códigos el de arriba para no volverse loco. Documentaciones mucha, explicar abiertamente como se crea dibujitos es un poco lioso.



La idea principal de todo es ser capaz de mostrar mensajes en pantalla y ver qué salidas y entradas visualizadas en un Televisor por un PIC.

Un cordial saludo.
Tutoriales Electrónica y PIC: http://electronica-pic.blogspot.com/