health 发表于 2024-9-23 20:40:28

测试源码附后。
tjpgd原始代码基本未动,就改了上述那两个地方。
编写disp.c提供了输入和输出接口函数。
用的硬件板子非常简单,基本就是个单芯片,输入jpg数据转成c数组存在code flash中,
输出的图像数据放入xdata空间的显示缓冲区。
因此输入函数就是从code指定地址读数据,输出函数就是将解压数据存入xdata缓冲区。
8051U只有32KB XRAM,将图片分辨率设为120*120,256色,一张图片占14.4KB,
双缓冲就是28.8KB,再加上tjgd的工作空间3.1KB,整个8051U的xram基本用完。
如果使用TFT LCD显示,则可采用16位色,尺寸也不受限制,另行编写输出接口函数即可。
输入数据如果保存在spi flash或TF卡,支持文件系统,另行编写输入接口函数,可支持更大数据容量。


简易原理图
https://www.stcaimcu.com/data/attachment/forum/202409/02/161827m4ohxup9hx3qyyqn.png

autopccopy 发表于 2024-9-23 21:25:44

health 发表于 2024-9-23 20:40
测试源码附后。
tjpgd原始代码基本未动,就改了上述那两个地方。
编写disp.c提供了输入和输出接口函数。


看了电路图,现在才想起CZ 是VGA游戏机的大神!赞{:lol:}
这个例程各位对JPG有兴趣的朋友也可以下载学习。
我还在尝试SDCC及IAR8051呢,他们支持C99...


163

health 发表于 2024-9-23 22:45:35

C99这里支持不支持都无所谓。
SDCC和IAR只有51,不支持251吧?
keil C251有点拉胯,目前好像也没别的选择。

autopccopy 发表于 2024-9-23 22:49:24

health 发表于 2024-9-23 22:45
C99这里支持不支持都无所谓。
SDCC和IAR只有51,不支持251吧?
keil C251有点拉胯,目前好像也没别的选择。 ...

是的,32B暂只有KEIL C251. 我用SDCC/iar是选ai8051u 的8B模式..

mingliang 发表于 2025-6-2 11:20:24

{:4_174:}{:4_174:}{:4_174:}{:4_174:}
页: 1 [2]
查看完整版本: 只需3.5K RAM 的嵌入式:TJpgDec - 微型 JPEG 解压缩器!TFT伴侣