|
|
本帖最后由 weran 于 2026-2-28 14:59 编辑
简介:
使用JPG图片的调用制作一段收银机的演示,整个工程注重UI设计轻代码,代码部分只需要使用API函数循环调用JPG图片即可。
硬件平台:
单片机:STM32F103VET6
图形处理器:RA8889/RA6809
第一步:设计UI图片并打包烧录
首先设计好演示的图片,然后使用Packaging Tool进行打包,选择输出JPG格式,添加全部图片,合并保存后会生成两个文件.bin与.h,将.bin烧录到RA8889/RA6809板的Flash中。
打包
第二步:使用API函数编写代码
将生成.h信息文件添入keil工程中引用,在代码中使用API函数循环调用JPG图片,代码十分简洁。
- #include "Shopping_800x480_jpg.h"
复制代码- /*RA8889初始化出现彩虹条*/
- RA8889_Initial();
- /* 释放FLASH引脚给RA8889使用 */
- GPIO_SPI1_AIN_Configuration();
- GPIO_SPI2_AIN_Configuration();
- /*JPG功能例程测试环境 屏幕分辨率800x480, 16bpp */
- BTE_Solid_Fill(0,canvas_image_width,0,0,0xffff,LCD_width,LCD_legth);
- SPI_NOR_initial_JPG_AVI (1,0,1,2,1); //BUS1,CS2
- while(1)
- {
- JPG_NOR (BINARY_INFO[0].start_addr,BINARY_INFO[0].img_size,canvas_image_width,0,0);
- delay_ms(999);
- for(i=1;i<17;i++)
- {
- JPG_NOR (BINARY_INFO[i].start_addr,BINARY_INFO[i].img_size,canvas_image_width,0,0);
- delay_ms(15);
- }
- delay_ms(999);
- for(i=17;i<33;i++)
- {
- JPG_NOR (BINARY_INFO[i].start_addr,BINARY_INFO[i].img_size,canvas_image_width,0,0);
- delay_ms(15);
- }
- delay_ms(999);
- for(i=33;i<49;i++)
- {
- JPG_NOR (BINARY_INFO[i].start_addr,BINARY_INFO[i].img_size,canvas_image_width,0,0);
- delay_ms(15);
- }
- delay_ms(999);
- }
复制代码
第三步:编译、运行
显示效果:
演示
工程下载:
超级市场_JPG调用.7z
(1.97 MB, 下载次数: 0)
|
|