欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2141|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

二進(jìn)制文件合并工具PackagingTool

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:65967 發(fā)表于 2023-11-6 16:18 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
軟件功能介紹:
該軟件可進(jìn)行多個(gè)二進(jìn)制文件的合并,可以自由添加文件、刪除、調(diào)整文件排列順序,并且可以在前面插入偏移地址,滿足各種FLASH燒錄需求。



用戶還可以選擇是否將合并的文件地址和大小寫入前置偏移地址,地址和大小各占4Bytes,寫入的數(shù)據(jù)格式為L(zhǎng)SB->MSB,用戶可方便讀取索引使用。


下面舉例單片機(jī)如何讀取jpg圖片出來顯示,打包好的bin檔已燒錄到RA8889下掛的FLASH芯片,單片機(jī)直接訪問讀取文件的地址和大小信息:
  1. //獲取圖片的地址或者大小信息,共4個(gè)字節(jié),再合并成一個(gè)數(shù)值返回
  2. unsigned long Get_Picture_Address_Size(unsigned long flash_addr)
  3. {
  4. unsigned long temp;
  5. unsigned short i;
  6. unsigned int data_buffer[4];  //存放從FLASH讀取出的數(shù)據(jù)   

  7. Enable_SFlash_SPI();

  8. if(FLASH_BUS==0) SPIM_Select_Bus_0(); //總線BUS0
  9. else  SPIM_Select_Bus_1(); //總線BUS1

  10. #ifdef OVER_128Mb
  11. Select_nSS_drive_on_xnsfcs3(); //使用CS3位置的FLASH
  12. #else
  13. Select_nSS_drive_on_xnsfcs2(); //使用CS2位置的FLASH
  14. #endif

  15. RA8889_SPI_Flash_WREN(); //寫入使能
  16. nSS_Active();
  17. delay_us(1);
  18. SPI_Master_FIFO_Data_Put(0x03);
  19. delay_us(1);

  20. #ifdef OVER_128Mb   //32bit 尋址
  21. SPI_Master_FIFO_Data_Put(flash_addr>>24);
  22. SPI_Master_FIFO_Data_Put(flash_addr>>16);
  23. SPI_Master_FIFO_Data_Put(flash_addr>>8);
  24. SPI_Master_FIFO_Data_Put(flash_addr);
  25. #else    //24bit 尋址
  26. SPI_Master_FIFO_Data_Put(flash_addr>>16);
  27. SPI_Master_FIFO_Data_Put(flash_addr>>8);
  28. SPI_Master_FIFO_Data_Put(flash_addr);
  29. #endif

  30. for(i=0;i<4;i++)
  31. {
  32. data_buffer[i] = SPI_Master_FIFO_Data_Put(0xff);
  33. }

  34. temp = data_buffer[3]<<24;  
  35. temp += data_buffer[2]<<16;
  36. temp += data_buffer[1]<<8;
  37. temp += data_buffer[0];

  38. nSS_Inactive();   

  39. while(RA8889_SPI_Flash_RDSR()& 0x01);
  40. RA8889_SPI_Flash_WRDI();
  41. Disable_SFlash_SPI();

  42. return(temp);
  43. }
復(fù)制代碼


單片機(jī)將獲取到的jpg圖片地址和文件大小傳給RA8889,即可顯示:
  1. //從FLASH讀取第n張圖片出來顯示
  2. int Show_Picture(unsigned int pic_num)
  3. {
  4. unsigned long pic_addr, pic_size;

  5. pic_addr = Get_Picture_Address_Size(0x0000+pic_num*8); //讀取到第n個(gè)圖片地址的值
  6. pic_size = Get_Picture_Address_Size(0x0004+pic_num*8); //讀取到第n個(gè)圖片大小的值

  7. //讀取不到圖片信息標(biāo)志
  8. if(pic_addr==0xFFFFFFFF)
  9. {
  10. return 0;
  11. }
  12. else
  13. {
  14. SPI_NOR_initial_JPG_AVI (1,0,FLASH_BUS,FLASH_CS,1);

  15. #ifdef OVER_128Mb   
  16. switch_24bits_to_32bits(FLASH_BUS,FLASH_CS);
  17. IDEC_Select_SFI_32bit_Address();
  18. #endif

  19. //RA8889顯示JPG圖片:
  20. JPG_NOR (pic_addr,pic_size,canvas_image_width,0,0);

  21. return 1;
  22. }
  23. }
復(fù)制代碼



保存文件后除了會(huì)生成一份.bin文件之外,同時(shí)還會(huì)生成一份.h文件,方便用戶查閱與調(diào)用,并且用戶可以再次導(dǎo)入該文件的列表,省去頻繁導(dǎo)入與調(diào)整文件順序的麻煩。

該軟件若與瑞佑的RA8889結(jié)合使用,可以用來打包jpg、avi等圖資,由于此類文件大小不一,MCU若沒有做FAT文件系統(tǒng)就只能做成固定調(diào)用,不好單獨(dú)對(duì)圖資變更了,除非MCU固件也一起變更。而使用該軟件就可以在打包文件的同時(shí)將文件信息一同保存,MCU按固定地址去讀取而不必在意文件的大小了,只需要更新圖資即可。

原文鏈接及下載地址:lcdvision官網(wǎng) 資料下載:RAIO > 輔助開發(fā)軟件

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:65967 發(fā)表于 2023-11-9 21:19 | 只看該作者

RE: 二進(jìn)制文件合并工具PackagingTool

附件為綠色版程序,單文件約350KB,通用Window各平臺(tái),調(diào)試開發(fā)得力工具!
歡迎愛好者測(cè)試下載吧!

PackagingTool.zip (54.28 KB, 下載次數(shù): 7)

回復(fù)

使用道具 舉報(bào)

板凳
ID:65967 發(fā)表于 2023-12-6 13:39 | 只看該作者
重要改版:

1.新增可對(duì)任何一個(gè)文件進(jìn)行地址偏移設(shè)定,滿足MCU的IAP Boot Loader Code和Application Code合并時(shí)需要固定偏移功能(比如0x00001000);

2.調(diào)整輸出的.h格式,導(dǎo)出同時(shí)構(gòu)建枚舉函數(shù),MCU可直接引用該頭文件進(jìn)行索引,該文件與Image Tool導(dǎo)出來的.h格式一致,可兼容;另外增加圖片的寬度和高度信息,可搭配瑞佑的RA8889使用。

51hei.png (45.72 KB, 下載次數(shù): 149)

51hei.png

PackagingTool_1.3.0.2.zip

58.81 KB, 下載次數(shù): 3, 下載積分: 黑幣 -5

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表