⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 12864zk.c

📁 lcm12864液晶显示
💻 C
字号:
#include <p18f4520.h>
#define uint unsigned int
#define uchar unsigned char

rom unsigned char  hztab[9]= { 0xc7,0xe0,0xd4,0xc6,0xb4,0xb4,0xd0,0xc2};
void delay_10ms(void)  //10ms
{
	unsigned int i,k;
	for(i=0;i<100;i++)

	for(k=0;k<100;k++);
}
void delay_us(unsigned char x)
{
  unsigned char i;
  for(i=0;i<x;i++)
  {;}
}

void wait_free(void)
{
	unsigned char retb;
   
           
         LATCbits.LATC5=0;

         LATCbits.LATC6=1;
 
         LATCbits.LATC7=1;
        
         delay_us(20);      
         LATCbits.LATC7=0;
      

      LATCbits.LATC5=0;

      LATCbits.LATC6=0;
}

void write_comm(unsigned char cmd_dat)
{
	wait_free();

         LATCbits.LATC5=0;

         LATCbits.LATC6=0;

         LATCbits.LATC7=1;

         LATD=cmd_dat;
         
	 LATCbits.LATC7=0;
}

void write_data(unsigned char fdata)
{
    	wait_free();

        LATCbits.LATC5=1;

        LATCbits.LATC6=0;

         LATCbits.LATC7=1;

         LATD=fdata;
         
	 LATCbits.LATC7=0;
}


void main_init(void)
{
       TRISC=0;
       TRISD=0;
       
       PORTC=0;
       PORTD=0;
}


void lcd_init(void)
{  
  unsigned char i;
        for(i=0;i<20;i++)
       { delay_10ms();  }

	   LATCbits.LATC4=1;  

       delay_10ms(); 	     

         write_comm(0x30);

         delay_us(200);  
	            
         write_comm(0x30);
	
         delay_us(100);

         write_comm(0xc);
	       
         delay_us(200);  	      
        
         write_comm(0x1);
	    
         for(i=0;i<4;i++)
         { delay_10ms();  }
	      
	     write_comm(0x06);
	
 

}
void main(void)
{       
     unsigned char i;
 
     main_init();
     
     lcd_init();
            
	 write_comm(0x92);
 
	for(i=0;i<8;i++)
     {        
       write_data(hztab[i]);
      }
   while(1);                        
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -