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

📄 pt6578.c

📁 汽车音响lcd显示 #include "pt6524.c" #include "pt6578.c"
💻 C
字号:
#define LCD_ADDR				0x4B	//驱动芯片SPI地址
#define CHUNKS			5			//PT6578发送的块数
#define CHUNK_BYTES		15			//每个块15个字节
__flash__ BYTE chunkAddr[] = {0x00,0x80,0x40,0xc0,0x20};	
void display_buff(BYTE *thisBuff)
{
	BYTE i;
	BYTE chunk;
	BYTE sendData;
	BYTE tmpData;
	BYTE addr=LCD_ADDR;
	for(chunk=0;chunk<CHUNKS;chunk++)	//发送CHUNKS个片段
	{
		//发送地址
		Clr_SS();					//拉低片选  
		spi_send_buff(&addr,1);		//放地址到总线
		Set_SS();					//抬高片选
		//共需发送15bytes 
		for(i=0;i<CHUNK_BYTES;i++)
		{
			//sendData=*(thisBuff++);
			sendData = 0;
			tmpData = *(thisBuff++);
			sendData |= (tmpData>>7);
			sendData |= (tmpData<<1);//将最高位和低7位交换
			spi_send_buff(&sendData,1);		//放sendData到总线
			spi_send_bit(0);				//字库冗余
		}
		spi_send_bit(0);					//补齐
		sendData = pgm_read_byte(chunkAddr+chunk);			//CHUNK addr
		spi_send_buff(&sendData,1);			//发送本片段地址
		Clr_SS();							//一个片段发送完毕,拉低SS
		_delay_us(5);
	}
	//发送地址
	Clr_SS();					//拉低片选  
	spi_send_buff(&addr,1);		//放地址到总线
	Set_SS();					//抬高片选
	sendData = 0x30;			//对比度	40
	spi_send_buff(&sendData,1);
	sendData = 0xA9;
	spi_send_buff(&sendData,1);
	//Clr_DO();
	//_delay_us(5);
	Clr_SS();
}
void disp_set_bit(BYTE *thisBuff,BYTE bitIndex,BYTE value)
{
	if(value)
	{
		thisBuff[bitIndex] |= 0x80;
	}else{
		thisBuff[bitIndex] &= 0x7F;
	}
}

⌨️ 快捷键说明

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