Updated to initalize pindirs
This commit is contained in:
parent
7321411962
commit
c384ebe5c0
|
@ -95,31 +95,19 @@ void common_hal_displayio_parallelbus_construct(displayio_parallelbus_obj_t* sel
|
||||||
never_reset_pin_number(data_pin + i);
|
never_reset_pin_number(data_pin + i);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Calculate pin usage all data pins + write pin
|
common_hal_rp2pio_statemachine_construct(&self->state_machine,
|
||||||
uint32_t pin_usage = 0;
|
|
||||||
for (uint8_t pin_number = data_pin; pin_number < data_pin+8; pin_number++) {
|
|
||||||
pin_usage += (1 << pin_number);
|
|
||||||
}
|
|
||||||
pin_usage += (1 << write_pin);
|
|
||||||
|
|
||||||
bool ok = rp2pio_statemachine_construct(&self->state_machine,
|
|
||||||
parallel_program, sizeof(parallel_program) / sizeof(parallel_program[0]),
|
parallel_program, sizeof(parallel_program) / sizeof(parallel_program[0]),
|
||||||
frequency, // frequency
|
frequency, // frequency
|
||||||
NULL, 0, // init
|
NULL, 0, // init
|
||||||
data0, 8, // first out pin, # out pins
|
data0, 8, 0, 255, // first out pin, # out pins
|
||||||
NULL, 0, // first in pin, # in pins
|
NULL, 0, // first in pin, # in pins
|
||||||
NULL, 0, // first set pin
|
NULL, 0, 0, 0, // first set pin
|
||||||
write, 1, // first sideset pin
|
write, 1, 0, 1, // first sideset pin
|
||||||
pin_usage, // pins we use
|
true, // exclusive pin usage
|
||||||
true, // tx fifo
|
|
||||||
false, // rx fifo
|
|
||||||
true, 8, true, // TX, auto pull every 8 bits. shift left to output msb first
|
true, 8, true, // TX, auto pull every 8 bits. shift left to output msb first
|
||||||
false, 32, true, // RX setting we don't use
|
false, // wait for TX stall
|
||||||
false); // claim pins
|
false, 32, true // RX setting we don't use
|
||||||
if (!ok) {
|
);
|
||||||
// Do nothing. Maybe bitbang?
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void common_hal_displayio_parallelbus_deinit(displayio_parallelbus_obj_t* self) {
|
void common_hal_displayio_parallelbus_deinit(displayio_parallelbus_obj_t* self) {
|
||||||
|
@ -162,7 +150,7 @@ void common_hal_displayio_parallelbus_send(mp_obj_t obj, display_byte_type_t byt
|
||||||
displayio_parallelbus_obj_t* self = MP_OBJ_TO_PTR(obj);
|
displayio_parallelbus_obj_t* self = MP_OBJ_TO_PTR(obj);
|
||||||
|
|
||||||
common_hal_digitalio_digitalinout_set_value(&self->command, byte_type == DISPLAY_DATA);
|
common_hal_digitalio_digitalinout_set_value(&self->command, byte_type == DISPLAY_DATA);
|
||||||
common_hal_rp2pio_statemachine_write(&self->state_machine, data, data_length);
|
common_hal_rp2pio_statemachine_write(&self->state_machine, data, data_length, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
void common_hal_displayio_parallelbus_end_transaction(mp_obj_t obj) {
|
void common_hal_displayio_parallelbus_end_transaction(mp_obj_t obj) {
|
||||||
|
|
Loading…
Reference in New Issue