PS2 keyboard lib interferes with I2S
Topic last updated
08 Jul 2012, by
Gert van der Knokke.
2 replies
I2S,
PS2
I am trying to find out what part of the PS2 libs is interfering with the I2S output (the I2S output is fed by DMA). When I push some keys on the PS2 keyboard the I2S output is randomly stopped (goes to '0') and can not be restarted unless I reset the mbed.
So far no luck in finding the culprit.
Replies
By setting the divider for the I2S to '1' the output stays active (I had set the divider to '2')
The display still gets disturbed by the PS2 keyboard interrupts but that is another story...
using fastlib:
fl_select_clock_i2s(FL_CLOCK_DIV1); // assume 100MHz
fl_i2s_set_tx_rate(1,4); // set 25 MHz pixel clock
The final problem is now also solved by setting the priority of the PS2 keyboard interrupt (on keyboard clock falling edge) to the lowest level:
NVIC_SetPriority( EINT3_IRQn, 255 ); set priority to lowest (reduce vga disturbance)
The screen is now steady again.
Please log in to post a reply.
I am trying to find out what part of the PS2 libs is interfering with the I2S output (the I2S output is fed by DMA). When I push some keys on the PS2 keyboard the I2S output is randomly stopped (goes to '0') and can not be restarted unless I reset the mbed. So far no luck in finding the culprit.