Please develop a low level API to present a data on the LCD bus for writing. This will involve three transfers, with a enable signal toggling and the rest of the signals being the same. Kindly refer to MCP23S17 datasheet to setup the serial parallel converter and to transfer the data. If you have any issue, kindly make use of Microchip resoures.
Based on this API you can develop two more APIs, (1) for positioning the curser, and (2) to write characters to the LCD. You may refer to the datsheet of the HD44780 for the required waveforms.