Buscador
YoReparo.com La Web 

Regístrate gratis para participar de los foros, o si ya estás registrado haz login.

Comunicaión PC a 16F84A con Visual C#

comentario del autor Dom Ene 20, 2008 1:58 pm
   
Hola:

Quiero hacer un proyecto con un PIC 16F84A que lo controla desde el PC por el puerto serie.

C#===>PC===>RS232===>MAX232===>PIC-16F84A

Tengo un Form1, un Butto1 y un control PuertoSerie1

Si en las entradas del PIC16F84A se activa unos series de bits d entrada por ejemplo 101, en su salida del PIC muestra 0 0 0 1 1 1 ; (Configuración 5).

En resumen, quiero controlar el PIC desde el PC con el C#. Con el HyperTerminal si se puede, pero es pésimo, prefiero uno propio con C#.

Si encuentran Web con estos tema, también se lo agradezco. Gracias.

Código:;********************************** Indexado.asm *************************************
;
; Implementar una tabla de la verdad mediante el manejo de tablas grabadas en ROM.
; Por ejemplo, la tabla será de 3 entradas y 6 salidas tal como la siguiente:
;
;       C  B     A  |   S5   S4   S3   S2   S1   S0
;       -----------|---------------------------
;       0   0   0   |   0    0    1    0    1    0   ; (Configuración 0).
;       0   0   1   |   0    0    1    0    0    1   ; (Configuración 1).
;       0   1   0   |   1    0    0    0    1    1   ; (Configuración 2).
;       0   1   1   |   0    0    1    1    1    1   ; (Configuración 3).
;       1   0   0   |   1    0    0    0    0    0   ; (Configuración 4).
;       1   0   1   |   0    0    0    1    1    1   ; (Configuración 5).
;       1   1   0   |   0    1    0    1    1    1   ; (Configuración 6).
;       1   1   1   |   1    1    1    1    1    1   ; (Configuración 7).
;
; Las entradas C, B, A se conectarán a las líneas del puerto A: RA2 (C), RA1 (B) y RA0 (A).
; Las salidas se obtienen en el puerto B:
; RB5 (S5), RB4 (S4), RB3 (S3), RB2 (S2), RB1 (S1) y RB0 (S0).
;
; ZONA DE DATOS **********************************************************************

   LIST      P=16F84A
   INCLUDE      <P16F84A.INC>
   __CONFIG   _CP_OFF &  _WDT_OFF & _PWRTE_ON & _XT_OSC

; ZONA DE CÓDIGOS ********************************************************************

   ORG    0               ; El programa comienza en la dirección 0.
Inicio
   bsf      STATUS,RP0         ; Acceso al Banco 1.
   clrf   TRISB            ; Las líneas del Puerto B se configuran como salida.
   movlw   b'00011111'         ; Las 5 líneas del Puerto A se configuran como entrada.
   movwf   TRISA
   bcf      STATUS,RP0         ; Acceso al Banco 0.
Principal
   movf   PORTA,W            ; Lee el valor de las variables de entrada.
   andlw   b'00000111'         ; Se queda con los tres bits de entrada.
   addwf   PCL,F            ; Salta a la configuración adecuada.
Tabla
   goto   Configuracion0
   goto   Configuracion1
   goto   Configuracion2
   goto   Configuracion3
   goto   Configuracion4
   goto   Configuracion5
   goto   Configuracion6
   goto   Configuracion7
Configuracion0
   movlw    b'00001010'         ; (Configuración 0).
   goto   ActivaSalida
Configuracion1
   movlw    b'00001001'         ; (Configuración 1).
   goto   ActivaSalida
Configuracion2
   movlw    b'00100011'         ; (Configuración 2).
   goto   ActivaSalida
Configuracion3
   movlw    b'00001111'         ; (Configuración 3).
   goto   ActivaSalida
Configuracion4
   movlw    b'00100000'         ; (Configuración 4).
   goto   ActivaSalida
Configuracion5
   movlw    b'00000111'         ; (Configuración 5).
   goto   ActivaSalida
Configuracion6
   movlw    b'00010111'         ; (Configuración 6).
   goto   ActivaSalida
Configuracion7
   movlw    b'00111111'         ; (Configuración 7).
ActivaSalida
   movwf   PORTB            ; Visualiza por el puerto de salida.
   goto    Principal

   END
   

Meta

Reputación

sin valorar Dom Feb 03, 2008 6:12 pm
   
Hola que tal, yo hice esto pero en visual basic, ya que es mas sencillo, si te interesa decime y te ayudo.

alex_j

Reputación



Hacer una pregunta

Reglamento / P+F

Foros

Miembros / Expertos