domingo, 22 de noviembre de 2009

c# y RS232

Hola aqui les dejo un proyecto hecho en c# que envia tramas mediante RS232 y que se conecta a la base de datos ACCESS

http://www.box.net/shared/q6zxjgmk6s


espero les sirva bye!!

miércoles, 7 de octubre de 2009

Programas con PIC16F887


Saludos, hace poco tuve que hacer unos proyectos con el PIC16F887, este microcontrolador tiene muchas ventajas por eso decidi compartir los conocimientos que adquirí mientras realizaba mis proyectos.

Les dejo un link de un proyecto en assembler y el otro en C.

ASM:

LIST P=16F887
INCLUDE "P16F887.INC"

;ASIGNACION DE VARIABLES---------------------------

CONTADOR1 EQU 0X0C ; Registro auxiliar
CONTADOR2 EQU 0X0D
CONTADOR3 EQU 0X0F
FLAG EQU 0X10 ;CAMBIO DE MODO

;INICIO DEL PROGRAMA ---------------------------

ORG 0
GOTO INICIO


;SETEO DE PUERTOS ------------------------------------

INICIO
CLRF CONTADOR1
CLRF CONTADOR2
CLRF CONTADOR3
CLRF FLAG

BANKSEL OSCCON ;
MOVLW 0x72 ;
MOVWF OSCCON ;
BANKSEL PORTA ;
CLRF PORTA ;
MOVLW 0x06
MOVWF ADCON1 ;Puerta A como puerta digital
BANKSEL ANSEL ;
CLRF ANSEL ; DIGITAL I/O
BCF STATUS,RP1 ; BANK1
BANKSEL TRISA ;
MOVLW b'11111110' ;
MOVWF TRISA ;
BANKSEL PORTC
CLRF TRISC ; Puerta C como salida
BANKSEL TRISC ;
MOVLW b'00000000' ;
MOVWF TRISC ;
BANKSEL PORTD
CLRF TRISD ; Puerta D como salida
BANKSEL TRISD ;
MOVLW b'00000000' ;
MOVWF TRISD ;
BCF STATUS,5 ; Regreso al banco 0
CLRF PORTC
CLRF PORTD



;PARTE PRINCIPAL DEL PROGRAMA ------------------------
ONOFF

BTFSC PORTA,3 ;PREGUNTO POR BOTON
GOTO ONOFF ;PREGUNTO SI ES CERO
ALTO
BTFSS PORTA,3 ;PREGUNTO SI ES ALTO
GOTO ALTO
COMF FLAG,F ;COMPLEMENTO DE FLAG
SWITCH
BTFSC PORTA,5 ;PREGUNTO POR ON/OFF
GOTO ONOFF
BTFSS FLAG,0
GOTO MODO_NOCHE
GOTO MODO_DIA



MODO_DIA
BSF PORTA,0 ; ROJO PRINCIPAL
BSF PORTC,5 ;PASO PEATON PRINCIPAL
BSF PORTD,2 ;VERDE SECUNDARIA
BSF PORTD,3 ;ALTO PEATON SECUNDARIA
CALL RETARDO_400MS
CALL RETARDO_400MS
CALL RETARDO_400MS
CALL RETARDO_400MS

BCF PORTA,0
CLRF PORTC ;PRINCIPAL
CLRF PORTD ;SECUNDARIA
BSF PORTA,0 ;ROJO
BSF PORTC,5 ;PASO PEATON PRINCIPAL
BSF PORTC,2 ;AMARILLO
BSF PORTC,5 ;PASO PEATON PRINCIPAL
BSF PORTD,3 ;ALTO PEATON SECUNDARIA
BSF PORTD,1 ;AMARILLO SECUNDARIA
BSF PORTD,3 ;ALTO PEATON SECUNDARIA
CALL RETARDO_400MS
CALL RETARDO_400MS
CALL RETARDO_400MS
CALL RETARDO_400MS

BCF PORTA,0
CLRF PORTC
CLRF PORTD
BSF PORTC,3 ;VERDE
BSF PORTC,4 ;ALTO PEATON PRINCIPAL
BSF PORTD,0 ;ROJO
BSF PORTD,4 ;PASO PEATON SECUNDARIA
BSF PORTC,4 ;ALTO PEATON PRINCIPAL
CALL RETARDO_400MS
CALL RETARDO_400MS
CALL RETARDO_400MS
CALL RETARDO_400MS

BCF PORTA,0
CLRF PORTC
CLRF PORTD
BSF PORTC,2 ;AMARILLO PRINCIPAL
BSF PORTC,4 ;ALTO PEATON PRINCIPAL
BSF PORTD,4 ;PASO PEATON SECUNDARIA
BSF PORTD,0 ;ROJO SECUNDARIA
BSF PORTD,1 ;AMARILLO SECUNDARIA
BSF PORTD,4 ;PASO PEATON SECUNDARIA
BSF PORTC,4 ;ALTO PEATON PRINCIPAL
CALL RETARDO_400MS
CALL RETARDO_400MS
CALL RETARDO_400MS
CALL RETARDO_400MS

BCF PORTA,0
CLRF PORTC
CLRF PORTD
GOTO SWITCH

MODO_NOCHE
BSF PORTA,0 ; ROJO PRINCIPAL
BSF PORTC,5 ; PASO PEATON PRINCIPAL
BSF PORTD,1 ; AMARILLO SECUNDARIA
BSF PORTD,3 ; ALTO PEATON SECUNDARIA
CALL RETARDO_400MS
CALL RETARDO_400MS
CALL RETARDO_400MS
CALL RETARDO_400MS

BCF PORTA,0 ;PRINCIPAL
CLRF PORTC
CLRF PORTD

CALL RETARDO_400MS
CALL RETARDO_400MS
CALL RETARDO_400MS
CALL RETARDO_400MS

GOTO SWITCH

RETARDO_400MS
MOVLW 0X0
MOVWF CONTADOR1
MOVLW 0X28
MOVWF CONTADOR2
MOVLW 0X28
MOVWF CONTADOR3

RETARDO1
DECFSZ CONTADOR1,F
GOTO RETARDO1
DECFSZ CONTADOR2,F
GOTO RETARDO1
DECFSZ CONTADOR3,F
GOTO RETARDO1
RETURN

END






No olviden dejar sus comentarios

http://www.box.net/shared/bmdh9nkqgm
http://www.box.net/shared/dhjl7tp5ve