TODOPIC
Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: AzucenaXP en 02 de Abril de 2004, 16:34:00
-
Hola a todos!
Alguien sabe como puedo realizar un sistema de adquisicion de datos empleando el pic 16f877a?, ...tambien me sirve con un adc0808 conectado al puerto paralelo (no he podido ponerlo a funcionar).
Necesito adquirir voz para realizar un sistema de modulacion qpsk, por medio de labView o Matlab pero he tenido problemas con la adquisicion de los datos en el pc.
Saludos!
-
hola Azucena
Tengo una subrutina de configuracion del A/D en un pic 16F871 el cual lo puedes adaptar al 16F877 nose que resultado tenga en el 16F877A pero tienes que probarlo. Suerte
list p=16f871
#include <p16f871.inc>
__config h"3939"
TEMP0 equ 0x21 ;DECLARA VARIABLES EN RAM
TEMP1 equ 0x22
Contador1 equ 0x23 ;variable para demora
org 0x00
goto princi
;;;;;;;;Configurar puertos de entrada y salida
;;;;;;;;;;configurar A/D
princi
bsf STATUS,RP0 ;Pasamos al banco1 de la memoria
clrf TRISD ;Puerto D sea como salida
clrf TRISC
movlw 0xFF
movwf TRISB
movlw 0x00
movwf OPTION_REG
bsf TRISA,0 ;ingreso RA0
bcf STATUS,RP0 ;Pasamos al banco 0
clrf PORTD ;Reset puerto D
clrf TEMP0 ;Enceramos registros temporales
clrf TEMP1
lup bsf STATUS,RP0 ;Pasamos al banco 1
movlw b"00001110" ;CONFIGURA ENTRADA ANALOGIA AN0
movwf ADCON1
bcf STATUS,RP0 ;bank0
movlw b"10000001" ; DE Fosc/32
movwf ADCON0
;;;;;demora de tiempo de adquisicion
call t_ad
;;;;START CONVERSION;;;;;;;;;;;;;;;;;;;;;;;;;;
bcf STATUS,RP0 ;bank0
bsf ADCON0,2 ;GO/DONE=1
;;;;;;;;;espera si se completa la conversion
lupe_con btfsc ADCON0,2
goto lupe_con
bsf STATUS,RP0 ;bank1
movf ADRESL,w ;COLOCA ADRESH:ADRESL
movwf TEMP0
bcf STATUS,RP0 ;bank0
movf ADRESH,w
movwf TEMP1
bcf STATUS,C
movf TEMP1,w
movwf PORTD ;mandamos dato a PORTD
call t_ad
call t_ad
goto lup
;Demora
t_ad movlw d"26"
movwf Contador1
bucle decfsz Contador1,f
goto bucle
return
end
-
Gracias!
Lo voy a adaptar al chip que tengo y ojala me funcione pues solo tengo esta semana para terminar el proyecto.
Saludos!