You are on page 1of 21

UNIDAD MÉDICA DE FRECUENCIA CARDIACA Y TEMPERATURA

Arturo García Barragán


Universidad de Guadalajara, Centro Universitario de Ciencias Exactas e Ingenierías
División de Electrónica y Computación, Departamento de Electrónica
Boulevard. Marcelino García Barragán No. 1421 y Calzada Olímpica
Teléfono / Fax; (++52) (33) 3619-8471 Guadalajara Jalisco, México. C.P. 44420.
e-mail: macartur_555@hotmail.com

INDICE Página
RESUMEN--------------------------------------------------------------------------------------------------1
1
1. NECESIDAD DE EQUIPO MÉDICO---------------------------------------------------------------1 2
2. MEDIDOR DE FRECUENCIA CARDIACA-------------------------------------------------------1 3
2.1 Micrófono piezoeléctrico omnidireccional-------------------------------------------------------1
4
2.2 Amplificador operacional LM_741---------------------------------------------------------------1
4
3. MEDIDOR DE TEMPERATURA--------------------------------------------------------------------1 5
3.1 Regulador de voltaje LM_336---------------------------------------------------------------------1
6
3.2 Amplificador diferencial con el LM_741--------------------------------------------------------1
7
3.3 Sensor de temperatura LM_335-------------------------------------------------------------------1
8
4. MICROCONTROLADOR PIC_16F877-------------------------------------------------------------1 8
4.1 Características del microcontrolador PIC_16F877---------------------------------------------1
9
4.2 Diseño del programa para el microcontrolador PIC_16F877---------------------------------1 11
4.2.1 Diagrama de flujo-----------------------------------------------------------------------------1
11
5. DISPLAY DE SIETE SEGMENTOS-----------------------------------------------------------------1 12
6. CONCLUSIONES---------------------------------------------------------------------------------------1
13
7. REFERENCIAS BIBLIOGRÁFICAS----------------------------------------------------------------1 14
8. APÉNDICE A--------------------------------------------------------------------------------------------1
14

RESUMEN
El presente trabajo tiene como objetivo medir diferentes variables del cuerpo humano como lo
son: el calor corporal (temperatura), frecuencia cardiaca y frecuencia cardiaca fetal. El equipo
médico desarrollado esta pensado para ofrecer al paciente comodidad en su aplicación, lo que
nos asegura que al llevarse a cabo las diferentes mediciones clínicas no sufrirá ninguna
molestia. Este tipo de unidad puede estar destinada a zonas urbanas y primordialmente a zonas
rurales muy lejanas, donde los hospitales no cuentan con gran tecnología debido al
presupuesto que tienen. En México, los dispositivos médicos que existen en los hospitales
generalmente son importados a un alto costo lo que provoca una gran inversión, es por eso que
surge la idea de realizar un proyecto basado principalmente en la bioelectrónica, que es una
herramienta complementaria en el sector médico, utilizada para facilitar y precisar
diagnósticos clínicos. En el diseño del proyecto se utilizan los siguientes elementos: LM_335,
LM_336, LM_741, microcontrolador PIC_16F877, display de siete segmentos cátodo común,
un micrófono piezoeléctrico omnidireccional, resistores y capacitores.
Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com
Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 1
1. NECESIDAD DE EQUIPO MÉDICO
Este tipo de sistema ya existe en el mercado, pero como su precio es muy elevado sólo las
instituciones que cuentan con mayor apoyo económico por parte del Gobierno Estatal y/o
Federal, tienen este tipo de aparatos electrónicos, pero desgraciadamente en instituciones que
se encuentran como por ejemplo en zonas rurales, no se cuenta con este tipo de sistemas, por
lo que, por medio de este diseño se pretende economizar este produc to, para que así más
clínicas médicas y hospitales puedan contar con esta tan útil e indispensable herramienta,
porque por ejemplo un doctor que pretende realizar esta medición en forma manual, debe
contar los pulsos del paciente por un determinado tiempo por ejemplo 5 segundos, y enseguida
debe llevar a cabo una multiplicación para así obtener los pulsos por minuto del paciente y
desgraciadamente al llevar a cabo este procedimiento algunas veces se cometen errores y por
lo tanto se genera una medición errónea.

