Fork of 
        UniGraphic 
        by  GraphicsDisplay 
« Back to documentation index 
    
SPI8 Class Reference 
SPI 8bit interface.  
More... 
#include <SPI8.h >
Inherits Protocols .
  SPI8  (int Hz, PinName mosi, PinName miso, PinName sclk, PinName CS, PinName reset, PinName DC=NC)  Create an SPI 8bit display interface with 3 control pins.   virtual void  wr_cmd8  (unsigned char cmd)  Send 8bit command to display controller.   virtual void  wr_data8  (unsigned char data)  Send 8bit data to display controller.   virtual void  wr_cmd16  (unsigned short cmd)  Send 2x8bit command to display controller.   virtual void  wr_data16  (unsigned short data)  Send 2x8bit data to display controller.   virtual void  wr_gram  (unsigned short data)  Send 16bit pixeldata to display controller.   virtual void  wr_gram  (unsigned short data, unsigned int count)  Send same 16bit pixeldata to display controller multiple times.   virtual void  wr_grambuf  (unsigned short *data, unsigned int lenght)  Send array of pixeldata shorts to display controller.   virtual unsigned short  rd_gram  (bool convert)  Read 16bit pixeldata from display controller (with dummy cycle)   virtual unsigned int  rd_reg_data32  (unsigned char reg)  Read 4x8bit register data (with dummy cycle)   virtual unsigned int  rd_extcreg_data32  (unsigned char reg, unsigned char SPIreadenablecmd)  Read 3x8bit ExtendedCommands register data.   virtual void  dummyread  ()  ILI932x  specific, does a dummy read cycle, number of bits is protocol dependent for PAR protocols: a signle RD bit toggle for SPI8 : 8clocks for SPI16 : 16 clocks.  virtual void  reg_select  (unsigned char reg, bool forread=false)  ILI932x  specific, select register for a successive write or read.  virtual void  reg_write  (unsigned char reg, unsigned short data)  ILI932x  specific, write register with data.  virtual unsigned short  reg_read  (unsigned char reg)  ILI932x  specific, read register.  virtual void  hw_reset  ()  HW reset sequence (without display init commands)   virtual void  BusEnable  (bool enable)  Set ChipSelect high or low.   
Detailed Description 
SPI 8bit interface. 
Definition at line 12  of file SPI8.h .
Constructor & Destructor Documentation 
      
        
          SPI8  ( 
          int  
           Hz ,  
         
        
          PinName  
           mosi ,  
         
        
          PinName  
           miso ,  
         
        
          PinName  
           sclk ,  
         
        
          PinName  
           CS ,  
         
        
          PinName  
           reset ,  
         
        
          PinName  
           DC  = NC  
         
        
          ) 
           
      
 
Create an SPI 8bit display interface with 3 control pins. 
Parameters: 
  
    SPI mosi  SPI miso  SPI sclk  CS pin connected to CS of display  reset pin connected to RESET of display  DC pin connected to data/command of display  
   
Definition at line 22  of file SPI8.cpp .
 
 
Member Function Documentation 
      
        
          void BusEnable  
          ( 
          bool  
           enable  ) 
           [protected, virtual] 
      
 
Set ChipSelect high or low. 
Parameters: 
  
   
Implements Protocols .
Definition at line 205  of file SPI8.cpp .
 
 
      
        
          void dummyread  
          ( 
           ) 
           [protected, virtual] 
      
 
ILI932x  specific, does a dummy read cycle, number of bits is protocol dependent for PAR protocols: a signle RD bit toggle for SPI8 : 8clocks for SPI16 : 16 clocks. 
Implements Protocols .
Definition at line 146  of file SPI8.cpp .
 
 
      
        
          void hw_reset  
          ( 
           ) 
           [protected, virtual] 
      
 
HW reset sequence (without display init commands) 
Implements Protocols .
Definition at line 195  of file SPI8.cpp .
 
 
      
        
          unsigned int rd_extcreg_data32  
          ( 
          unsigned char  
           reg ,  
         
        
          unsigned char  
           SPIreadenablecmd   
         
        
          ) 
           [protected, virtual] 
      
 
Read 3x8bit ExtendedCommands register data. 
Parameters: 
  
    reg the register to read  SPIreadenablecmd vendor/device specific cmd to read EXTC registers  
   
