Hello à tous,
j'essaye depuis quelques jours de générer une trame SPI en utilisant le clock du Timer 2, mais sans succès
Il me semble que selon la datasheet, la config est correcte.
Les paramètre du SPI sont créés via le Wizard du compilateur.
Voici le code comprenant la config et l'envoi SPI :
L'envoi de la trame est correcte, mais le signal du clock ne correspond pas à la config du Timer.Code:#include <ESSAI.h> #USE SPI (MASTER, CLK=PIN_B0, DI=PIN_B1, DO=PIN_B2, MODE=3, BITS=11, STREAM=dmx, LSB_FIRST) #include <float.h> #include <math.h> #include <stdio.h> #include <stdlib.h> void main() { setup_timer_2(T2_DIV_BY_1,9,1); //2.0 us overflow, 2.0 us interrupt setup_comparator(NC_NC_NC_NC);// This device COMP currently not supported by the PICWizard enable_interrupts(INT_TIMER2); enable_interrupts(GLOBAL); setup_spi(SPI_MASTER | SPI_L_TO_H | SPI_CLK_T2); while(TRUE) { spi_xfer(dmx, 0B10101010); } }
Avec ce code, le temps du clock à l'état haut est de 1.4us, et à l'état bas de 1.8us.
De plus, rien de change lorsque je modifie les valeurs du Timer 2.
Hardware :
PIC 18F887 - 20MHz
Compilateur : PIC-C Compiler
Merci d'avance
Justify90
-----