INFORME 6 MICROCONTROLADORES

April 8, 2017 | Author: Leninlmv | Category: N/A
Share Embed Donate


Short Description

Download INFORME 6 MICROCONTROLADORES...

Description

UNIVERSIDAD POLITÉCNICA SALESIANA FACULTAD DE INGENIERIAS INGENIERIA DE ELECTRÓNICA LABORATORIO DE sistemas Microprocesados

PRACTICA pic No. 6

CONVERSIÓN ANÁLOGA DIGITAL Y DIGITAL ANÁLOGA

SEXTO ELECTRÓNICA Integrantes:

LENIN VELASQUEZ DIEGO DUQUE JONATHAN ECHEVERRÍA

OBJETIVOS:  Utilizar los conversores A/D y D/A del microcontrolador PIC. MATERIALES:                

1 Resistencia 10 k 1 Resistencia 330  3 Resistencia 5k  1 LCD 2 Capacitores de 33pF 2 Pulsador normalmente abierto 1 Cristal 4 MHz LM35 LM741 1 Pic 16f877A 1 Dac 0808 1Potenciometro de 10kΩ 1Potenciometro de 5kΩ 4 Resistencia 1k  1 MCP 3204 2 2N3904

MARCO TEÓRICO: Las características del Pic 16f887A podemos encontrar como ya sabemos en los datasheet para poder saber las diferentes conexiones de este Microcontrolador. El LM35 es un sensor analógico que devuelve la temperatura en forma de tensión, esta tensión devuelta es proporcional a la temperatura. Su rango comprende desde -55 hasta 150 y el valor devuelto es equivalente a la temperatura dividida para 10, entonces en su salida se obtienen valores como estos.

A continuación mostraremos los circuitos realizados a los circuitos ya funcionando.

PROGRAMA 1:  Conversión A/D con el microcontrolador PIC 16f877. Se adquiere la señal de un potenciómetro entre 0 y 5 voltios, y se observa en el LCD un valor entre 0 y 1024 Código program PRACTICA6 DIM VOLTAJE AS WORD DIM VALOR AS STRING[10] sub procedure init ADCON1=$80 trisa=$ff lcd_config(portb,7,6,5,4,portb,0,1,2) lcd_cmd(lcd_cursor_off) end sub main: init While TRUE VOLTAJE=Adc_read(0) wordtostr(voltaje,valor) lcd_cmd(lcd_clear) lcd_out(1,1,valor) delay_ms(300) wend end. SIMULACIÓN:

'Fin de programa

FLUJO GRAMA: Inicio

Dim voltaje as Word Dim valor as string

Sub procedure adcon1=$80

Configurar puerto A como entrada

Configuracion del LCD lcd_config(portb,7,6,5,4,portb,0,1,2) lcd_cmd(lcd_cursor_off)

Lazo while

Condición del while

Retardo de 0.3 segundos

Fin

PROGRAMA 2:  Conversión A/D con el microcontrolador PIC 16f877. Se adquiere un valor entre 0 y 5 voltios y se observa, en el LCD el valor entre 0 y 5 voltios. Código program PRACTICA62 dim voltaje as float dim valor as string[10] sub procedure init option_reg=$80 adcon1=$80 trisa=$ff lcd_config(portb,7,6,5,4,portb,0,1,2) lcd_cmd(lcd_cursor_off) end sub main: init while true voltaje=adc_read(0) voltaje=(voltaje*5)/1024 floattostr(voltaje,valor) lcd_cmd(lcd_clear) lcd_out(1,1,valor) delay_ms(300) wend end. 'Fin de programa

SIMULACIÓN:

FLUJO GRAMA: Inicio

Dim voltaje as float Dim valor as string

Option_reg=$80 Sub procedure adcon1=$80

Configurar puerto A como entrada

Configuracion del LCD lcd_config(portb,7,6,5,4,portb,0,1,2) lcd_cmd(lcd_cursor_off)

Lazo while

Condición del while

Retardo de 0.3 segundos

Fin

PROGRAMA 3:  Elabore un programa que utilice el timer en modo de contador externo, y se visualice el incremento en un display de 7 segmentos. Código program PRACTICA63 'lm35 dim temp_res as word resultado as word outtxt as byte[5] main: adcon1=%10001110 'Configuración Vref y AN0 trisa=%00000001 'Porta.0 como salida trisb=0 'Portb como salida lcd_config(portb,7,6,5,4,portb,0,1,2) 'Configuración LCD en el puerto B lcd_cmd(lcd_cursor_off) 'Eliminamos el cursor lcd_cmd(lcd_clear) 'Limpiamos el LCD lcd_out(1,1,"Temp:") 'Mostramos ”Temp:” en el LCD while true temp_res=adc_read(0) 'Lectura de la entrada analógica resultado=temp_res*48 'Conversión ADC/Temperatura wordtostr(resultado,outtxt) 'Convertimos la variable resultado a texto lcd_chr(1,6,outtxt[0]) 'Presentamos cada carácter en el LCD lcd_chr(1,7,outtxt[1]) lcd_chr(1,8,outtxt[2]) lcd_chr(1,9,".") lcd_chr(1,10,outtxt[3]) lcd_chr(1,11,outtxt[4]) delay_ms(1000) 'Retraso de un segundo wend end. 'Fin de programa

SIMULACIÓN:

FLUJO GRAMA: Inicio

Dim temp_res as Word Dim resultado as word Dim OutTxt as word

adcon1=%10001110

Configurar puerto A como entrada t el puerto B como salida

Configuracion del LCD lcd_config(portb,7,6,5,4,portb,0,1,2) lcd_cmd(lcd_cursor_off)

Lazo while

Condición del while

Retardo de 1 segundos

Fin

PROGRAMA 4:  Conversión digital análoga. program PRACTICA64 sub procedure init trisd=0 end sub dim i as byte dim a as byte a=0 i=0 main: while true init for i=1 to 255 a=a+1 portd=a next i delay_ms(100) wend end. SIMULACIÓN:

'Fin de programa

FLUJO GRAMA: Inicio

Sub procedure init

Configurar puerto D como salida

Dim i as byte Dim a as byte

a=0 i=0

Lazo while

Condición del while

Retardo de 0.1 segundos

Fin

PROGRAMA 5:  Convertidor análogo digital de 12 bits. program Practica65 dim i,j as byte dim k as word dim l as float dim txt1, txt2 as string[6] sub procedure ret1 delay_ms(1000) end sub sub procedure tx k=i
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF