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

📄 fu.c

📁 ks0108 的lcm驱动。想要的下载下
💻 C
字号:
#include <reg52.h>
#include<stdio.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
#define lcddataport P0
sbit res= P2^2;
sbit ce =P2^1;
sbit cd=P2^0;									   
sbit wr=P3^6;
sbit rd=P3^7; 
void delay(uint m)			 //延时函数
{
	uint i,j;
	for(i=0;i<m;i++)
	 	for(j=0;j<109;j++) ;
}
 
 void sendcommand(uchar command) //从P0口写入指令
{
	delay(100);
	cd=1;
	ce=0;
	wr=0;
	lcddataport=command;
	wr=1;
	ce=1;
} 
   void senddata(uchar data1)//从P0口写入数据
{
	delay(10);
	cd=0;															
	ce=0;					 
	wr=0;		
    lcddataport=data1;
	wr=1;
	ce=	1;
}
void  dispalytextscreen ( uint startaddress,uchar line,uint column,uchar code *s)       // 显示文本子程序
{
	startaddress = startaddress+line*16+column;//
	 senddata((uchar) (startaddress));//强制类型转换成八位
	 senddata((uchar) (startaddress>>8));//  右移8位 ,即将转换成的两个八位数据送入P0口
	 sendcommand (0x24);//设置地址
	 while(*s>0)
	 {
	 	 senddata((*s)-0x20);
		 sendcommand(0xc0);//数据写入,地址自动增量
		 s++;
	 }
}
	void displaygraphicscreen(uint startaddress,uchar line,uchar column,uchar *g)
	{
	 uchar i,j;									  //图形显示子程序
	 startaddress=startaddress+16*line+column;			  //首地址设置
	 senddata((uchar) (startaddress));				  //强制类型转换后送入P0口
	 senddata((uchar) (startaddress>>8));
	  sendcommand (0x24);//设置地址
	  for(i=0;i<64;i++)
	  {
	  	for(j=0;j<8;j++) 
		{		   
			senddata(g[i*15+j]);			//送入图形地址,地址自动加一
			sendcommand(0xc0);
		}
		startaddress=startaddress+30;			 //由于图形尺寸小于屏幕宽度,故每显示完一行地址加三十
		senddata((uchar) (startaddress));
	 	senddata((uchar) (startaddress>>8));
		sendcommand(0x24);
		}	  
	 
	}
	void clearscreen()		   //			清屏子程序
	{	uchar i;						
		senddata(0x00);		  //设置清屏起始地址
		sendcommand(0x24);
		delay(10);				
		sendcommand(0xb0);	  //设置自动写
		for(i=0;i<0x2000;i++)
		senddata(0xff);		 //写入0x00,清理屏幕
		sendcommand(0xb2);	   //关闭自动写
	} 

	 void lcminitial()
	 {
	 //	res=0	;	   
			delay(50000);
			delay(50000);
		  	delay(50000);
		res=1;
		delay(100);
		sendcommand(0x00);sendcommand(0x00);sendcommand(0x40); /*文本首址*/
		sendcommand(0x10);sendcommand(0x00);sendcommand(0x41);/*文本区域*/  //每行显示16个字符
		sendcommand(0x00);sendcommand(0x01);sendcommand(0x42); /*图形首址*/
		sendcommand(0x10);sendcommand(0x00);sendcommand(0x43); /*图形区域*/
		sendcommand(0x81); /*显示方式*/
		sendcommand(0x9c); /*显示开关*/
		sendcommand(0xac); /*光标形状*/	
		clearscreen();
	 }
	 unsigned char code topwaylogo[]={
/*--  调入了一幅图像:C:\Documents and Settings\zhaochao288\桌面\picture\test1.bmp  --*/
/*--  宽度x高度=96x48  --*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x82,0x80,
0x00,0x00,0x00,0x02,0x10,0x00,0x0F,0xFB,0x00,0x02,0x42,0x80,0x00,0x00,0x00,0x19,
0x18,0x00,0x0B,0xFF,0x00,0x02,0xC2,0x80,0x00,0x00,0x00,0x21,0xFF,0x00,0x0F,0xFF,
0x00,0x3B,0xC1,0x80,0x00,0x00,0x00,0x57,0xFF,0xE0,0x0F,0xFF,0x00,0x45,0xB9,0x80,
0x80,0x00,0x00,0x8F,0xFF,0xF1,0x0F,0xFF,0x00,0x82,0x44,0xA0,0x80,0x00,0x01,0x1E,
0x8F,0xFE,0x0F,0xFF,0x00,0x82,0x5C,0x10,0x60,0x00,0x00,0xF9,0x07,0xFC,0x0F,0xFF,
0x0F,0x83,0xF8,0x49,0xF8,0x00,0x00,0x33,0x06,0x7E,0x0F,0xFE,0x10,0x8A,0x20,0x47,
0xFE,0x00,0x00,0x67,0x06,0x7F,0x0E,0x0E,0x10,0x92,0x10,0xA7,0x1F,0x00,0x00,0x6F,
0x8F,0xFF,0x0C,0x04,0x10,0x44,0x11,0x26,0x0F,0x00,0x00,0x4F,0xF3,0xFF,0x8C,0xE4,
0x08,0x78,0x51,0x3D,0x0F,0x80,0x00,0x1F,0xF3,0x9D,0xC9,0x02,0x0F,0xCC,0x22,0x2D,
0x9F,0x80,0x00,0x1F,0xCE,0x9E,0x89,0x02,0x10,0x5F,0xC4,0x0B,0xE7,0xC0,0x00,0x1F,
0xCF,0xF6,0x93,0xC2,0x20,0x7C,0x49,0x5A,0x67,0xC0,0x00,0x1F,0xFF,0xFE,0x84,0x22,
0x21,0x7C,0x30,0x12,0x7F,0xC0,0x00,0x1F,0xFF,0xFE,0x05,0x22,0x22,0x84,0x21,0x0B,
0xFF,0xC0,0x00,0x1F,0xFF,0xF6,0x04,0x22,0x11,0xA4,0x20,0x0B,0xFF,0xC0,0x00,0x0F,
0xFF,0xD6,0x06,0x44,0x0E,0x86,0x41,0x4B,0xFF,0xC0,0x00,0x0F,0xFF,0xCC,0x00,0x05,
0x10,0x97,0xFC,0x07,0xFF,0xC0,0x00,0x07,0xF0,0x1C,0x00,0x08,0x20,0x8F,0xE9,0x15,
0xFE,0xC0,0x00,0x07,0xE0,0x38,0x10,0x09,0xF8,0x7F,0xF0,0x05,0xE2,0x80,0x1F,0xC3,
0x80,0x78,0x10,0x10,0xF4,0x5F,0xD5,0x49,0xE1,0x8F,0xE0,0x40,0xC1,0xF0,0x2C,0x65,
0x7A,0x5F,0xA0,0x08,0xC3,0x08,0x1F,0xC3,0xFF,0xC0,0x23,0x80,0xBE,0xEE,0xD1,0x09,
0x7E,0x07,0xFF,0xC0,0xFF,0x00,0x50,0x71,0x6B,0x5F,0x00,0x08,0x00,0x07,0xFF,0xC0,
0x00,0xE0,0x40,0x88,0x1D,0xC0,0x55,0x48,0x74,0x03,0xFF,0xC0,0x20,0x20,0x95,0x05,
0x77,0xFE,0x00,0x04,0x8A,0x03,0xFF,0xC0,0x20,0x41,0x01,0x04,0xBF,0xFF,0xC1,0x14,
0x48,0x01,0xFF,0xC0,0x1F,0x83,0x87,0x04,0xFF,0xFF,0xF0,0x02,0x38,0x01,0xFE,0x40,
0x00,0x05,0x58,0x8F,0xF0,0x40,0xF5,0x55,0x00,0x01,0xF0,0x40,0x00,0x18,0x30,0x70,
0xB8,0xA1,0xD0,0x00,0x80,0x00,0xE0,0x40,0x00,0x20,0x10,0x70,0xC7,0xDE,0x21,0x11,
0x60,0x00,0x40,0x80,0x00,0xC0,0x10,0xF0,0xF8,0x29,0xD0,0x00,0x18,0x00,0x3F,0x00,
0x03,0x00,0x0F,0x10,0xBE,0x73,0x35,0x45,0x46,0x00,0x00,0x00,0x1C,0x00,0x02,0x0F,
0x6C,0x33,0x20,0x00,0x01,0xC0,0x00,0x01,0xFF,0x80,0x02,0x08,0xBF,0xFC,0xD1,0x11,
0x10,0x3D,0xFC,0x3F,0x00,0x60,0x02,0x08,0x3F,0xFC,0xC0,0x00,0x00,0x06,0x03,0xC8,
0x00,0x1C,0x01,0x18,0x2E,0x33,0x04,0x44,0x44,0x18,0x00,0x70,0x00,0x03,0xC1,0xE8,
0x3F,0x73,0x00,0x00,0x00,0x60,0x00,0x20,0x00,0x00,0x39,0x08,0x3F,0x6F,0xD0,0x10,
0x11,0x80,0x00,0x40,0x00,0x00,0x06,0x04,0x3F,0x5F,0xC0,0x00,0x06,0x20,0x00,0x40,
0x00,0x20,0x01,0x04,0xEF,0x3F,0xF7,0xFF,0xFF,0xF0,0x00,0x40,0x00,0x7F,0xFF,0xFF,
0x17,0x7F,0x80,0x00,0x00,0x0C,0x00,0x40,0x00,0x80,0x00,0x00,0x1E,0x3F,0x80,0x00,
0x00,0x03,0x81,0xA0,0x07,0x00,0x00,0x00,0x0F,0xFF,0x00,0x00,0x00,0x00,0x7E,0x1F,
0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};

 void main()
	 {
	 	lcminitial();
		displaygraphicscreen(0x0800,0x00,0x07,topwaylogo);
		delay(2000);
	
	

	 }

⌨️ 快捷键说明

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