/******************************************************************** FileName: spi_glcd Processor: PIC18F14K50 Compiler: Microchip XC8 プロトタイプ宣言+クロック定義と以下の、SPI GLCD関連の定義を記述 mInitLCD_IO() G_LCDで使用するPICのI/Oピンを初期化する mInitSPI() PICのSPI機能を初期化する 2019/11/19 N.Ishii ******************************************************************** /******** プロトタイプ *************************************/ void LCD_int (void); void LCD_cmd (char); void LCD_data (char); void clear(void); void LCD_chr(int, int); void LCD_str(char *, int, int, int); /******** クロックの指定 *************************/ #ifndef _XTAL_FREQ #define _XTAL_FREQ 16000000 #endif /** Grafic LCD 制御関連I/O ********************************************* RC4 SPI_RS LCD データ種別 0:コマンド 1:表示データ RC5 SPI_CS チップセレクト 0:有効 1:無効 ************************************************************************/ #define mInitLCD_IO() LATC |= 0x30; TRISC &= 0xCF; #define SPI_RS LATC4 #define SPI_CS LATC5 /******* SSP(SPI) ****************************************************** SPI機能の設定 マスタモード、クロック = FOSC/4 バスモード アイドル時のクロック : Hi (MODE_11) データ送信タイミング : クロックの立下 受信データサンプル : SMPMID (NA) RC7 SPISDO データ出力 RB6 SPISCK idle時:Hi SCKの立下でデータ変更 ************************************************************************/ #define mInitSPI() {TRISC7=0;TRISB6=0;SSPSTAT=0x00;SSPCON1=0x30;}