TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: hernanutn en 15 de Noviembre de 2014, 10:47:34

Título: conectar adc7841 con el pic 18F4550
Publicado por: hernanutn en 15 de Noviembre de 2014, 10:47:34
hola mi consulta es que tengo este adc (SERIAL INTERFACE) y quiero conectarlo al pic, debo usar el protocolo SPI y el puerto serie del pic para obtener los datos? la verdad no se como encarar la conexion al pic. desde ya gracias..
Título: Re: conectar adc7841 con el pic 18F4550
Publicado por: KILLERJC en 15 de Noviembre de 2014, 12:43:39
Asi es... los pines serian:

DCLK - Clock
DIN - data in
DOUT - Data out
CS - chip select

En el datasheet del archivo explica como funciona, si posee CS tu SPI tenes que mantenerlo bajo todo el tiempo, basicamente tenes que enviar un dato y luego enviar 2 veces 0x00, para poder leer el resultado.
http://www.wvshare.com/datasheet/TI_PDF/ADS7841.PDF
Título: Re: conectar adc7841 con el pic 18F4550
Publicado por: hernanutn en 15 de Noviembre de 2014, 13:04:11
Asi es... los pines serian:

DCLK - Clock
DIN - data in
DOUT - Data out
CS - chip select

En el datasheet del archivo explica como funciona, si posee CS tu SPI tenes que mantenerlo bajo todo el tiempo, basicamente tenes que enviar un dato y luego enviar 2 veces 0x00, para poder leer el resultado.
http://www.wvshare.com/datasheet/TI_PDF/ADS7841.PDF

ok, donde puedo buscar para ver como configurar el spi como maestro en el compilador Pic C compiler, xq nunca programe el protocolo SPI
Título: Re: conectar adc7841 con el pic 18F4550
Publicado por: KILLERJC en 16 de Noviembre de 2014, 02:34:19
Lamentablemente yo no puedo ayudarte en eso. Podes buscar por el foro o en google como "CCS SPI hardware"

Ya que posee tanto para la generacion de SPI por software como hardware. Si alguien mas sabe podes preguntarlo, o postearlo en Lenguaje C para PIC, ahi alguien te contestara. yo no te puedo decir mucho.

Vi que algunos usan #SPI otros setup_spi();

#define SPI_MODE_0  (SPI_L_TO_H | SPI_XMIT_L_TO_H)
#define SPI_MODE_1  (SPI_L_TO_H)
#define SPI_MODE_2  (SPI_H_TO_L)
#define SPI_MODE_3  (SPI_H_TO_L | SPI_XMIT_L_TO_H)

setup_spi(SPI_MASTER | SPI_MODE_2 | SPI_CLK_DIV_4 );

Las demas funciones son:

setup_spi( )
setup_spi2( )
spi_data_is_in( )
spi_data_is_in2( )
spi_read( )  // Esta para leer
spi_read2( )
spi_write( )  // Esta para escribir
spi_write2( )
spi_xfer( )

el 2 hara referencia al SPI2 por si tiene 2.. realmente no se. creo que configurandolo y escribiendo y leyendo con las que marque deberia estar, sino podes hacerlo a la forma tradicional y leer/escribir los registros del SPI.
Título: Re: conectar adc7841 con el pic 18F4550
Publicado por: hernanutn en 16 de Noviembre de 2014, 12:42:10
Lamentablemente yo no puedo ayudarte en eso. Podes buscar por el foro o en google como "CCS SPI hardware"

Ya que posee tanto para la generacion de SPI por software como hardware. Si alguien mas sabe podes preguntarlo, o postearlo en Lenguaje C para PIC, ahi alguien te contestara. yo no te puedo decir mucho.

Vi que algunos usan #SPI otros setup_spi();

#define SPI_MODE_0  (SPI_L_TO_H | SPI_XMIT_L_TO_H)
#define SPI_MODE_1  (SPI_L_TO_H)
#define SPI_MODE_2  (SPI_H_TO_L)
#define SPI_MODE_3  (SPI_H_TO_L | SPI_XMIT_L_TO_H)

setup_spi(SPI_MASTER | SPI_MODE_2 | SPI_CLK_DIV_4 );

Las demas funciones son:

setup_spi( )
setup_spi2( )
spi_data_is_in( )
spi_data_is_in2( )
spi_read( )  // Esta para leer
spi_read2( )
spi_write( )  // Esta para escribir
spi_write2( )
spi_xfer( )

el 2 hara referencia al SPI2 por si tiene 2.. realmente no se. creo que configurandolo y escribiendo y leyendo con las que marque deberia estar, sino podes hacerlo a la forma tradicional y leer/escribir los registros del SPI.

ok, muchas gracias