Para realizar la detección de los fetos, se utiliza el estetoscopio, pero debido a la sensibilidad
del mismo, no se hace la detección, sino hasta unas 7 semanas después de haber sido
concebido. Por medio de este sistema se lleva a cabo una medición más exacta y ofreciéndonos
una lectura de los pulsos por minuto de cada paciente de una forma inmediata.

En el caso de la temperatura se hace uso del termómetro de mercurio, el cual tarda un cierto
tiempo para dar la lectura en cierta forma de manera analógica. La temperatura corporal del
cuerpo humano que esta sobre los límites normales, es provocada en ocasiones por
enfermedades como la fiebre, sarampión, tuberculosis etc. si la temperatura del cuerpo humano
llegara a rebasar de los 42 ºC, se corre el peligro de sufrir lesiones en las neuronas cerebrales.
Si la temperatura del cuerpo humano se encuentra por debajo de los limites normales, estamos
hablando de que se puede presentar una disminución de la temperatura normal del cuerpo
humano, mejor conocida como hipotermia, la que nos genera una disminución en la intensidad
del metabolismo lo que puede causar la muerte, esto suele ocurrir cuando la temperatura
corporal se encuentra entre 21 y 24 ºC.

El proyecto “UNIDAD MÉDICA DE FRECUENCIA CARDIACA Y TEMPERATURA”


consiste en el diseño de un sistema electrónico que realice de manera más eficiente la
medición de los pulsos del corazón y la temperatura en los pacientes. Además puede sensar los
latidos del corazón de los fetos tanto en medición como en audio más pronto que con el
método tradicional del estetoscopio, ya que en la actualidad este proceso de medición se lleva
a cabo en forma manual, y por medio de este sistema se pretende mejorar adquiriendo mayor
exactitud, rapidez, y confiabilidad.

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 2
2. MEDIDOR DE FRECUENCIA CARDIACA
Las distintas deficiencias en el funcionamiento del corazón son las causas de muchas muertes
en el mundo, este índice de mortalidad con el paso del tiempo se va agrandando, por eso es que
se ha tenido que recurrir a la electrónica para crear dispositivos o instrumentos enfocados a
monitorear el funcionamiento del corazón.
De tal manera que se propuso a desarrollar un dispositivo electrónico que fuera capaz de
revelar los pulsos cardiacos del corazón tanto del feto como de personas adultas. Para poder
detectar los pulsos cardiacos se seleccionó un micrófono piezoeléctrico omnidireccional, que
va acoplado al estetoscopio mediante una manguera, se acondiciono la señal para convertirla
en forma digital y procesarla con el microcontrolador (PIC_16F877), para finalmente mostrar
el dato procesado en los display de siete segmentos.

Figura 1: Diagrama a bloques del medidor de frecuencia cardiaca

Figura 2: Circuito eléctrico del medidor de frecuencia cardiaca

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 3
2.1 Micrófono piezoeléctrico omnidireccional
Los micrófonos piezoeléctricos son micrófonos de presión que se utilizan limitadamente para
ciertos efectos. Este micrófono depende enteramente de la reflexión del sonido. En situaciones
especiales tiene una respuesta superior a cualquier otro tipo de micrófono.
Los micrófonos omnidireccionales (también llamados no-direccionales) son igualmente
sensibles a los sonidos que provienen de cualquier dirección. Aunque este atributo posee
ventajas en la radio donde varias personas pueden estar alrededor del micrófono, en la
producción de video casi siempre es mejor utilizar alguna forma de micrófono direccional.
Ello permite eliminar sonidos no deseados (ruido detrás de cámaras, ambiente en locación,
ruido, etc.) mientras captamos el sonido proveniente del talento.
Con este tipo de micrófono detectamos lo pulsos cardiacos.

Figura 3: Micrófono piezoeléctrico omnidireccional

2.2 Amplificador operacional LM_741


