spi.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #ifndef SPI_APP_H
  2. #define SPI_APP_H
  3. #include "spi_register.h"
  4. #include "ets_sys.h"
  5. #include "osapi.h"
  6. #include "uart.h"
  7. #include "os_type.h"
  8. /*SPI number define*/
  9. #define SPI 0
  10. #define HSPI 1
  11. //lcd drive function
  12. void spi_lcd_mode_init(uint8 spi_no);
  13. void spi_lcd_9bit_write(uint8 spi_no,uint8 high_bit,uint8 low_8bit);
  14. //spi master init funtion
  15. void spi_master_init(uint8 spi_no);
  16. //use spi send 8bit data
  17. void spi_mast_byte_write(uint8 spi_no,uint8 data);
  18. //transmit data to esp8266 slave buffer,which needs 16bit transmission ,
  19. //first byte is master command 0x04, second byte is master data
  20. void spi_byte_write_espslave(uint8 spi_no,uint8 data);
  21. //read data from esp8266 slave buffer,which needs 16bit transmission ,
  22. //first byte is master command 0x06, second byte is to read slave data
  23. void spi_byte_read_espslave(uint8 spi_no,uint8 *data);
  24. //esp8266 slave mode initial
  25. void spi_slave_init(uint8 spi_no);
  26. //esp8266 slave isr handle funtion,tiggered when any transmission is finished.
  27. //the function is registered in spi_slave_init.
  28. void spi_slave_isr_handler(void *para);
  29. //hspi test function, used to test esp8266 spi slave
  30. void hspi_master_readwrite_repeat(void);
  31. void ICACHE_FLASH_ATTR
  32. spi_test_init(void);
  33. #endif