// NOKIA5110.h
#ifndef NOKIA5110_H
#define NOKIA5110_H

#include <pic18f4550.h>

// Definición de pines (ajusta según tu conexión física)
#define SCE_PIN   PORTBbits.RB2  // Chip Enable
#define RST_PIN   PORTBbits.RB1  // Reset
#define DC_PIN    PORTBbits.RB0  // Data/Command
#define DIN_PIN   PORTBbits.RB3  // Data In (MOSI)
#define CLK_PIN   PORTBbits.RB5  // Clock (SCK)

#define SCE_DIR   TRISBbits.TRISB2
#define RST_DIR   TRISBbits.TRISB1
#define DC_DIR    TRISBbits.TRISB0
#define DIN_DIR   TRISBbits.TRISB3
#define CLK_DIR   TRISBbits.TRISB5

// Modos de comunicación
#define LCD_CMD   0
#define LCD_DATA  1

// Prototipos de funciones
void SPI_Init(void);
void SPI_Write(unsigned char data);
void LCD_Write(unsigned char data, unsigned char mode);
void LCD_Init(void);
void LCD_Clear(void);
void LCD_Text(const char *str, unsigned char x, unsigned char y);
void delay_ms(unsigned int ms);
void delay_us(unsigned int us);

#endif
