fork download
  1. #include <P18F452.h>
  2.  
  3. #define LCD PORTD
  4. #define RS PORTBbits.RB0
  5. #define EN PORTBbits.RB1
  6.  
  7. void Delay()
  8. {
  9. int i;
  10. for(i=0;i<3000;i++);
  11. }
  12.  
  13. void LCD_Command(unsigned char cmd)
  14. {
  15. LCD = cmd;
  16. RS = 0;
  17. EN = 1;
  18. Delay();
  19. EN = 0;
  20. }
  21.  
  22. void LCD_Char(unsigned char data)
  23. {
  24. LCD = data;
  25. RS = 1;
  26. EN = 1;
  27. Delay();
  28. EN = 0;
  29. }
  30.  
  31. void LCD_String(char *str)
  32. {
  33. while(*str)
  34. {
  35. LCD_Char(*str);
  36. str++;
  37. }
  38. }
  39.  
  40. void LCD_Init()
  41. {
  42. LCD_Command(0x38);
  43. LCD_Command(0x0C);
  44. LCD_Command(0x01);
  45. LCD_Command(0x80);
  46. }
  47.  
  48. void main()
  49. {
  50. TRISD = 0x00;
  51. TRISB = 0x00;
  52.  
  53. LCD_Init();
  54.  
  55. LCD_Command(0x80);
  56. LCD_String("JAIN");
  57.  
  58. LCD_Command(0xC0);
  59. LCD_String("UNIVERSITY");
  60.  
  61. while(1);
  62. }
Success #stdin #stdout 0.02s 25580KB
stdin
Standard input is empty
stdout
#include <P18F452.h>

#define LCD PORTD
#define RS PORTBbits.RB0
#define EN PORTBbits.RB1

void Delay()
{
    int i;
    for(i=0;i<3000;i++);
}

void LCD_Command(unsigned char cmd)
{
    LCD = cmd;
    RS = 0;
    EN = 1;
    Delay();
    EN = 0;
}

void LCD_Char(unsigned char data)
{
    LCD = data;
    RS = 1;
    EN = 1;
    Delay();
    EN = 0;
}

void LCD_String(char *str)
{
    while(*str)
    {
        LCD_Char(*str);
        str++;
    }
}

void LCD_Init()
{
    LCD_Command(0x38);
    LCD_Command(0x0C);
    LCD_Command(0x01);
    LCD_Command(0x80);
}

void main()
{
    TRISD = 0x00;
    TRISB = 0x00;

    LCD_Init();

    LCD_Command(0x80);
    LCD_String("JAIN");

    LCD_Command(0xC0);
    LCD_String("UNIVERSITY");

    while(1);
}