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

📄 hgo12864_pic16.c

📁 基于PIC16F946的HGO12864的驱动代码,绝对原创,驱动芯片NT7532
💻 C
📖 第 1 页 / 共 2 页
字号:

//---------------------------------------------------------------------
	#include	<pic.h>
	#include	<pic16f91x.h>
    //#include    <pic16f946.h>
	#include	"hgo12864_pic.h"
//---------------------------------------------------------------------

__CONFIG(INTIO & WDTDIS & PWRTEN & MCLREN & UNPROTECT & UNPROTECT & BOREN & DEBUGEN);
    //__CONFIG(INTIO & WDTDIS)
const uchar  success[768]={ 
0x00,0x3E,0x51,0x49,0x45,0x3E,0x00,0x00,    /*"0"=0*/
0x00,0x00,0x42,0x7F,0x40,0x00,0x00,0x00,    /*"1"=1h*/
0x00,0x42,0x61,0x51,0x49,0x46,0x00,0x00,    /*"2"=2h*/
0x00,0x21,0x41,0x45,0x4B,0x31,0x00,0x00,    /*"3"=3h*/
0x00,0x18,0x14,0x12,0x7F,0x10,0x00,0x00,    /*"4"=4h*/
0x00,0x27,0x45,0x45,0x45,0x39,0x00,0x00,    /*"5"=5h*/
0x00,0x3C,0x4A,0x49,0x49,0x30,0x00,0x00,    /*"6"=6h*/
0x00,0x01,0x01,0x79,0x05,0x03,0x00,0x00,    /*"7"=7h*/
0x00,0x36,0x49,0x49,0x49,0x36,0x00,0x00,    /*"8"=8h*/
0x00,0x06,0x49,0x49,0x29,0x1E,0x00,0x00,    /*"9"=9h*/
0x00,0x7E,0x11,0x11,0x11,0x7E,0x00,0x00,    /*"A"=ah*/
0x00,0x41,0x7F,0x49,0x49,0x36,0x00,0x00,    /*"B"=bh*/
0x00,0x3E,0x41,0x41,0x41,0x22,0x00,0x00,    /*"C"=ch*/
0x00,0x41,0x7F,0x41,0x41,0x3E,0x00,0x00,    /*"D"=dh*/
0x00,0x7F,0x49,0x49,0x49,0x49,0x00,0x00,    /*"E"=eh*/
0x00,0x7F,0x09,0x09,0x09,0x01,0x00,0x00,    /*"F"=fh*/
0x00,0x3E,0x41,0x41,0x49,0x7A,0x00,0x00,    /*"G"=10h*/
0x00,0x7F,0x08,0x08,0x08,0x7F,0x00,0x00,    /*"h"=11h*/
0x00,0x00,0x41,0x7F,0x41,0x00,0x00,0x00,    /*"I"=12h*/
0x00,0x20,0x40,0x41,0x3F,0x01,0x00,0x00,    /*"J"=13h*/
0x00,0x7F,0x08,0x14,0x22,0x41,0x00,0x00,    /*"K"=14h*/
0x00,0x7F,0x40,0x40,0x40,0x40,0x00,0x00,    /*"L"=15h*/
0x00,0x7F,0x02,0x0C,0x02,0x7F,0x00,0x00,    /*"M"=16h*/
0x00,0x7F,0x06,0x08,0x30,0x7F,0x00,0x00,    /*"N"=17h*/
0x00,0x3E,0x41,0x41,0x41,0x3E,0x00,0x00,    /*"O"=18h*/
0x00,0x7F,0x09,0x09,0x09,0x06,0x00,0x00,    /*"P"=19h*/
0x00,0x3E,0x41,0x51,0x21,0x5E,0x00,0x00,    /*"Q"=1ah*/
0x00,0x7F,0x09,0x19,0x29,0x46,0x00,0x00,    /*"R"=1bh*/
0x00,0x26,0x49,0x49,0x49,0x32,0x00,0x00,    /*"S"=1ch*/
0x00,0x01,0x01,0x7F,0x01,0x01,0x00,0x00,    /*"T"=1dh*/
0x00,0x3F,0x40,0x40,0x40,0x3F,0x00,0x00,    /*"U"=1eh*/
0x00,0x1F,0x20,0x40,0x20,0x1F,0x00,0x00,    /*"V"=1fh*/
0x00,0x7F,0x20,0x18,0x20,0x7F,0x00,0x00,    /*"W"=20h*/
0x00,0x63,0x14,0x08,0x14,0x63,0x00,0x00,    /*"X"=21h*/
0x00,0x07,0x08,0x70,0x08,0x07,0x00,0x00,    /*"Y"=22h*/
0x00,0x61,0x51,0x49,0x45,0x43,0x00,0x00,    /*"Z"=23h*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,    /*" "=24H*/
0x00,0x00,0x00,0x4F,0x00,0x00,0x00,0x00,    /*"!"=25H*/
0x00,0x00,0x07,0x00,0x07,0x00,0x00,0x00,    /*"""=26h*/
0x00,0x14,0x7F,0x14,0x7F,0x14,0x00,0x00,    /*"#"=27h*/
0x00,0x24,0x2A,0x7F,0x2A,0x12,0x00,0x00,    /*"$"=28h*/
0x00,0x23,0x13,0x08,0x64,0x62,0x00,0x00,    /*"%"=29h*/
0x00,0x36,0x49,0x55,0x22,0x50,0x00,0x00,    /*"&"=2ah*/
0x00,0x00,0x05,0x03,0x00,0x00,0x00,0x00,    /*"'"=2bh*/
0x00,0x00,0x1C,0x22,0x41,0x00,0x00,0x00,    /*"("=2ch*/
0x00,0x00,0x41,0x22,0x1C,0x00,0x00,0x00,    /*")"=2dh*/
0x00,0x14,0x08,0x3E,0x08,0x14,0x00,0x00,    /*"*"=2eh*/
0x00,0x08,0x08,0x3E,0x08,0x08,0x00,0x00,    /*"+"=2fh*/
0x00,0x00,0x50,0x30,0x00,0x00,0x00,0x00,    /*";"=30h*/
0x00,0x08,0x08,0x08,0x08,0x08,0x00,0x00,    /*"-"=31h*/
0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x00,    /*"."=32h*/
0x00,0x20,0x10,0x08,0x04,0x02,0x00,0x00,    /*"/"=33h*/
0x00,0x00,0x36,0x36,0x00,0x00,0x00,0x00,    /*":"=34h*/
0x00,0x00,0x56,0x36,0x00,0x00,0x00,0x00,    /*";"=35h*/
0x00,0x08,0x14,0x22,0x41,0x00,0x00,0x00,    /*"<"=36h*/
0x00,0x14,0x14,0x14,0x14,0x14,0x00,0x00,    /*"="=37h*/
0x00,0x00,0x41,0x22,0x14,0x08,0x00,0x00,    /*">"=38h*/
0x00,0x02,0x01,0x51,0x09,0x06,0x00,0x00,    /*"?"=39h*/
0x00,0x32,0x49,0x79,0x41,0x3E,0x00,0x00,    /*"@"=3ah*/
0x00,0x00,0x7F,0x41,0x41,0x00,0x00,0x00,    /*"["=3bh*/
0x00,0x02,0x04,0x08,0x10,0x20,0x00,0x00,    /*"\"=3Ch*/
0x00,0x00,0x41,0x41,0x7F,0x00,0x00,0x00,    /*"]"=3Dh*/
0x00,0x04,0x02,0x01,0x02,0x04,0x00,0x00,    /*"^"=3Eh*/
0x00,0x40,0x40,0x40,0x40,0x40,0x00,0x00,    /*"_"=3Fh*/
0x00,0x01,0x02,0x04,0x00,0x00,0x00,0x00,    /*"`"=40h*/
0x00,0x20,0x54,0x54,0x54,0x78,0x00,0x00,    /*"a"=41h*/
0x00,0x7F,0x48,0x44,0x44,0x38,0x00,0x00,    /*"b"=42h*/
0x00,0x38,0x44,0x44,0x44,0x28,0x00,0x00,    /*"c"=43h*/
0x00,0x38,0x44,0x44,0x48,0x7F,0x00,0x00,    /*"d"=44h*/
0x00,0x38,0x54,0x54,0x54,0x18,0x00,0x00,    /*"e"=45h*/
0x00,0x00,0x08,0x7E,0x09,0x02,0x00,0x00,    /*"f"=46h*/
0x00,0x0C,0x52,0x52,0x4C,0x3E,0x00,0x00,    /*"g"=47h*/
0x00,0x7F,0x08,0x04,0x04,0x78,0x00,0x00,    /*"h"=48h*/
0x00,0x00,0x44,0x7D,0x40,0x00,0x00,0x00,    /*"i"=49h*/
0x00,0x20,0x40,0x44,0x3D,0x00,0x00,0x00,    /*"j"=4Ah*/
0x00,0x00,0x7F,0x10,0x28,0x44,0x00,0x00,    /*"k"=4Bh*/
0x00,0x00,0x41,0x7F,0x40,0x00,0x00,0x00,    /*"l"=4Ch*/
0x00,0x7C,0x04,0x78,0x04,0x78,0x00,0x00,    /*"m"=4Dh*/
0x00,0x7C,0x08,0x04,0x04,0x78,0x00,0x00,    /*"n"=4Eh*/
0x00,0x38,0x44,0x44,0x44,0x38,0x00,0x00,    /*"o'=4Fh*/
0x00,0x7E,0x0C,0x12,0x12,0x0C,0x00,0x00,    /*"p"=50h*/
0x00,0x0C,0x12,0x12,0x0C,0x7E,0x00,0x00,    /*"q"=51h*/
0x00,0x7C,0x08,0x04,0x04,0x08,0x00,0x00,    /*"r"=52h*/
0x00,0x58,0x54,0x54,0x54,0x64,0x00,0x00,    /*"s"=53h*/
0x00,0x04,0x3F,0x44,0x40,0x20,0x00,0x00,    /*"t"=54h*/
0x00,0x3C,0x40,0x40,0x3C,0x40,0x00,0x00,    /*"u"=55h*/
0x00,0x1C,0x20,0x40,0x20,0x1C,0x00,0x00,    /*"v"=56h*/
0x00,0x3C,0x40,0x30,0x40,0x3C,0x00,0x00,    /*"w"=57h*/
0x00,0x44,0x28,0x10,0x28,0x44,0x00,0x00,    /*"x"=58h*/
0x00,0x1C,0xA0,0xA0,0x90,0x7C,0x00,0x00,    /*"y"=59h*/
0x00,0x44,0x64,0x54,0x4C,0x44,0x00,0x00,    /*"z"=5Ah*/
0x00,0x00,0x08,0x36,0x41,0x00,0x00,0x00,    /*"{"=5Bh*/
0x00,0x00,0x00,0x77,0x00,0x00,0x00,0x00,    /*"|"=5Ch*/
0x00,0x00,0x41,0x36,0x08,0x00,0x00,0x00,    /*"}"=5Dh*/
0x00,0x02,0x01,0x02,0x04,0x02,0x00,0x00,    /*"~"=5Fh*/
0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00     /*" "=0x60*/
 };
const char Digit[16] = {
	   CHAR_0,
	   CHAR_1,
	   CHAR_2,
	   CHAR_3,
	   CHAR_4,
	   CHAR_5,
	   CHAR_6,
	   CHAR_7,
	   CHAR_8,
	   CHAR_9,
	   CHAR_A,
	   CHAR_B,
	   CHAR_C,
	   CHAR_D,
	   CHAR_E,
	   CHAR_F
}; 

const uchar CCTAB[128]={
                                   ///*--  文字:  杭  --*/
///*--  楷体_GB231212;  此字体下对应的点阵为:宽x高=16x16   --*/
0x00,0x20,0x20,0xFF,0x90,0x10,0x20,0x20,0xA0,0x92,0x94,0x10,0x10,0x00,0x00,0x00,
0x04,0x02,0x01,0x3F,0x00,0x21,0x10,0x0F,0x00,0x00,0x0F,0x10,0x10,0x10,0x1C,0x00,
///*--  文字:  州  --*/
///*--  楷体_GB231212;  此字体下对应的点阵为:宽x高=16x16   --*/
0x00,0x00,0xE0,0x00,0xFC,0x00,0xE0,0x00,0xFC,0x20,0xC0,0x00,0xFE,0x00,0x00,0x00,
0x00,0x21,0x10,0x0C,0x03,0x00,0x00,0x00,0x0F,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,
///*--  文字:  先  --*/
///*--  楷体_GB231212;  此字体下对应的点阵为:宽x高=16x16   --*/
0x00,0x00,0x80,0xA0,0x9C,0x90,0x90,0xFF,0x48,0x48,0x48,0x40,0x00,0x00,0x00,0x00,
0x20,0x20,0x10,0x08,0x04,0x03,0x00,0x1F,0x20,0x20,0x20,0x20,0x20,0x38,0x00,0x00,
///*--  文字:  锋  --*/
///*--  楷体_GB231212;  此字体下对应的点阵为:宽x高=16x16   --*/
0x40,0x20,0x50,0xEF,0xA8,0x88,0x50,0xA8,0xAF,0xF2,0x5A,0x26,0x40,0x40,0x40,0x00,
0x00,0x01,0x01,0x1F,0x04,0x02,0x08,0x0A,0x0A,0x7F,0x05,0x05,0x04,0x04,0x00,0x00,


                                   //0x80,0x64,0x24,0x24,0x3F,0x24,0xA6,0x64,     /*勃90 = 01H*/
                                   //0x20,0x20,0xFF,0x20,0x20,0xF0,0x20,0x00,
                                   //0x00,0x08,0x49,0x89,0x7D,0x0B,0x89,0x40,
                                   //0x30,0x0E,0x41,0x80,0x40,0x3F,0x00,0x00,
                                   //0x40,0x42,0x44,0xCC,0x00,0x20,0x22,0xE2,     /*远90 = 02H*/
                                   //0x22,0x22,0xE2,0x23,0x32,0x20,0x00,0x00,
                                   //0x00,0x40,0x20,0x1F,0x20,0x50,0x4C,0x43,
                                   //0x40,0x40,0x47,0x48,0x48,0x6E,0x20,0x00,
                                   //0x20,0x20,0x20,0x20,0x20,0x20,0xA0,0x7F,     /*大90 = 03H*/
                                   //0xA0,0x20,0x20,0x20,0x20,0x30,0x20,0x00,
                                   //0x00,0x40,0x40,0x20,0x10,0x0C,0x03,0x00,
                                   //0x01,0x06,0x08,0x10,0x20,0x60,0x20,0x00
                                   };
