RA6807是RA8876M的缩小版,具备RA8876M的所有功能,只将MCU控制接口进行缩减,仅保留SPI-3和I2C接口,其它功能基本相同。

该芯片最大可控制854x600的分辨率,内建64Mbits显存,多个图层,使用起来相当灵活!

继续讲解软件代码,我们使用SPI-3进行演示。参考代码请使用PC端浏览器访问本贴,在标题下方找到下载链接。

3. RA6807初始化

上文介绍过了需要移植的核心代码在RA6807_01_Kernel文件夹里,包含了底层API及应用层API,一般用户只要了解应用层的API即可灵活控制显示了。
在这里插入图片描述

核心文件如下:
在这里插入图片描述

每个API函数头都有参数说明,因此使用上极为方便!

初始化代码调用RA6807_Initial();即可:具体调用的是 RA6807_51.c 内部的函数,包含:

频率的设定、显存的设定、通信位和色深的设定、图层的设定、液晶屏参数的设定、还有画布、显示窗口及坐标的设定,这些设定完之后,再显示彩虹条Color_Bar_ON();,如果能看到彩虹条即表示基本通了!
在这里插入图片描述

很多用户没用过TFT LCD或者不熟悉,实际上使用RA6807这颗芯片,完全不必担心!常用的液晶屏参数都已经写好了,包含多种分辨率的液晶屏参数,直接调用即可。如果修改呢?在UserDef.h中,打开宏定义即可:
在这里插入图片描述
这里着重提一下,参考代码中 所有的参数均采用宏定义预设,使用起来会比较方便,该文件各个定义均有说明:
在这里插入图片描述
上面提及的液晶屏参数,从该宏定义可以进去找到,若画面便宜,在该函数中微调变更:

	#ifdef L80480R70

		//**[10h]**//
		Select_LCD_Sync_Mode();	// Enable XVSYNC, XHSYNC, XDE.
//		Select_LCD_DE_Mode();	// XVSYNC & XHSYNC in idle state.
		
		PCLK_Falling();
//		PCLK_Rising();

		VSCAN_T_to_B();
		PDATA_Set_RGB();

		HSYNC_Low_Active();
		VSYNC_Low_Active();
		DE_High_Active();
//		DE_Low_Active();

		LCD_HorizontalWidth_VerticalHeight(800,480);
		LCD_Horizontal_Non_Display(64);
		LCD_HSYNC_Start_Position(208);
		LCD_HSYNC_Pulse_Width(24);
		LCD_Vertical_Non_Display(16);
		LCD_VSYNC_Start_Position(22);
		LCD_VSYNC_Pulse_Width(16);

	#endif

以上代码中,最后6行,前三个调节水平方向,后三个调节垂直方向,实际自己体验一下马上会明白了。

本章结束,下文继续说明介绍,敬请持续关注!
更多信息请访问论坛.

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