-
本帖最后由 harchy 于 2024-7-15 21:04 编辑
Ver 2.0.1.0 (该版本仅支持x64)
(1) 新增支持多种输出数据格式,与RA8875/RA8876/RA8889全系列完美搭配;
(2) 新增支持选择FLASH类型:可将bin档打包为NOR或者NAND的数据格式;
(3) 新增显示缩略图窗口,便于即时查看添加进来的图片文件;
(4) 新增工具:【视频转成AVI档】,可将视频转为AVI(Motion JPEG)格式,适配RA8889的使用需求;
(5) 新增工具:【图片转成JPG档】,可将图片转为JPG(Baseline)格式,适配RA8889的使用需求;
(6) 新增工具:【点阵字库转成图片】,可将点阵字库转成BMP或者JPG图片,便于UI设计;
(7) 完善功能:文件信息插入bin文件头功能,重新规划了格式,原来只分配了8bytes/文件,新版本分配了16bytes/文件,增加了图片宽度和高度、文件类型三个信息,单机机可以根据文件头对文件、影片、字库等进行索引调用;
(8) 可以设定任一文件的写入地址(Address),满足用户局部更新FLASH、合并Bootloader和App等需求。
升级方式:进入菜单 》帮助 》最新版本
-
板上左侧是RA8889,100脚的,用的就是这颗;右侧是103,在此不用。
面包板上呢随便拿了个51来用的
-
se7ens 发表于 2024-6-14 09:54
看起来不错,可以用3.3v的51单片机吗?
肯定可以啊,中间加了电平转换模块就是因为MCS-51接口是5V,如果是3.3V单片机,接线就更简单了!RA8889,RA8876等均是3.3V.
-
**51单片机驱动控制彩屏系列讲座**
第三讲:单片机STC89C52+RA8889驱动控制彩屏 代码的压缩(Keil编译器)
本章介绍使用Keil编译器时如何压缩51单片机移植RA8889的代码。
瑞佑(RAIO)科技所推出的RA8889是一颗图形控制芯片,具有相当多的图形显示功能,包括绘图、文字显示、DMA、JPG解码、AVI解码等,因此API函数十分丰富,也就造成代码庞大,冗余较多。对于单片机来说,FLASH空间都比较小,因此除了在移植时要适当裁剪代码之外,我们对编译器也要适当设定,可大大减少生成文件的大小。
#### 一、选择扩展链接程序:
![814361](/data/attachment/forum/202406/06/140639y2pxxnxn9n9ypx89.png.thumb.jpg?rand=3984.9588551456795)
#### 二、模块优化级别:使用公共块代码编译
![814362](/data/attachment/forum/202406/06/140649f2u6y62zd6cy6lc8.png.thumb.jpg?rand=3001.7833438037765)
#### 三、编译时不包含未使用的函数模块:REMOVEUNUSED
![814363](/data/attachment/forum/202406/06/140653ezc9xk1xq0c11kju.png.thumb.jpg?rand=4576.105993103796)
这样设定之后,代码编译完就很小啦!
-
本帖最后由 harchy 于 2024-6-5 11:13 编辑
**51单片机驱动控制彩屏系列讲座**
第二讲:单片机STC89C52+RA8889驱动控制彩屏 代码移植介绍
#### 一、RA8889核心文件有四个,分别是:
| 文件 | 说明 |
|--|--|
| RA8889.c | 底层API程序 |
| RA8889_API.c | 用户层API程序(可选)|
|RA8889_MCU_IF.c | MCU通信函数|
|UserDef.h | 参数配置:屏参、频率等|
重点要移植的代码是RA8889.c,这份程序可以根据功能需求进行裁切移植,而RA8889_API.c这份是API接口程序,代码多,根据实际功能需求进行裁切。RA8889_MCU_IF.c则可以根据实际通信方式进行选择裁切。
UserDef.h 配置相关参数、宏定义,另外还有一份delay.c,这里的延时函数需要用户根据自己的主频进行调整。根据51单片机,移植好了核心代码放在 RA8889_01_Kernel 文件架里面:
![814022](/data/attachment/forum/202406/05/110922o9hh7gmh7okok7ho.png?rand=8213.287024282325)
上一讲已针对51基础功能进行了基础移植,并根据51单片机进行优化,该代码使用的是AT070TN92兼容屏,若您手上的液晶屏是其它型号,要变更屏的参数配置Set_LCD_Panel(),不清楚可以在本bbs论坛留言。
使用Keil来编辑时,程序添加到项目中:
![814023](/data/attachment/forum/202406/05/110930rgv2cg5dpsi0pse5.png?rand=2493.770546848706)
路径包含:
![814024](/data/attachment/forum/202406/05/111036q7zcceczc42kvkee.png.thumb.jpg?rand=3633.3877107746202)
#### 二、单片机仅需要做三步:
```c
/* SPI初始化 */
SPI4_Init();
/* RA8889硬件复位 */
SPI_RST = 1;
delay_ms(1);
SPI_RST = 0;
delay_ms(1);
SPI_RST = 1;
/* RA8889初始化 */
RA8889_Initial();
```
这样初始化也就做完了,接下来单片机就可以开始绘图了。
#### 三、绘图和显示文字:
1. 下方代码演示颜色填充,根据函数名称不难理解,这些函数存放在RA8889_51.c里面:
```c
/* 画矩形填充 */
Foreground_color_16M(0x0);
Square_Start_XY(0,0);
Square_End_XY(799,479);
Start_Square_Fill();
```
RA8889内建图形驱动引擎,可以绘制各种几何图形:方形,三角形,圆形,椭圆形等等,您可以根据需求再从RA8889标准参考程序里面找到RA8889.c,根据功能进行裁剪。
2. 文字显示,下方是简单调用,此外文字显示还有多种功能:放大、加底色等,这些都可以从RA8889标准参考程序找到RA8889_API.c进行裁剪移植。
```c
/* 内建文字显示测试 */
Foreground_color_16M(0xFFFFFF);
Goto_Text_XY(124,30);
Show_String("Solution: 89C52 + RA8889.");
Goto_Text_XY(124,60);
Show_String("RA8889 is an efficient TFT LCD CONTROLLER.");
Goto_Text_XY(124,90);
Show_String("It has an embedded decoder for JPG and AVI.");
```
#### 四:移植的调试
在移植时,有可能不成功,这里介绍一点经验:
1. 检查SPI接线,SDO和SDI不要接反了,还要确认CS和地线;
2. 可以无限循环RA8889_Initial()代码,再用示波器观察SDO、SDI、SCK及CS的波形,是否有周期的脉冲,这个方法定位会比较容易;
3. 在MCU_Dev_Board.c代码中有一个通信测试Comm_Test(),通过该函数对RA8889进行读写,若正常则闪烁LED来指示;
4. 另外可以调整delay.c,将延时先调得长一点进行测试,待通信正常再适当调快。
-
beyond_笑谈 发表于 2024-6-4 10:31
早上还在技术群里聊STC的51单片机有没有人在用,果然51永不过时
看STC活得绘声绘色,仍在不断发展壮大的
-
v1.3.0.2 2023/12/5 调整输出的.h格式,导出同时构建枚举函数,MCU可直接引用该头文件进行索引,该文件与Image Tool导出来的.h格式一致,可兼容;另外增加图片的宽度和高度信息,可搭配瑞佑的RA8889使用。
导入方法:导入存档>>打开文件选择框>>选择已保存的.h文件。
请更新为最新版本。
-
v1.2.0.1 2023/11/18 更新偏移地址设定逻辑,可以设定任一文件的偏移地址,满足MCU的IAP Boot Loader Code和Application Code合并时需要固定偏移功能(比如0x00001000),请下载最新版本。
-
使用串口屏确实省事! 直接升级, 简单易用, 开发起来十分高效!!
如果想要节约成本, 就采用专用的液晶控制芯片来点彩屏, 比如瑞佑的RA8889,RA8871M,RA8873M等,和串口屏一样简单易用, 单片机就可以直接控制了. 给广大研发参考!
-
bigbat 发表于 2019-1-31 09:16
这两个需要多少电压和电流驱动?大概是什么信号,是PWM脉冲吗?
液晶LED背光参考电路:
还有不明白可以加QQ 598076690 切磋.
-
本帖最后由 harchy 于 2016-9-25 00:06 编辑
wolfcan 发表于 2016-9-23 14:10
谢谢您,请问这样会不会烧mos管?听楼上几位老师说,两个mos管在开通关断的时候可能会有短路的情况发生。
电路又不是把三极管或MOS管直接对接,必须独立分开,P型管e极输出,N型管是c极输出,搭配几颗上拉电阻和下拉电阻,硬件设计简单成本也低,找你边上熟悉电路的了解下就清楚了,只能告诉你这个方向:P型管作用:反向
N型管作为:同向
不加N型管也可以,但脉冲是否同步不确定,故同时加P和N.
-
本帖最后由 harchy 于 2016-9-22 13:27 编辑
告诉你一个最简单办法:
信号出来推2个三极管,一个NPN,另一个PNP型,也可采用MOS管,输出就可以有2路同步反向信号了。
-
本帖最后由 harchy 于 2016-9-22 13:13 编辑
如果仅仅只有这两个部件而且只有三个孔,先把零件面的焊锡孔处理一下,最好是略微凹陷下去,再把零件脚剪短摆好,对好孔位,一手托住零件和PCB固定不动,另一手烙铁加多一点新锡,在背后同时加热3个孔位,锡多一些让3孔连接起来会比较快就可以把零件焊进去了!焊进去之后再把多余的焊锡收走,不会收就蘸点松香。
另一种办法就是对一个孔加满焊锡,烙铁烫溶之后,在迅速移开烙铁之后马上用力向孔吹,通过气流把焊锡吹走,不过你的地线都是铺铜散热快这个方法不容易吹走。
-
本帖最后由 harchy 于 2016-9-22 12:58 编辑
介绍2颗芯片方案:
1. RA8877,单片机连接后可控制单通道LVDS接口液晶屏,方框图如下:
2. RA8876+DS90C385A,一样是实现单片机连接后可控制单通道LVDS接口液晶屏,方框图如下:
其中DS90C385A这颗起TTL转LVDS作用。
这个系列芯片还有RA8871, RA8873,简单易用,甚至仅仅采用8位单片机都可以控制操作!对单片机要求极低,
喜欢的话也可以直接使用3线/4线来作控制,RAIO的控制器本身内建相当多的绘图指令及图片调用功能,
即使是低端单片机,显示速度也不必担心!
这篇贴子有介绍: https://bbs.eeworld.com.cn/thread-500929-1-1.html
关注微信号了解更多:tftcontroller