Este dispositivo es un amplificador de propósito general bastante conocido y de uso muy
extendido. Sus parámetros son bastante regulares, no teniendo ninguno que sea el mejor
respecto a los de los demás, pero en conjunto presenta una alta impedancia de entrada,
pequeños offset (de corriente y de voltaje) en la entrada y buenos parámetros.
En estos días es un dispositivo compensado por frecuencia y aunque todavía es usado
extensamente, los tipos de bipolares tienen menos ruido y están reemplazando los
amplificadores operacionales de viejo estilo. El 741 es un amp. op. de alto rendimiento con su
alta ganancia de lazo abierto, compensación interna, alto modo de rango común y
excepcional de estabilidad de temperatura. El 741 es un pequeño circuito protegido y hecho
para la falta de información debido a la compensación o perdida de voltaje.
Voltaje Suministrado (+/-Vs): El voltaje máximo (positivo y negativo) que puede ser
seguramente usado para alimentar el amp. op.
Disipación (Pd): El máximo poder o potencia del amp. op. dado por la disipación, como por la
temperatura especifica del ambiente (500Mw @ 80°C).
Voltaje de Entrada( Vicm).- El máximo voltaje de entrada que puede ser simultáneamente
aplicado entre ambas entradas y tierra así como la referencia al modo común de voltaje. En
general el máximo voltaje es igual al el voltaje suministrado.
Operación de Temperatura (Ta).- Esta es el rango de la temperatura ambiente para la cual el
amp. op. puede operar dentro de las especificaciones del fabricante.

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 4
Duración de salida del corto circuito.- ésta es la cantidad de tiempo que una salida del amp. op.
se puede corto circuitar a cualquier voltaje suministrado.
Con este circuito integrado se realiza la etapa del filtrado de frecuencias bajas (filtro pasa bajas), para
después amplificar esa señal con este mismo integrado. Un filtro de paso bajas permite todas las
frecuencias por debajo de un punto, conocido como la frecuencia de corte, para pasar sin
atenuación mientras se suprimen todas las frecuencias superiores al corte. En este circuito,
construido alrededor de un amplificador operacional 741, la frecuencia de corte esta
determinada por los valores de los condensadores C1 y C2 y las resistencias R1 y R2. C1 y C2
son idénticos como R1 y R2. La frecuencia de corte esta determinada por la siguiente formula:
frecuencia de corte = 1/2piRC donde pi es 3,14159... La ganancia de este circuito es igual a
R4/R3. La salida en la frecuencia de corte es igual a 0.707 de la salida máxima.

Figura 4: Amplificador operacional LM741

3. MEDIDOR DE TEMPERATURA
La temperatura es una medida del calor que tiene un cuerpo. Para determinarla se utilizan los
termómetros, instrumentos basados en algún fenómeno físico cuantificable que brindan una
medida objetiva de la temperatura (el fenómeno más utilizado es el de la expansión térmica).
La temperatura desde el punto de vista de importancia, la tiene en alto grado, ya que nos sirve
como punto de referencia a bastantes eventualidades y diagnósticos. Debido a ser una medida
bastante lenta su trabajo en si no la ha ce un factor difícil de estudiar. Desde hace tiempo se le
ha tratado de ampliar su campo de conocimiento y se han descubierto varios métodos de
medición, y escalas para su estudio.

Figura 5: Diagrama a bloques del medidor de temperatura

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 5
Figura 6: Circuito eléctrico del medidor de temperatura

3.1 Regulador de voltaje LM_336


Para obtener un voltaje de referencia de precisión se utilizó el diodo zener LM336 a 2.5V sus
características son las siguientes:
- Bajo coeficiente de temperatura.
- Estabilidad para la temperatura.
- Corriente de operación de 400 µA a 10 mA.
- Impedancia dinámica de 0.2 O.
- Encendido rápido.
Se ajustó el voltaje de salida a 2.49 V del LM336 y se amplifico su señal mediante un
amplificador no inversor como se puede ver en la figura 6. La ganancia de amplificación se
calcula con la formula 1.

R5 Vo
AV = 1 + = (1)
R 4 Vi

Figura 7: Regulador LM_336


Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com
Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 6
3.2 Amplificador diferencial con el LM_741
Este circuito presenta como característica notable la amplificación de la diferencia entre las
dos tensiones de entrada. Presenta el inconveniente de que la impedancia de entrada del
amplificador disminuye sensiblemente y además las dos resistencias R1 y las dos R2 deben ser
exactamente iguales.

Figura 8: Amplificador diferencial

Puesto que sabemos que las tensiones de las patillas inversora y no inversora deben ser
iguales, podemos afirmar que tanto las resistencias R1 y R2 superiores como las R1 y R2
inferiores se encuentran en serie. Planteando las ecuaciones 2 y 3:

Vi − Va Va − Vout (2)
=
R1 R2
V 2 − Va Va
= (3)
R1 R2
De estas dos igualdades (donde Va es la tensión de entrada tanto en la patilla no inversora
como en la inversora) podemos obtener la tensión de salida en función de los valores R1, R2 y
las tensiones de entrada Para ello despejamos lo valores Va de ambas expresiones obteniendo:
R2
V1
Va = R1 (4)
R2
1+
R1
Igualando ambas expresiones resulta trivial obtener la expresión final de la tensión de salida:
R2
Va = (V 2 − V 1) (5)
R1
Como se puede ver esta configuración amplifica o atenúa la diferencia existente en las dos
entradas V2 y V1.
Para obtener 10 mV / º C se tiene un amplificador diferencial básico con el sensor LM_335.

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 7
3.3 Sensor de temperatura LM_335
Trabaja como un diodo zener cuyo voltaje de ruptura es directamente proporcional la
temperatura que llegue a la superficie. Por cada grado de temperatura, el LM_335 varía su
voltaje en mV, presentando teóricamente una lectura de 0V. a 0 ºK. (-273ºC).
Para conseguir 10 mV. Con este circuito, tenemos que tener en cuenta que le sensor por sí sólo
en su estado básico, nos proporciona 10mV/ºK. Por ello deberemos estudiar el paso de ºK. a
ºC: Tomamos como referencia: 0ºC -- 273 ºK. ; 27ºC-- 300ºK.
Por esta razón, se elijen de entre los múltiples circuitos que nos proporciona la documentación
de National, este modelo. Se elije este tipo de circuito porque nos permite ajustar fácilmente
mediante potenciómetros, para obtener así a la salida 10 mV/ºC. Sólo cambiaremos del
circuito obtenido en la documentación de National el amplificador operacional. El sensor ya
estará ajustado a 10 mV/ºC. El operacional es realimentado negativamente. El circuito
conectado a la entrada positiva del operacional nos sirve de referencia para la entrada negativa,
que es la entrada que varía respecto a la temperatura.
Para poder realizar la medición de la temperatura se seleccionó el sensor de temperatura C.I.
LM335, aprovechando también sus características, se protegió contra una sobre corriente
mediante una resistencia como se puede ver en la figura 6, y con la formula para R6:

Vcc
R6 = (6)
I

Figura 9: Sensor LM_335

4. MICROCONTROLADOR PIC_16F877
Se denomina microcontrolador a un dispositivo programable capaz de realizar diferentes
actividades que requieran del procesamiento de datos digitales y del control y comunicación
digital de diferentes dispositivos. Los microcontroladores poseen principalmente una ALU
(Unidad Lógico Aritmética), memoria del programa, memoria de registros, y pines I/O
(entrada y/0 salida). La ALU es la encargada de procesar los datos dependiendo de las
instrucciones que se ejecuten (ADD, OR, AND), mientras que los pines son los que se
encargan de comunicar al microcontrolador con el medio externo; la función de los pines
puede ser de transmisión de datos, alimentación de corriente para un funcionamiento de este o
pines de control especifico.
En este proyecto se utiliza el PIC 16F877. Este microcontrolador es fabricado por MicroChip
familia a la cual se le denomina PIC. El modelo 16F877 posee varias características que hacen

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 8
a este microcontrolador un dispositivo muy versátil, eficiente y practico para ser empleado en
esta aplicación médica.
Algunas de estas características importantes se muestran a continuación:
-Soporta modo de comunicación serial, posee dos pines para ello.
-Amplia memoria para datos y programa.
-Memoria reprogramable: La memoria en este PIC es la que se denomina FLASH; este tipo
de memoria se puede borrar electrónicamente (esto corresponde a la "F" en el modelo).
-Set de instrucciones reducido (tipo RISC), pero con las instrucciones necesarias para
facilitar su manejo.

4.1 Características del microcontrolador PIC_16F877


En la siguiente tabla y figuras de pueden observar las características más relevantes del PIC:
CARACTERÍSTICAS 16F877
Frecuencia máxima DX-20MHz
Memoria de programa flash palabra de 14 bits 8KB
Posiciones RAM de datos 368
Posiciones EEPROM de datos 256
Puertos E/S A,B,C,D,E
Número de pines 40
Interrupciones 14
Timers 3
Módulos CCP 2
Comunicaciones Serie MSSP, USART
Comunicaciones paralelo PSP
Líneas de entrada de CAD de 10 bits 8
Juego de instrucciones 35 Instrucciones
Longitud de la instrucción 14 bits
Arquitectura Harvard
CPU Risc

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 9
Canales Pwm 2