//const uchar SEG[]=
 //uchar test[5]={0,1,2,3,4};
//---------------------------------------------------------------------
//---------------------------------------------------------------------

void main(void)
{
	                                                                  
    INTCON=0;
    PIR1=0;
    PIR2=0;
    T1CON=0;
    SSPCON=0;
    ADCON0=0;
    LCDCON=0;   
;
    OSCCON=0b01100111;
    while(!(OSCCON&HTS))
    ;
    TRISA=0x00;
    TRISB=0b00000000;
    TRISC=0b00000000;
    TRISD=0b00000000;
    ADCON1=0;
     
    PORTC=0;
    shd=1;
    PORTD=0;
    beep_out=0;
	OPTION=0b01101111;
						//TIMER0 控制配置
    T1CON=0b00000000;
	PIR1=0;
						
	TMR1H=0xf8;
	TMR1L=0x4e;
						//TIMER1 控制配置
	
//	INTCON=0b11000000;
//	PIE1=0b00000001;
//	PIE2=0b00000000;
						//中断控制
   // time_count_acc=500;
   // PORTC^=0x01;
    lcd_init();			
//---------------------------------------------------------------------
	while(1)
	{
     
        s=Buffer;
		CLRWDT();
      
        wcom(0xa6); 
        disdate_a(0x00,0x00);
  
        delay1();
        ccwpr(0,1,32);//杭
        ccwpr(1,1,48);//州 
	    ccwpr(2,1,64);//先
	    ccwpr(3,1,80);//峰
	    cwpr(0,4,16);
        cwpr(5,4,24);
	    cwpr(7,4,32);
	    cwpr(1,4,40);
	    cwpr(0x31,4,48);
	    cwpr(8,4,56);
	    cwpr(6,4,64);
	    cwpr(7,4,72);
	    cwpr(9,4,80);
	    cwpr(1,4,88);
	    cwpr(1,4,96);
	    cwpr(3,4,104);
        cwpr(1,4,112);
        delay1();
        delay1();
        wcom(0xa7); 
	    delay1();

        disdate_a(0xaa,0xaa);
	    delay1();

        disdate_a(0x55,0x55);
	    delay1();
    

        disdate_a(0xff,0x00);
	    delay1();
    

        disdate_a(0x00,0xff);
	    delay1();
   

        disdate_a(0xaa,0x55);
	    delay1();
   

        disdate_a(0xff,0xff);
	    delay1();
   

        disdate_a(0x00,0x00);
	    delay1();
    }
}       
/************************************************************************

************************************************************************/
void delay(void)    
 {unsigned char i,j;
   for(i=32;i>0;i--)
    for(j=255;j>0;j--);
 }
/************************************************************************

************************************************************************/
void delay1(void)    
 {unsigned char i,j;
   for(i=255;i>0;i--)
    {
	for(j=255;j>0;j--) 
	{nop();
	 nop();
	 nop();
	 nop();
	 nop();
	 nop();
	 nop();
	 nop();}
	}
 }
/************************************************************************
function-->write command
************************************************************************/
void wcom(unsigned char com)
 { 
   cs1=0;
   nop();
   a0=0;
   nop();
   write(com);
   nop();
   nop(); 
   cs1=1;
}
/************************************************************************
function-->write a byte
************************************************************************/
void write(unsigned char dat)
 {  unsigned char s,temp;
    int i;
    sclk=0;
    s=dat;

    for(i=8;i>0;i--)
      {sclk=0;
       nop();

⌨️ 快捷键说明

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