Yes, that’s it. I want to send data to Endpoint whose type is Bulk at fixed period (10μs)
I can send this data every 1ms, but I’m not able to reduce this period.
I changed the clock to go to the RIT_timer every 10µs, and that works fine. I’m able to switch on/off a port every 10 µs:
void RIT_SetTimerInterval(uint32_t time_interval)
{
uint32_t cmp_value;
/* Determine aapproximate compare value based on clock rate and passed interval */
cmp_value = (500) * time_interval; //(50000)=1ms
}
And in the RIT_timer, that’s what I do:
void RIT_IRQHandler(void)
{
interrupt_rit++;
uint8_t buff1[2];
/* Clearn interrupt */
RIT_ClearInt();
echantillon=echantillon+1;
if (echantillon>4095){
echantillon=0;
}
uint32_t interupt_enabled0 = *(uint32_t*) LPC_ISER0;
uint32_t interupt_enabled1 = *(uint32_t*) LPC_ISER1;
*(uint32_t*) LPC_ICER0 = ~(1<<24);
*(uint32_t*) LPC_ICER1 = 0;
*(uint32_t*) LPC_U2FCR &= 0xFFFFFFF7;
*(uint32_t*) LPC_U2TER = UART_TER1_TXEN;
UART_IntDisable( UART_IER_THREINT);
DataStream[0]=(echantillon & 0x0F00)>>8;
DataStream[1]=(echantillon & 0x00FF);
*(uint8_t*) LPC_FIO0SET2+=0x40; //Allumage LED
send_data();
//Compteur=0;
*(uint8_t*) LPC_FIO0CLR2 += 0x40; //Clear LED
*(uint32_t*) LPC_ISER0=interupt_enabled0;
*(uint32_t*) LPC_ISER1=interupt_enabled1;
}
Even when i try to decrease the send intervalle (i.e. i go to the RIT_Timer faster), the data is sent every 1ms and this time seems to be incompressible.