Pila Harware -

Ejecución En 1 Ciclo Máquina -


Tabla 1: Características del microcontrolador PIC_16F877

Figura 11: Microcontrolador PIC_16F877

Figura 10: Diagrama a bloques del PIC_16F877

Este microcontrolador de la figura 11 se utiliza en este proyecto para realizar el conteo de los
pulsos de la frecuencia cardiaca, convertir las señales analógicas de entrada en digitales, y
mostrar los resultados digitales codificados para mostrarlos en los display de siete segmentos.

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 10
4.2 Diseño del programa para el microcontrolador PIC_16F877
Se programa para que el puerto A sea la entrada de las señales analógicas, una entrada como
contador de frecuencias cardiacas y otra entrada para la conversión de analógica a digital, el
puerto B sea la salida a los display, y el puerto C como el control de las lecturas del los
display’s.
El código del programa en lenguaje ensamblador se encuentra en el Apéndice A.

4.2.1 Diagrama de flujo

Figura 12: Diagrama de flujo para el programa del PIC_16F877

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 11
5. DISPLAY DE SIETE SEGMENTOS
Una de las aplicaciones mas populares de los LED’s es la de señalización. Quizás la mas
utilizada sea la de 7 LED’s colocadas en forma de ocho tal y como se indica en la figura 9.
Aunque externamente su forma difiere considerablemente de un diodo LED típico,
internamente están constituidos por una serie de diodos LED con unas determinadas
conexiones internas. En la figura 13 se indica el esquema eléctrico de las conexiones del
interior de un indicador luminoso de 7 segmentos.

Figura 13: Display de sietes segmentos

La figura 13 se muestra un indicador de siete segmentos. Contiene siete LED rectangulares (a -


g), en el que cada uno recibe el nombre de segmento porque forma parte del símbolo que esta
mostrando. Con un indicador de siete segmentos se pueden formar los dígitos del 0 al 9,
también las letras a, c, e y f y las letras minúsculas b y d. Los entrenadores de
microprocesadores usan a menudo indicadores de siete segmentos para mostrar todos los
dígitos del 0 al 9 mas a, b, d, d, e y f.
En el proyecto se utiliza el display de siete segmentos con estructura en cátodo común, para
poder visualizar los resultados de de la frecuencia cardiaca y de la temperatura de cada
paciente.
Los transistores 2N2222 solo son la parte del control para la visualización de los display’s, por
medio del microcontrolador PIC_16F877.

En la figura 14 se observa la parte final del proyecto.

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 12
Figura 14: Circuito eléctrico del microcontrolador PIC_16F877 y los display’s de siete segmentos

6. CONCLUSIONES
Tiempo atrás el hombre sintió la necesidad de desarrollar dispositivos que fueran capaces de
diagnosticar las variables del cuerpo humano como son la temperatura y la frecuencia cardiaca,
es por eso que el surgimiento del los termómetros y estetoscopios son considerados de gran
ayuda para el sector salud de ahí que surgió la inquietud de poder realizar un instrumento
capaz de llevar acabo estas mediciones con mayor rapidez y exactitud.
Con el diseño de este proyecto denominado “UNIDAD MÉDICA”, ratificamos que los diseños
electrónicos son de mucha importancia para el bienestar de la humanidad, ya que los podemos
aplicar en diversas actividades para un logro común.
Otro aspecto importante que señalar es que los sistemas digitales con frecuencia se deben
interconectar con equipos analógicos y que gracias a que existen disposit ivos que transforman
una señal analógica a digital y viceversa la tecnología a podido seguir adelante en su
desarrollo.
Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com
Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 13
Por otra parte los componentes electrónicos requeridos para el proyecto están disponibles en el
mercado nacional y muy económicos, con lo que se nos facilita llevar a cabo el montaje y el
mantenimiento del diseño, y en especial dispositivo medico no requiere de personal
especializado en el manejo del equipo.
Se recomienda realizar este proyecto para poder llevarlo a las comunidades humildes,
indígenas o marginadas que necesiten este tipo de aparatos para que tengan un control del
estado de salud de sus habitantes.
También se le pueden anexan otros circuitos para determinar otro tipo de variables físicas y así
determinar otro tipo de mediciones médicas y visualizarlas en un display LCD por ejemplo.

7. REFERENCIAS BIBLIOGRÁFICAS
[1] Guyton, Arthur C. Fisiología Humana. Segunda Edición. Nueva Editorial Interamericana S.A. de C.V.
[2] Coughlin, Robert F. Driscoll, Frederick F. Amplificadores Operacionales y Circuitos Integrados Lineales.
Cuarta Edición. Editorial Prentice Hall Hispanoamérica S.A.
[3] Franco, S. Design with operational amplifiers and analog integrated circuits. Editorial McGraw-Hill
[4] Ghausi, M.S. Circuitos electrónicos: discretos e integrados. Nueva Editorial Interamericana.
[5] Malik, N. R. Circuitos electrónicos: análisis, simulación y diseño. Prentice-Hall
[6] Millman, J., Grabel, A. Microelectrónica. Ed. Hispano-Europea
[7] http://proton.ucting.udg.mx/materias/ET201/index.html
[8] http://www.datasheetcatalog.com/
[9] http://www.alos.5u.com/indexpic877.htm#CURSO%20B%C1SICO%20DE%20PIC16F877
[10] http://en.wikipedia.org

8. APÉNDICE A
Código del programa en lenguaje ensamblador DE MICROCONTROLADOR PIC_16F877

list p=16f877 ;Comando que indica el Pic usado


