Estoy usando un Pic18F45K40 para controlar un chip de red de línea de alimentación ST7590 que requiere una señal de reloj de 8 MHz para funcionar. Leí la hoja de datos y parece que se puede generar una señal de 16 MHz a partir del microchip de 64 MHz.
Configuré el módulo de salida del reloj de referencia de la siguiente manera:
#pragma config CLKOUTEN = ON
y
#define oCLK_INIT() CLKRCLKbits.CLK=1; \
CLKRCONbits.EN=0; \
CLKRCONbits.DC=2; \
CLKRCONbits.DIV=3; \
SCANTRIGbits.TSEL=1;
//OSCCON1bits.NOSC=6;
#define oCLK_EN_ON() CLKRCONbits.EN=1;
y usó PPS para fijar RB4 configurando
RB4PPS=0b10100; /* B4=CLKR 8MHz */ \
Obtengo una señal de 8 MHz, pero se ve así:
Esto es más sinusoidal que cuadrado y podría ser la razón por la que no puedo hablar con el chip ST7590 a través de UART. ¿Alguien puede explicar lo que está pasando?
EDITAR: Resultado de cambiar la velocidad de giro.
Dos posibilidades: capacitancia parásita o control de velocidad de respuesta.
Si estuviera trabajando en placas de prueba, pensaría que se trata de una capacitancia no deseada entre las tiras de clavijas, pero debido al paquete del dispositivo STmicro, creo que está trabajando con PCB adecuadas.
Eso lleva a la otra posibilidad: el PIC está limitando las tasas de cambio en el puerto. Esto se hace para reducir la EMC del "rebote" de conmutación rápida, por lo que las velocidades de giro de los transistores se reducen para crear un gradiente agradable. Funciona muy bien por debajo de 1 MHz, pero debe tener cuidado con 8 MHz.
Consulte la página 244 para obtener instrucciones sobre cómo borrar los registros SLRCONx para evitar o reducir la limitación de la velocidad de respuesta.
15.2.5 Slew Rate Control
The SLRCONx register controls the slew rate option for each port pin. Slew rate for each port pin can be
controlled independently. When an SLRCONx bit is set, the corresponding port pin drive is slew rate
limited. When an SLRCONx bit is cleared, The corresponding port pin drive slews at the maximum rate
possible.
No existe una señal de onda cuadrada ideal. Siempre tendrás un cierto tiempo de subida y bajada en tu señal. Cuanto mayor sea su frecuencia, mayor será la cantidad relativa de tiempo de subida y bajada en comparación con su tiempo total de encendido y apagado, respectivamente. Lo que sufre son, por un lado, las propiedades parásitas de su ruta y el cableado interno del pin, incluida la protección ESD y la capacitancia a tierra.
Un oscilador externo tampoco produce una señal de onda cuadrada limpia, sino una que se parece a la impresión de su osciloscopio, pero eso no es un problema, ya que normalmente tiene una función de detección de bordes en las entradas de su reloj.
MIL-ESPEC.
andres morton
gareth t
rolinger