Esempio n. 1
0
void LCD_WriteReg(uint16_t _reg, uint16_t _data) {
	LCD_WriteIndex(_reg);
	LCD_WriteData(_data);
}
Esempio n. 2
0
uint16_t LCD_ReadReg(uint16_t _reg) {
	LCD_WriteIndex(_reg);
	uint16_t LCD_RAM = LCD_ReadData();
	return LCD_RAM;
}
Esempio n. 3
0
/**
 * 写数据准备
 */
void LCD_WriteRAM_Prepare(void)   
{
	LCD_WriteIndex(0x022);
}
Esempio n. 4
0
/*---------------写数据准备-------------------*/
void LCD_WriteRAM_Prepare(void)   
{
	LCD_WriteIndex(WRITE_RAM);
}
Esempio n. 5
0
/**
 * 功能:LCD写字符子程序
 * @x_start:
 * @y_start:
 * @x_end:
 * @y_end:
 * @ 尺寸
 * @ 颜色
 * @方向
 * @数据
 */
void lcd_wr_zf(unsigned int a, unsigned int b, unsigned int a1, unsigned int b1, unsigned int d,unsigned int e,unsigned char g,unsigned char *f)    
// X, Y,结束X,y,尺寸,颜色,方向,数据
{   
	

	unsigned int temp=0,num,z,R_dis_mem=0,a2=0,b2=0,b3=0;
	unsigned char temp5;

	if(g==0) LCD_WriteReg(0x0003,0x1030);		 //左上起
	else if(g==1) LCD_WriteReg(0x0003,0x1018);   //左下起
	else if(g==2) LCD_WriteReg(0x0003,0x1010);   //右下起
	else if(g==3) LCD_WriteReg(0x0003,0x1028);   //右上起
	//LCD_WriteReg(0x01,0x07);  
	Delay(200); 
	for(temp=0;temp<d;temp++)
	{
	   b2=(temp*8);
	   b3=b2/(a1-a+1);	    //计算纵坐标偏移
	   a2=b2%(a1-a+1);	    //计算横坐标偏移
	   temp5=*f;
	   z=temp5;
	   for(num=0; num<8; num++){		    
		  if((temp5&0x80)>0){			  	
		  	if(g==0){
				LCD_WriteReg(80,a+a2+num);
	 			LCD_WriteReg(82,b+b3);  

				LCD_WriteReg(81,a+a2+num);
	 			LCD_WriteReg(83,b+b3);  
				LCD_WriteReg(32, a+a2+num);
    			LCD_WriteReg(33, b+b3);
	 			//LCD_WriteReg(0,0x04,239);
	  			//LCD_WriteReg(1,0x05,319);
			}
			else if(g==1){ 

                

				LCD_WriteReg(80,b+b3);
	  			LCD_WriteReg(82,a);
				LCD_WriteReg(81,b+b3);	
				LCD_WriteReg(83,319-(a+a2+num));
				//LCD_WriteReg(83,a);
				LCD_WriteReg(32,b+b3);
	  			LCD_WriteReg(33,319-(a+a2+num));		 			
			}
			else if(g==2){ 
				LCD_WriteReg(80,a);
	 			LCD_WriteReg(82,b);  
	 			LCD_WriteReg(81,239-(a+a2+num));
	  			LCD_WriteReg(83,319-(b+b3));
				LCD_WriteReg(32,239-(a+a2+num));
	  			LCD_WriteReg(33,319-(b+b3));
			
			}
			else if(g==3){ 
				LCD_WriteReg(80,239-(b+b3));
	  			LCD_WriteReg(82,(a+a2+num));
				LCD_WriteReg(81,239-(b+b3));	
				LCD_WriteReg(83,319);	
				LCD_WriteReg(32,239-(b+b3));
	  			LCD_WriteReg(33,(a+a2+num));			
			}
	   		LCD_WriteIndex(34); 
			LCD_WriteRAM(e); 
		  }
		  else{
		   
	
			if(g==0){
				LCD_WriteReg(80,a+a2+num);
				LCD_WriteReg(82,b+b3);
				LCD_WriteReg(81,a+a2+num);
	 			LCD_WriteReg(83,b+b3);  
				LCD_WriteReg(32, a+a2+num);
    			LCD_WriteReg(33, b+b3);
				LCD_WriteIndex(34);				
		  		R_dis_mem=LCD_RD_Data();		  		
				LCD_WriteReg(32,a+a2+num);
				LCD_WriteReg(33,b+b3);
			}
			else if(g==1){


               

				LCD_WriteReg(80,b+b3);
	  			LCD_WriteReg(82,a);
				LCD_WriteReg(81,b+b3);	
				LCD_WriteReg(83,319-(a+a2+num));
				
				LCD_WriteReg(32,b+b3);
	  			LCD_WriteReg(33,319-(a+a2+num));
				LCD_WriteIndex(34);				
		  		R_dis_mem=LCD_RD_Data();		  		
				LCD_WriteReg(32,b+b3);
	  			LCD_WriteReg(33,319-(a+a2+num));
				//LCD_WriteReg(0,0x04,b+b3);	
				//LCD_WriteReg(1,0x05,319-(a+a2+num));	
			}
			else if(g==2){
				LCD_WriteReg(80,a);
	 			LCD_WriteReg(82,b);  
	 			LCD_WriteReg(81,239-(a+a2+num));
	  			LCD_WriteReg(83,319-(b+b3));
				LCD_WriteReg(32,239-(a+a2+num));
	  			LCD_WriteReg(33,319-(b+b3));
				LCD_WriteIndex(34);				
		  		R_dis_mem=LCD_RD_Data();		  		
				LCD_WriteReg(32,239-(a+a2+num));
	  			LCD_WriteReg(33,319-(b+b3));
	 			//LCD_WriteReg(0,0x04,239-(a+a2+num));
	  			//LCD_WriteReg(1,0x05,319-(b+b3));
			}
			else if(g==3){
				LCD_WriteReg(80,239-(b+b3));
	  			LCD_WriteReg(82,(a+a2+num));
				LCD_WriteReg(81,239-(b+b3));	
				LCD_WriteReg(83,319);		 
				LCD_WriteReg(32,239-(b+b3));
	  			LCD_WriteReg(33,(a+a2+num));
				LCD_WriteIndex(34);				
		  		R_dis_mem=LCD_RD_Data();		  		
				LCD_WriteReg(80,239-(b+b3));
	  			LCD_WriteReg(82,(a+a2+num));
				//LCD_WriteReg(0,0x04,239-(b+b3));	
				//LCD_WriteReg(1,0x05,319);		 
			}

			LCD_WriteIndex(34); 					
			LCD_WriteRAM(R_dis_mem);	 			
		  }
		  temp5=z;
		  temp5=temp5<<1; 
		  z=temp5;
		  	
	   }
	   f++;
	}
}