include "p16f877.inc" ;Etiquetas genéricas para el Pic16F877
org 0x000 ;Inicio del programa en la posición cero de memoria
nop ;Libre (uso del debugger)
nop
CBLOCK 20H
R0
R1
R2
R3
R4
_inicio
bsf STATUS,RP0 ;Ir banco 1
bcf STATUS,RP1
movlw CONF_ADCON1 ;PA como entrada digital
movwf ADCON1
movlw 0xFF
movwf TRISA ;PA entrada
clrf TRISB ;PB salida
movlw CONF_OPT
Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com
Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 14
movwf OPTION_REG ;Configuracion del TMRO
bcf STATUS,RP0 ;Ir banco 0
bcf STATUS,RP1
clrf TMR0 ;TMR0=0
ADC
bcf STATUS,RP0 ;Ir banco 0
bcf STATUS,RP1
movlw b'01000001' ;A/D conversion Fosc/8
movwf ADCON0
bsf STATUS,RP0 ;Ir banco 1
bcf STATUS,RP1
clrf TRISA ;PORTA salida
clrf TRISB ;PORTB salida
clrf TRISC ;PORTC salida
clrf TRISD ;PORTD salida
clrf TRISE ;PORTE salida
movlw b'00000111'
movwf OPTION_REG ;TMR0 preescaler, 1:156
movlw b'00001110' ;A/D Port AN0/RA0
movwf ADCON1
bsf TRISA,0 ;RA0 linea de entrada para el ADC
bcf STATUS,RP0 ;Ir banco 0
bcf STATUS,RP1
clrf PORTC ;Limpiar PORTC
_bucle
btfss INTCON,T0IF
goto _bucle ;Esperar que el timer0 desborde
bcf INTCON,T0IF ;Limpiar el indicador de desborde
bsf ADCON0,GO ;Empezar la conversion A/D
_espera
btfsc ADCON0,GO ;ADCON0 es 0? (la conversion esta completa?)
goto _espera ;No, ir _espera
movf ADRESH,W ;Si, W=ADRESH
movwf PORTC ;Muestra el resultado en PORTC
goto _bucle ;Ir bucle
end
BUCLE
movf TMR0,W ;W=TMR0
movwf TEMP ;TEMP=W
movlw LIMITE ;W=10
xorwf TEMP,W ;W XOR TEMP
btfss STATUS,Z ;EL resultado de la anterior instruccion es 0?
goto SIGUE ;Z=0, NO es diferente de 0, TMRO = 0,1,2,3,4,5,6,7,8,9
clrf TMR0 ;Z=1, SI vale 10, TMRO > 9, TMR0=0
clrf TEMP ;Temp=0
call FRECUENCIA
call TEMPERATURA
SIGUE movf TEMP,W ;W=TEMP
call DISPLAY ;Decodifica el valor de DISPLAY

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 15
movwf PORTB ;Escribe el valor en PORTB
goto BUCLE ;Salta a la etiqueta bucle
DISPLAY
addwf PCL,f
retlw b'01000000' ;0
retlw b'01111001' ;1
retlw b'00100100' ;2
retlw b'00110000' ;3
retlw b'00011001' ;4
retlw b'00010010' ;5
retlw b'00000010' ;6
retlw b'01111000' ;7
retlw b'00000000' ;8
retlw b'00010000' ; 9
END
Frecuencia
bsf STATUS,RP0 ;Ir banco 1
bcf STATUS,RP1
clrf TRISA ;PORTA salida
clrf TRISB ;PORTB salida
clrf TRISC ;PORTC salida
clrf TRISD ;PORTD salida
clrf TRISE ;PORTE salida
movlw b'10000000' ;configuración del registro OPTION
movwf OPTION_REG
bcf STATUS,RP0 ;Ir banco 0
bcf STATUS,RP1
movlw b'00110000' ;Contador interno de 16 bits
movwf T1CON
clrf CONTA ;CONTA = 0
clrf PORTC ;PORTC = 0
_bucle
movf CONTA,W ;Cargar el valor de CONTA en W
call _display ;Llama a la tabla _display
movwf PORTC ;Al retornar de la subrutina el valor de W se saca
;por el PORTC
call _retardo ;Llama a la subrutina retardo
incf CONTA,F ;incrementa el valor de CONTA
movlw d'8' ;Verifica si ha llegado a 8
subwf CONTA,W
btfss STATUS,Z
goto _bucle ;Si no es 8: ir _bucle
clrf CONTA ;Si es 8: CONTA = 0
goto _bucle ;Ir _bucle
_retardo
bcf PIR1,TMR1IF ;Borrar la bandera de desborde
clrf TMR1L ;Limpiar los registros de conteo
clrf TMR1H
bsf T1CON,TMR1ON ;Habilita el TMR1

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 16
_espera
btfss PIR1,TMR1IF ;Verificar el desborde
goto _espera ;Si no ir _espera
bcf T1CON,TMR1ON ;Si desborda: limpiar bandera de desborde
return ;Retorno
_display
addwf PCL,F ;pcl + W >>>> W
;El PCL se incrementa con el valor de W
;proporcionando un salto
retlw b'10000000' ;retorna con valores para PORTC
retlw b'11000000'
retlw b'11100000'
retlw b'11110000'
retlw b'11111000'
retlw b'11111100'
retlw b'11111110'
retlw b'11111111'
end
Temperatura
BSF STATUS,RP0 ;IR AL BANCO 1
BCF STATUS,RP1
MOVLW 0FFH
MOVWF TRISA ;RA0, RA1 Y RA2 ENTRADA ANALÓGICA
CLRF TRISC ;PORTC Y D, SALIDAS,C ES LA SALIDA Y D ES EL QUE MULTIPLEXA
CLRF TRISD
MOVLW 0FFH
MOVWF TRISB ;PORT B PARA INTERRUPCIONES
MOVLW 82H
MOVWF ADCON1 ;CONFIGURAR PUERTO ANALÓGICO: JUSTIFICADO A LA DERECHA
(6
MSB =0), TODOS SON ENTRADAS ANALÓGICAS Y EL VOLTAJE DE REFERENCIA ES VDD Y VSS,
PORTE
SALIDA DIGITAL
CLRF TRISE
BCF STATUS,RP0 ;IR AL BANCO 0
CLRF ADRESL
CLRF ADRESH
CLRF PORTA
CLRF PORTC
CLRF PORTD
TEMPERATURAS
CALL RETARDO2
CALL TERMOPAR
GOTO TEMPERATURAS
LM35
BSF PORTE,0
MOVLW 81H
MOVWF ADCON0 ;CONFIGURAR LA LECTURA DEL ADC, TIENE UN TOSC DE 32 Y SE LEE RB0
CALL ADC

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 17
BCF STATUS,C ;LIMPIAR CARRY
RRF CONVERT,F ;DIVIDIR ENTRE DOS, PUES CADA CAMBIO EN EL LM35 ES IGUAL A
SUMARLE 2 BITS AL ADC
MOVF CONVERT,W
;SUBLW 09H ;OFFSET
ADDLW 05H ;SOLO EN CASO DE QUE HAGA FALTA ACOMODAR EL OFFSET
MOVWF BINARIO1
CALL BIN_BCD ;CONVERTIR EL DATO BINARIO A DECIMAL
CALL MUX
DECFSZ R4,F
GOTO LM35
RETURN
TABLA_TERMISTOR
ADDWF PCL,F ;PROGRAM CONTER + POSICIÓN EN LA TABLA
RETLW D'23' ;70H
RETLW D'23' ;0
RETLW D'23' ;0
RETLW D'23' ;0
RETLW D'23' ;0
RETLW D'23' ;0
RETLW D'23' ;0
RETLW D'24' ;77H
RETLW D'25' ;0
RETLW D'29' ;0
RETLW D'31' ;0
RETLW D'33' ;0
RETLW D'34' ;0
RETLW D'36' ;0
RETLW D'37' ;0
RETLW D'38' ;0
RETLW D'39' ;80H
RETLW D'40' ;0
RETLW D'41' ;0
RETLW D'41' ;0
RETLW D'42' ;0
RETLW D'43' ;85H
RETLW D'44' ;0
RETLW D'44' ;0
RETLW D'44' ;0
RETLW D'45' ;0
RETLW D'45' ;8AH
RETLW D'46' ;0
RETLW D'47' ;0
RETLW D'47' ;0
RETLW D'48' ;0
RETLW D'49' ;8FH
RETLW D'50' ;90H
RETLW D'50' ;0
RETLW D'51' ;0

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 18
RETLW D'51' ;0
RETLW D'51' ;0
RETLW D'51' ;0
RETLW D'51' ;0
RETLW D'52' ;97H
RETLW D'52' ;0
RETLW D'53' ;99H
RETLW D'54' ;0
RETLW D'55' ;0
RETLW D'55' ;0
RETLW D'56' ;0
RETLW D'56' ;0
RETLW D'57' ;9FH
RETLW D'57' ;0
RETLW D'57' ;0
RETLW D'57' ;0
RETLW D'57' ;0
RETLW D'57' ;0
RETLW D'58' ;A5H
RETLW D'58' ;0
RETLW D'58' ;0
RETLW D'58' ;0
RETLW D'58' ;0
RETLW D'58' ;0
RETLW D'58' ;0
RETLW D'58' ;0
RETLW D'58' ;0
RETLW D'58' ;0
RETLW D'58' ;0
RETLW D'58' ;0
RETLW D'58' ;0
RETLW D'58' ;0
RETLW D'58' ;0
RETLW D'58' ;0
RETLW D'59' ;B5H
RETLW D'59' ;0
RETLW D'59' ;0
RETLW D'60' ;B8H
RETLW D'60' ;0
RETLW D'61' ;BAH
RETLW D'61' ;0
RETLW D'62' ;BCH
RETLW D'63' ;BDH
RETLW D'63' ;0
RETLW D'63' ;0
RETLW D'63' ;0
RETLW D'63' ;0
RETLW D'63' ;0
RETLW D'63' ;0

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 19
RETLW D'63' ;0
RETLW D'63' ;0
RETLW D'64' ;C6H
RETLW D'64' ;0
RETLW D'64' ;0
RETLW D'64' ;0
RETLW D'64' ;0
RETLW D'64' ;0
RETLW D'65' ;CCH
RETLW D'66' ;0
RETLW D'66' ;CEH
RETLW D'66' ;0
RETLW D'66' ;0
RETLW D'66' ;0
RETLW D'66' ;0
RETLW D'66' ;0
RETLW D'66' ;0
RETLW D'66' ;0
RETLW D'66' ;0
RETLW D'66' ;0
RETLW D'66' ;0
RETLW D'66' ;0
RETLW D'67' ;DAH
RETLW D'67' ;0
RETLW D'67' ;0
RETLW D'67' ;0
RETLW D'67' ;0
RETLW D'68' ;DFH
RETLW D'68' ;0
RETLW D'68' ;0
RETLW D'68' ;0
RETLW D'68' ;0
RETLW D'69' ;E4H
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 20
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'69' ;0
RETLW D'70' ;FFH
RETLW D'70' ;0
RETURN

Arturo García Barragán, Código: 300829633, macartur_555@hotmail.com


Unidad Médica de Frecuencia Cardiaca y Temperatura
Ciclo Escolar 2006-B
Página 21

You might also like