pr á ctica 7 sensado de temperatura con interfaz pic - pc

Anuncio
Sistemas Digitales de Mando y Control
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
PRÁCTICA 7
SENSADO DE TEMPERATURA
CON INTERFAZ PIC - PC
OBJETIVO
Teniendo como base las dos prácticas anteriores, realizar un programa que permita
acceder la lectura de la temperatura en el PIC y, con ayuda de un programa., poder mostrarla en
la PC.
INTRODUCCION
Actualmente muchos procesos tienen interfaz con una computadora personal. Debido a
esta importancia es necesario realizar alguna práctica referente a la comunicación entre un PIC
y la PC. Por ejemplo: un programa en la PC que permita leer la temperatura proporcionada por
el PIC por medio de la comunicación asíncrona.
El programa de la PC se realiza en Lab View debido a que tiene un ambiente agradable
para el usuario.
Sistemas Digitales de Mando y Control
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
DIAGRAMA DE FLUJO
Sistemas Digitales de Mando y Control
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
Sistemas Digitales de Mando y Control
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
DIAGRAMA ESQUEMATICO
Sistemas Digitales de Mando y Control
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
Sistemas Digitales de Mando y Control
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
CÓDIGO FUENTE
;
;
;
;
*************************************************************************
********** Programa para desplegar la temperatura en un LCD y ***********
********************* transmitirlo ala PC**con LABVIEW ******************
*************************************************************************
LIST
P=16F877
include<p16f877.inc>
PCL
ESTADO
PUERTOB
PUERTOD
PCLATH
RDELAY
CONTA0
CONTA1
CONTA2
Letra
Flinea
RESULTADO
CONTA3
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
0x02
0x03
0x06
0X08
0X0A
0x21
0x22
0x23
0x24
0x25
0x26
0x27
0x28
;Constantes para el programa
;***************************
Linea1LCD
Linea2LCD
ClrLCD
CasaLCD
IncLCD
DecLCD
OnLCD
OfLCD
OnCursor
OffCursor
BlinkCursor
IzqLCD
DerLCD
IzqCursor
DerCursor
FuncionLCD
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
0x80
0xC0
0x01
0x02
0x07
0x05
0x0C
0x08
0x0E
0x0C
0x0F
0x18
0x1C
0x10
0x14
0x38
RS
;RW
E
W
F
EQU
EQU
EQU
EQU
EQU
6
1
7
0
1
ORG
goto
ORG
0
INICIAR
5
;* IZQUIERDA
;* DERECHA
;Pantalla de dos lineas
;Comandos o Caracteres
;Escritura al LCD
;Habilitacion para el LCD
;Registro W
;Registro de trabajo
;PROGRAMA PRINCIPAL
;******************
INICIAR
call
call
call
call
Port_transre
Port_LCD
Ini_LCD
Port_ADC
;Inicializa el LCD
;inicializa el convertidor
Sistemas Digitales de Mando y Control
rb1
rb2
medir
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
movlw
Linea1LCD
call
Comando_LCD
movlw
movwf
clrf
0x0f
Flinea
Letra
movf
call
call
call
incf
decfsz
goto
Letra,W
Mensaje
Caracter_LCD
delay
Letra,F
Flinea,F
rb2
;Manda el caracter al LCD
;Lo muestra por un tiempo de ---; F=1 en el registro si F= 0 en W
movlw
Linea2LCD
;Ponar señal para empezar a
;mandar datos 0x80
call
call
Comando_LCD
MEDICION
call
call
transmit1
transmit2
movf
call
bcf
call
call
RESULTADO,W
Tabla2
PCLATH,0
Caracter_LCD
delay
movf
call
bcf
call
call
movlw
call
call
RESULTADO,W
Tabla1
PCLATH,1
Caracter_LCD
delay
A','
Caracter_LCD
delay
movf
call
bcf
bcf
call
call
RESULTADO,W
Tabla0
PCLATH,0
PCLATH,1
Caracter_LCD
delay
movlw
call
goto
Linea2LCD
Comando_LCD
medir
;Ponar señal para empezar a
;mandar datos 0x80
;w=15 para 15 datos
;registro Flinea=15
;registro que va a moverse sobre
;la tabla
;Muestra el mensaje
;registro que va a moverse sobre
;la tabla
;Muestra el mensaje
;Manda el caracter al LCD
;Lo muestra por un tiempo de ---;Muestra el mensaje
;Manda el caracter al LCD
;Lo muestra por un tiempo de ---;Manda el caracter al LCD
;Lo muestra por un tiempo de ---;Muestra el mensaje
;Manda el caracter al LCD
;Lo muestra por un tiempo de ----
; Inician las subrutinas
;*****************************************************
Port_transre
bsf
movlw
movwf
STATUS,RP0
0XC0
PORTC
;configura los pines para la transmision
movlw
movwf
0xC0
INTCON
movlw
0X20
serie
;configura las interrupciones globales
;y perifericas
Sistemas Digitales de Mando y Control
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
movwf
movlw
movwf
movlw
movwf
bcf
movlw
movwf
return
PIR1
;configura pie1
0X02
;inicialmente tenia 0x00
RCSTA
;configura TXSTA
D'51'
;inicialmente tenia D 51 -1200 BAUDIOS
TXREG
STATUS,RP0
0X90
RCSTA
Port_ADC
bsf
movlw
movwf
movlw
movwf
bcf
STATUS,RP0
b'00011111'
PORTA
b'10000000'
ADCON0
STATUS,RP0
Port_LCD
bsf
clrf
clrf
bcf
bcf
return
ESTADO,5
PUERTOD
PUERTOB
ESTADO,5
PUERTOD,E
;Configura los Puertos del PIC
;configura al puerdo D como salidas
;;configura al puerdo B como salidas
call
movlw
call
call
movlw
call
call
movlw
call
call
movlw
call
movlw
call
movlw
call
movlw
call
movlw
call
return
retardo
FuncionLCD
Comando_LCD
retardo
FuncionLCD
Comando_LCD
retardo
FuncionLCD
Comando_LCD
retardo
FuncionLCD
Comando_LCD
OnLCD
Comando_LCD
ClrLCD
Comando_LCD
DecLCD
Comando_LCD
CasaLCD
Comando_LCD
;Inicializa el LCD
;w<-0X38
Comando_LCD
bcf
bcf
movwf
call
return
PUERTOD,RS
PUERTOD,E
PUERTOB
Habilita_LCD
;Manda un comando al LCD RS equ 0
;
Caracter_LCD
bsf
bcf
movwf
call
return
PUERTOD,RS
PUERTOD,E
PUERTOB
Habilita_LCD
;Manda un caracter o dato al LCD
MEDICION
bsf
call
bsf
ADCON0,0
espera20u
ADCON0,2
espera
btfsc
ADCON0,2
Ini_LCD
;E equ 7 enable del LCD
;0X38
;0X38
;0X38
;0x0c
;0x01
;0x05
;0x02
;
Sistemas Digitales de Mando y Control
goto
bsf
movf
bcf
movwf
bcf
return
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
espera
STATUS,RP0
ADRESH,0
STATUS,RP0
RESULTADO
ADCON0,0
;RETARDO DE 255 MICRO SEG
Habilita_LCD
bsf
PUERTOD,E
movlw
0xFF
movwf
RDELAY
t1
decfsz RDELAY,F
goto
t1
bcf
PUERTOD,E
return
retardo
ret2
ret1
ret0
delay
re2
re1
re0
espera20u
retardo1
transmit1
;Habilita el LCD
movlw
movwf
movlw
movwf
movlw
movwf
decfsz
goto
decfsz
goto
decfsz
goto
return
0x01
CONTA0
0x64
CONTA1
0x64
CONTA2
CONTA2,F
ret0
CONTA1,F
ret1
CONTA0,F
ret2
;Retardo
movlw
movwf
movlw
movwf
movlw
movwf
decfsz
goto
decfsz
goto
decfsz
goto
return
0xD0
CONTA0
0xD0
CONTA1
0x01
CONTA2
CONTA2,F
re0
CONTA1,F
re1
CONTA0,F
re2
;Retardo
movlw
movwf
decfsz
goto
return
0x05
CONTA3
CONTA3,1
retardo1
lleno1
movf
movwf
bsf
bsf
btfss
goto
bcf
bcf
return
RESULTADO,W
TXREG
STATUS,RP0
RCSTA,TXEN
RCSTA,TRMT
lleno1
RCSTA,TXEN
STATUS,RP0
transmit2
movlw
movwf
0XFF
TXREG
Sistemas Digitales de Mando y Control
lleno2
rsrx
Mensaje
Tabla2
bsf
bsf
btfss
goto
bcf
bcf
return
STATUS,RP0
RCSTA,TXEN
RCSTA,TRMT
lleno2
RCSTA,TXEN
STATUS,RP0
bcf
movf
call
;call
;call
retfie
PIR1,RCIF
RCREG,W
Caracter_LCD
delay
transmit
addwf
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
PCL,1
A'T'
A'E'
A'M'
A'P'
A'E'
A'R'
A'A'
A'T'
A'U'
A'R'
A'A'
A' '
0XA5
A'C'
A' '
A' '
ORG
bsf
addwf
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
0X100
PCLATH,0
PCL,1
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
A'0'
retlw
retlw
retlw
retlw
retlw
retlw
A'1'
A'1'
A'1'
A'1'
A'1'
A'1'
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
;Manda el caracter al LCD
;Lo muestra por un tiempo de ----
;Mensaje a dsesplejar en el LCD
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlwen
;Mensaje a dsesplejar
retlw
retlw
A'1'
A'1'
A'1'
A'1'
A'1'
A'1'
A'1'
A'1'
A'1'
A'1'
A'1'
A'1'
el
LCD
A'1'
A'1'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
A'2'
retlw
retlw
retlw
A'3'
A'3'
A'3'
Sistemas Digitales de Mando y Control
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'3'
A'3'
A'3'
A'3'
A'3'
A'3'
A'3'
A'3'
A'3'
A'3'
A'3'
A'3'
A'3'
A'3'
A'3'
A'3'
A'3'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'6'
A'6'
A'6'
A'6'
A'6'
A'6'
A'6'
A'6'
A'6'
A'6'
A'6'
A'6'
A'6'
A'6'
A'6'
A'6'
A'6'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
A'4'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
A'7'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
A'5'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
A'8'
retlw
retlw
retlw
A'6'
A'6'
A'6'
retlw
retlw
retlw
A'9'
A'9'
A'9'
Sistemas Digitales de Mando y Control
Tabla1
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'9'
A'9'
A'9'
A'9'
A'9'
A'9'
A'9'
A'9'
A'9'
A'9'
A'9'
A'9'
A'9'
A'9'
A'9'
A'9'
A'9'
ORG
bsf
addwf
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
0X200
PCLATH,1
PCL,1
A'0'
A'0'
A'1'
A'1'
A'2'
A'2'
A'3'
A'3'
A'4'
A'4'
A'5'
A'5'
A'6'
A'6'
A'7'
A'7'
A'8'
A'8'
A'9'
A'9'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'0'
A'1'
A'1'
A'2'
A'2'
A'3'
A'3'
A'4'
A'4'
A'5'
A'5'
A'6'
A'6'
A'7'
A'7'
A'8'
A'8'
A'9'
A'9'
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
;Mensaje a dsesplejar en
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'0'
A'1'
A'1'
A'2'
A'2'
A'3'
A'3'
A'4'
A'4'
A'5'
A'5'
A'6'
A'6'
A'7'
A'7'
A'8'
A'8'
A'9'
A'9'
el LCD
A'0'
A'0'
A'1'
A'1'
A'2'
A'2'
A'3'
A'3'
A'4'
A'4'
A'5'
A'5'
A'6'
A'6'
A'7'
A'7'
A'8'
A'8'
A'9'
A'9'
A'0'
A'0'
A'1'
A'1'
A'2'
A'2'
A'3'
A'3'
A'4'
A'4'
A'5'
A'5'
A'6'
A'6'
A'7'
A'7'
A'8'
A'8'
A'9'
A'9'
Sistemas Digitales de Mando y Control
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'0'
A'1'
A'1'
A'2'
A'2'
A'3'
A'3'
A'4'
A'4'
A'5'
A'5'
A'6'
A'6'
A'7'
A'7'
A'8'
A'8'
A'9'
A'9'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'0'
A'1'
A'1'
A'2'
A'2'
A'3'
A'3'
A'4'
A'4'
A'5'
A'5'
A'6'
A'6'
A'7'
A'7'
A'8'
A'8'
A'9'
A'9'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'0'
A'1'
A'1'
A'2'
A'2'
A'3'
A'3'
A'4'
A'4'
A'5'
A'5'
A'6'
A'6'
A'7'
A'7'
A'8'
A'8'
A'9'
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
Tabla0
retlw
A'9'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'0'
A'1'
A'1'
A'2'
A'2'
A'3'
A'3'
A'4'
A'4'
A'5'
A'5'
A'6'
A'6'
A'7'
A'7'
A'8'
A'8'
A'9'
A'9'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'0'
A'1'
A'1'
A'2'
A'2'
A'3'
A'3'
A'4'
A'4'
A'5'
A'5'
A'6'
A'6'
A'7'
A'7'
A'8'
A'8'
A'9'
A'9'
ORG
bsf
bsf
addwf
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
0X300
PCLATH,0
PCLATH,1
PCL,1
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
;Mensaj
Sistemas Digitales de Mando y Control
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
retlw
retlw
retlw
retlw
retlw
A'5'
A'0'
A'5'
A'0'
A'5'
retlw
retlw
retlw
retlw
retlw
A'5'
A'0'
A'5'
A'0'
A'5'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
Sistemas Digitales de Mando y Control
retlw
retlw
retlw
retlw
retlw
A'5'
A'0'
A'5'
A'0'
A'5'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
retlw
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
A'5'
A'0'
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
retlw
retlw
retlw
retlw
retlw
return
end
A'5'
A'0'
A'5'
A'0'
A'5'
Sistemas Digitales de Mando y Control
Práctica 7
Sensado de Temperatura con Interfaz PIC-PC
Descargar