つくれぽ(※1)です。
出典はeloctroSomeというサイトのInterfacing LCD with PIC Microcontroller – MPLAB XC8というページ。
このサイトではPICは16F877Aを使用していますが、私は16F84しか持っていなかったので、そこのところを修正しています。
あと、lcd.hをインクルードしてください。
プログラムの最初の部分のみ掲載します。残りの部分は上記のサイトを参考にしてください。
#define _XTAL_FREQ 10000000
// PIC16F84 Configuration Bit Settings
// 'C' source line config statements
// CONFIG
#pragma config FOSC = HS // Oscillator Selection bits (HS oscillator)
#pragma config WDTE = OFF // Watchdog Timer (WDT disabled)
#pragma config PWRTE = OFF // Power-up Timer Enable bit (Power-up Timer is disabled)
#pragma config CP = OFF // Code Protection bit (Code protection disabled)
// #pragma config statements should precede project file includes.
// Use project enums instead of #define for ON and OFF.
#define RS RB0
#define EN RB1
#define D4 RB5
#define D5 RB2
#define D6 RB4
#define D7 RB3
#include <xc.h>
#include "lcd.h"
// PIC16F84 Configuration Bit Settings
// 'C' source line config statements
// CONFIG
#pragma config FOSC = HS // Oscillator Selection bits (HS oscillator)
#pragma config WDTE = OFF // Watchdog Timer (WDT disabled)
#pragma config PWRTE = OFF // Power-up Timer Enable bit (Power-up Timer is disabled)
#pragma config CP = OFF // Code Protection bit (Code protection disabled)
// #pragma config statements should precede project file includes.
// Use project enums instead of #define for ON and OFF.
#define RS RB0
#define EN RB1
#define D4 RB5
#define D5 RB2
#define D6 RB4
#define D7 RB3
#include <xc.h>
#include "lcd.h"
※1:私の解釈での「つくれぽ」=クッキングレシピ紹介サイトで公開されているレシピを読者が自分で作ってオンライン上で作った料理をレポートすること。そしてレシピを紹介してくれた人への感謝を表すること。