Returns: data as uint  Note: EXTC regs (0xB0 to 0xFF) are read/write registers but needs special cmd to be read in SPI mode  Implements Protocols .
Definition at line 129  of file SPI8.cpp .
 
 
      
        
          unsigned short rd_gram  
          ( 
          bool  
           convert  ) 
           [protected, virtual] 
      
 
Read 16bit pixeldata from display controller (with dummy cycle) 
Parameters: 
  
    convert true/false. Convert 18bit to 16bit, some controllers returns 18bit  
   
Returns: 16bit color  Implements Protocols .
Definition at line 91  of file SPI8.cpp .
 
 
      
        
          unsigned int rd_reg_data32  
          ( 
          unsigned char  
           reg  ) 
           [protected, virtual] 
      
 
Read 4x8bit register data (with dummy cycle) 
Parameters: 
  
   
Returns: data as uint  Implements Protocols .
Definition at line 110  of file SPI8.cpp .
 
 
      
        
          unsigned short reg_read  
          ( 
          unsigned char  
           reg  ) 
           [protected, virtual] 
      
 
ILI932x  specific, read register. 
Parameters: 
  
   
Returns: 16bit register value  Implements Protocols .
Definition at line 178  of file SPI8.cpp .
 
 
      
        
          void reg_select  
          ( 
          unsigned char  
           reg ,  
         
        
          bool  
           forread  = false  
         
        
          ) 
           [protected, virtual] 
      
 
ILI932x  specific, select register for a successive write or read. 
Parameters: 
  
    reg register to be selected  forread false = a write next (default), true = a read next  
   
Note: forread only used by SPI protocols  Implements Protocols .
Definition at line 151  of file SPI8.cpp .
 
 
      
        
          void reg_write  
          ( 
          unsigned char  
           reg ,  
         
        
          unsigned short  
           data   
         
        
          ) 
           [protected, virtual] 
      
 
ILI932x  specific, write register with data. 
Parameters: 
  
    reg register to write  data 16bit data  
   
Implements Protocols .
Definition at line 164  of file SPI8.cpp .
 
 
      
        
          void wr_cmd16  
          ( 
          unsigned short  
           cmd  ) 
           [protected, virtual] 
      
 
Send 2x8bit command to display controller. 
Parameters: 
  
   
Implements Protocols .
Definition at line 43  of file SPI8.cpp .
 
 
      
        
          void wr_cmd8  
          ( 
          unsigned char  
           cmd  ) 
           [protected, virtual] 
      
 
Send 8bit command to display controller. 
Parameters: 
  
   
Implements Protocols .
Definition at line 33  of file SPI8.cpp .
 
 
      
        
          void wr_data16  
          ( 
          unsigned short  
           data  ) 
           [protected, virtual] 
      
 
Send 2x8bit data to display controller. 
Parameters: 
  
   
Implements Protocols .
Definition at line 50  of file SPI8.cpp .
 
 
      
        
          void wr_data8  
          ( 
          unsigned char  
           data  ) 
           [protected, virtual] 
      
 
Send 8bit data to display controller. 
Parameters: 
  
   
Implements Protocols .
Definition at line 39  of file SPI8.cpp .
 
 
      
        
          void wr_gram  
          ( 
          unsigned short  
           data  ) 
           [protected, virtual] 
      
 
Send 16bit pixeldata to display controller. 
Parameters: 
  
   
Implements Protocols .
Definition at line 55  of file SPI8.cpp .
 
 
      
        
          void wr_gram  
          ( 
          unsigned short  
           data ,  
         
        
          unsigned int  
           count   
         
        
          ) 
           [protected, virtual] 
      
 
Send same 16bit pixeldata to display controller multiple times. 
Parameters: 
  
    data,: halfword to send  count,: how many  
   
Implements Protocols .
Definition at line 60  of file SPI8.cpp .
 
 
      
        
          void wr_grambuf  
          ( 
          unsigned short *  
           data ,  
         
        
          unsigned int  
           lenght   
         
        
          ) 
           [protected, virtual] 
      
 
Send array of pixeldata shorts to display controller. 
Parameters: 
  
    data,: unsigned short pixeldata array  lenght,: lenght (in shorts)  
   
Implements Protocols .
Definition at line 81  of file SPI8.cpp .