File tree Expand file tree Collapse file tree
shared-module/dotclockframebuffer Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -47,6 +47,10 @@ void dotclockframebuffer_ioexpander_send_init_sequence(dotclockframebuffer_ioexp
4747 while (!common_hal_busio_i2c_try_lock (bus -> bus )) {
4848 RUN_BACKGROUND_TASKS ;
4949 }
50+
51+ // ensure deasserted CS and idle CLK
52+ pin_change (bus , /* set */ bus -> cs_mask , /* clear */ bus -> clk_mask );
53+
5054 for (uint32_t i = 0 ; i < init_sequence_len ; /* NO INCREMENT */ ) {
5155 uint8_t * cmd = init_sequence + i ;
5256 uint8_t data_size = * (cmd + 1 );
@@ -57,8 +61,10 @@ void dotclockframebuffer_ioexpander_send_init_sequence(dotclockframebuffer_ioexp
5761 ioexpander_bus_send (bus , true, cmd , 1 );
5862 ioexpander_bus_send (bus , false, data , data_size );
5963
64+ // idle CLK
65+ pin_change (bus , 0 , /* clear */ bus -> clk_mask );
6066 // deassert CS
61- pin_change (bus , /* set */ bus -> cs_mask , /* clear */ 0 );
67+ pin_change (bus , /* set */ bus -> cs_mask , 0 );
6268
6369 uint16_t delay_length_ms = 10 ;
6470 if (delay ) {
You can’t perform that action at this time.
0 commit comments