【SPI480272高速工业液晶屏试用体验】官方资料分享&解析代...

  • donatello
  • LV6工程师
  • |      2017-07-18 18:07:00
  • 浏览量 622
  • 回复:0
【SPI480272高速工业液晶屏试用体验】官方资料分享&解析代码&刷屏 SPI480272屏幕用的是半双工SPI总线(不含触摸的情况下),传输指令和数据都是标准的SPI时序。液晶屏的SPI时序可以与电平模拟SPI或者硬件SPI信号进行通信。一般而言,带有硬件SPI总线的单片机中都有一个发送数据的函数,这个函数是遵循标准的SPI通信时序的:单片机为主机,CLK线出现上升沿时DO线传递一位数据,函数执行一次,CLK就会出现八个上升沿,也就是DO可以传递八位数据,这八位数据传输到从机就合成了一个字节的数据,单片机的硬件SPI时序我们了解了,我们再来了解一下液晶屏的SPI时序:液晶屏作为从机,CLK线为输入状态,被动接收单片机(主机)的CLK线的信号,主从两个CLK线信号握手成功即为同步状态,可以进行数据传输。液晶屏有一套自己的游戏规则:当CS保持为低的过程中持续出现8个CLK上升沿时,传输信息为命令;而CS保持为低的过程中持续出现16个CLK上升沿时,传输信息则为数据;当CS保持为低的过程中持续出现除8、16个以外的CLK上升沿时,传输信息无效。那么我们写代码的时候就很明确了:当片选线CS从拉低到拉高的过程中,出现一个硬件SPI传输函数就是发送命令(寄存器号);出现两个两个硬件SPI函数就发送寄存器数据了。
void LCD_send_command(unsigned char out_cmd)             

{

    TFT_CS=0;

    STC_SPI_Send(out_cmd);

    TFT_CS=1;

}



void LCD_send_data(unsigned int out_data)          

{

    TFT_CS=0;

    STC_SPI_Send(out_data>>8);

    STC_SPI_Send(out_data);

    TFT_CS=1;

}
了解了液晶屏工作方式之后,我们就可以让它乖乖听我们的命令了。首先查看液晶屏的指令集: 我们把玩液晶屏,首先当然是从刷屏开始,刷屏所需要的指令为 1.设置液晶屏刷屏的窗口,即设置X起始寄存器、X终点寄存器、Y起始寄存器、Y终点寄存器四个寄存器的值,确定有效范围,这里我们设置为全屏,即X取0到479,Y取0到271; 2.设置颜色寄存器,确定要刷屏的颜色; 3.设置刷屏指令; 4.设置背光亮度。 至此,刷屏工作完成,看看效果吧: 上传工程文件: 上传技术手册:
  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:0
x
收藏成功!点击 我的收藏 查看收藏的全部帖子