Módulo SPI en PIC 18F452 para controlar un Reóstato Digital

#1
Hola

Estoy intentando hacer funcionar un Reóstato digital MCP4162 con un PIC 18F452, para programar el PIC estoy utilizando MPLab con mcc18. He intentado configurar el módulo pero me dí cuenta que la transferencia no comienza por que el reloj SCK no manda el primer pulso para comenzar la comunicación, el oscilador es un cristal externo de 4 MHz y el código que estoy usando es el siguiente:

Código:
#include<p18f452.h>
#include<spi.h>
#include<delays.h>

#pragma config WDT = OFF
#pragma config OSC = XT
#pragma config LVP = OFF

void main (void)
{
	unsigned char D;
	unsigned char E=0x20;
	int i;
	OpenSPI(SPI_FOSC_4, MODE_00,SMPEND);

	while(1)
	{	
			
		for(i=0;i<=255;i++)
		{	
			D=i;
			WriteSPI(E);
			WriteSPI(D);
			Delay1KTCYx(60);	
		}
	}
}
Lo que intento hacer es que el reóstato tome todos sus valores resistivos, desde 5K ohms (valor máximo) hasta 75 ohms (valor mínimo)

Como antes mencionaba, mi código no funciona.

De antemano muchas gracias...

Saludos
 
#2
Ya encontré el problema, la terminal de CS de ese potenciómetro digital tiene "tres estados": bajo, alto, muy alto, donde el tercer estado tiene un humbral entre 8.5 V y 12.5 V.

La solución fue utilizar un duplicador de voltaje.

Saludos a todos, espero que esto les sea útil.
 

Temas similares

Arriba