單片機 壓縮 CRC

常用的2個壓縮,rar zip,但是MCU好像都支持的不好,打開WINRAR.EXE文件,還可以看到原文件CRC32值,

 

以後驗證文件的CRC校驗的話,用RAR來看,還真是個簡單的辦法。

 

但是單片機要怎麼壓縮呢,quicklz fastlz  minilzo, 感覺都不是很知名,想找個在PC上運行的客戶端都找不到,

RTT下這個打包器,支持quicklz \ fastlz\  gzip三種壓縮算法,RTT是在單片機上運行的,所以它選擇的這3種算法前2種都比較容易實現,RTT的軟件倉庫中也月相關的源源代碼。  但GZIP沒有找到源代碼,百度了一下,發現GZIP可能有些難度,RTT倉庫裏沒有這種壓縮的源程序,據說GZIP實現要耗費的資源多些,尤其是RAM,,這個我沒研究過,我的目的不是要實現多麼高的壓縮率,所以暫時挑過。

   我要實現的是bin文件的完整性,及合適的壓縮率,及容易實現的方法。

https://mp.weixin.qq.com/s?__biz=MzA3MTk0OTk2NQ==&mid=2653844594&idx=1&sn=9e1fddc92055c27a1e8956d39e470052&chksm=84ff1f90b388968606d08373ef394d454e702a1eb84aa1e5adef2c64dbc541eedf6e6d6d72b5&scene=0&xtrack=1&key=a7f0d0945338b53220021768306aeee278c782dbb9251ea69440b30977c4eaf288012ff189f7a1c7daf62f8ec1e9a5fe877ce60bdf706d83070284c2257327ddb79b7538e05fabb1ef55d8c964ba515a&ascene=1&uin=MjIyMDc5ODU2MA%3D%3D&devicetype=Windows+10&version=62070158&lang=zh_CN&exportkey=AQQLYkb7XyYUysJjDOowX0Y%3D&pass_ticket=zkR8S7RBZoeMbm7UrWJYnEJblVxWgPZuF1qUJvoKGf0kZdynDoBVX5cNuVm1DH7F

這裏月一往篇文章介紹了IAR KEIL如何生成自帶CRC校驗的固件,IAR的還好說,但KEIL就比較麻煩,還需要添加外部工具,太麻煩了,我個人還可以用,但如果推廣到公司層面,估計還好操作。所以我想找一個工具還增加CRC校驗,順便增加壓縮。

找來找去,還是RTT提供的這個工具比較好。

能實現壓縮,有CRC校驗。唯一不好的就是沒月源源代碼,哈哈,我想多了,有人提供一個這麼好用的東西我應該很感激纔對了,這文件頭也很容易解析, BODY_CRC  HEADR_CRC, 就就夠了……

 

糾正一下,居然ZLIB這麼強大,可以壓縮.zip格式。研究了好多遍居然沒有發現!! zlib只是實現了一咱壓縮算法,在此基礎上可實現gzip zip兩種壓縮存儲格式。  minigzip.c    minizip.c

.zip is an archive format using, usually, the Deflate compression method. The .gz gzip format is for single files, also using the Deflate compression method. Often gzip is used in combination with tar to make a compressed archive format.tar.gz. The zlib library provides Deflate compression and decompression code for use by zip, gzip, png (which uses the zlib wrapper on deflate data), and many other applications.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章