ZHCACZ6A october   2012  – august 2023 CC430F5123 , CC430F5125 , CC430F5133 , CC430F5135 , CC430F5137 , CC430F5143 , CC430F5145 , CC430F5147 , CC430F6125 , CC430F6126 , CC430F6127 , CC430F6135 , CC430F6137 , CC430F6147 , MSP430AFE221 , MSP430AFE222 , MSP430AFE223 , MSP430AFE231 , MSP430AFE232 , MSP430AFE233 , MSP430AFE251 , MSP430AFE252 , MSP430AFE253 , MSP430BT5190 , MSP430F1101A , MSP430F1111A , MSP430F1121A , MSP430F1122 , MSP430F1132 , MSP430F122 , MSP430F1222 , MSP430F123 , MSP430F1232 , MSP430F133 , MSP430F135 , MSP430F147 , MSP430F1471 , MSP430F148 , MSP430F1481 , MSP430F149 , MSP430F1491 , MSP430F155 , MSP430F156 , MSP430F157 , MSP430F1610 , MSP430F1611 , MSP430F1612 , MSP430F167 , MSP430F168 , MSP430F169 , MSP430F2001 , MSP430F2002 , MSP430F2003 , MSP430F2011 , MSP430F2012 , MSP430F2013 , MSP430F2013-EP , MSP430F2101 , MSP430F2111 , MSP430F2112 , MSP430F2121 , MSP430F2122 , MSP430F2131 , MSP430F2132 , MSP430F2232 , MSP430F2234 , MSP430F2252 , MSP430F2254 , MSP430F2272 , MSP430F2274 , MSP430F233 , MSP430F2330 , MSP430F235 , MSP430F2350 , MSP430F2370 , MSP430F2410 , MSP430F2416 , MSP430F2417 , MSP430F2418 , MSP430F2419 , MSP430F247 , MSP430F2471 , MSP430F248 , MSP430F2481 , MSP430F249 , MSP430F2491 , MSP430F2616 , MSP430F2617 , MSP430F2618 , MSP430F2619 , MSP430F412 , MSP430F413 , MSP430F4132 , MSP430F415 , MSP430F4152 , MSP430F417 , MSP430F423 , MSP430F423A , MSP430F425 , MSP430F4250 , MSP430F425A , MSP430F4260 , MSP430F427 , MSP430F4270 , MSP430F427A , MSP430F435 , MSP430F4351 , MSP430F436 , MSP430F4361 , MSP430F437 , MSP430F4371 , MSP430F438 , MSP430F439 , MSP430F447 , MSP430F448 , MSP430F4481 , MSP430F449 , MSP430F4491 , MSP430F4616 , MSP430F46161 , MSP430F4617 , MSP430F46171 , MSP430F4618 , MSP430F46181 , MSP430F4619 , MSP430F46191 , MSP430F47126 , MSP430F47127 , MSP430F47163 , MSP430F47166 , MSP430F47167 , MSP430F47173 , MSP430F47176 , MSP430F47177 , MSP430F47183 , MSP430F47186 , MSP430F47187 , MSP430F47193 , MSP430F47196 , MSP430F47197 , MSP430F477 , MSP430F478 , MSP430F4783 , MSP430F4784 , MSP430F479 , MSP430F4793 , MSP430F4794 , MSP430F5212 , MSP430F5214 , MSP430F5217 , MSP430F5219 , MSP430F5222 , MSP430F5224 , MSP430F5229 , MSP430F5232 , MSP430F5234 , MSP430F5237 , MSP430F5239 , MSP430F5242 , MSP430F5244 , MSP430F5247 , MSP430F5249 , MSP430F5252 , MSP430F5253 , MSP430F5254 , MSP430F5255 , MSP430F5256 , MSP430F5257 , MSP430F5258 , MSP430F5259 , MSP430F5304 , MSP430F5308 , MSP430F5309 , MSP430F5310 , MSP430F5324 , MSP430F5325 , MSP430F5326 , MSP430F5327 , MSP430F5328 , MSP430F5329 , MSP430F5333 , MSP430F5335 , MSP430F5336 , MSP430F5338 , MSP430F5340 , MSP430F5341 , MSP430F5342 , MSP430F5418 , MSP430F5418A , MSP430F5419 , MSP430F5419A , MSP430F5435 , MSP430F5435A , MSP430F5436 , MSP430F5436A , MSP430F5437 , MSP430F5437A , MSP430F5438 , MSP430F5438A , MSP430F5500 , MSP430F5501 , MSP430F5502 , MSP430F5503 , MSP430F5504 , MSP430F5505 , MSP430F5506 , MSP430F5507 , MSP430F5508 , MSP430F5509 , MSP430F5510 , MSP430F5630 , MSP430F5631 , MSP430F5632 , MSP430F5633 , MSP430F5634 , MSP430F5635 , MSP430F5636 , MSP430F5637 , MSP430F5638 , MSP430F6433 , MSP430F6435 , MSP430F6436 , MSP430F6438 , MSP430F6630 , MSP430F6631 , MSP430F6632 , MSP430F6633 , MSP430F6634 , MSP430F6635 , MSP430F6636 , MSP430F6637 , MSP430F6638 , MSP430F6659 , MSP430F6779 , MSP430FE423 , MSP430FE4232 , MSP430FE423A , MSP430FE4242 , MSP430FE425 , MSP430FE4252 , MSP430FE425A , MSP430FE427 , MSP430FE4272 , MSP430FE427A , MSP430FG4250 , MSP430FG4260 , MSP430FG4270 , MSP430FG4616 , MSP430FG4617 , MSP430FG4618 , MSP430FG4619 , MSP430FG477 , MSP430FG478 , MSP430FG479 , MSP430FR5720 , MSP430FR5721 , MSP430FR5722 , MSP430FR5723 , MSP430FR5724 , MSP430FR5725 , MSP430FR5726 , MSP430FR5727 , MSP430FR5728 , MSP430FR5729 , MSP430FR5730 , MSP430FR5731 , MSP430FR5732 , MSP430FR5733 , MSP430FR5734 , MSP430FR5735 , MSP430FR5736 , MSP430FR5737 , MSP430FR5738 , MSP430FR5739 , MSP430FW423 , MSP430FW425 , MSP430FW427 , MSP430FW428 , MSP430FW429 , MSP430G2001 , MSP430G2101 , MSP430G2102 , MSP430G2111 , MSP430G2112 , MSP430G2121 , MSP430G2131 , MSP430G2132 , MSP430G2152 , MSP430G2153 , MSP430G2201 , MSP430G2202 , MSP430G2203 , MSP430G2211 , MSP430G2212 , MSP430G2213 , MSP430G2221 , MSP430G2231 , MSP430G2232 , MSP430G2233 , MSP430G2252 , MSP430G2253 , MSP430G2302 , MSP430G2303 , MSP430G2312 , MSP430G2313 , MSP430G2332 , MSP430G2333 , MSP430G2352 , MSP430G2353 , MSP430G2402 , MSP430G2403 , MSP430G2412 , MSP430G2413 , MSP430G2432 , MSP430G2433 , MSP430G2452 , MSP430G2453 , MSP430G2513 , MSP430G2533 , MSP430G2553 , MSP430G2955 , MSP430L092

 

  1.   1
  2.   使用 MSP430 图形库时的设计注意事项
  3.   商标
  4. 1MSP430 图形库简介
  5. 2系统概述
  6. 3硬件实现 - LCD 总线类型
    1. 3.1 并行总线
    2. 3.2 SPI 总线
  7. 4软件实现 - LCD 显示驱动程序层
    1. 4.1 驱动程序层组件
    2. 4.2 创建新的 LCD 驱动程序文件
    3. 4.3 优化 LCD 显示驱动程序层以提高速度
      1. 4.3.1 利用 LCD 控制器的功能
      2. 4.3.2 编码优化
    4. 4.4 MSP430 图形库中的图像
      1. 4.4.1 映像格式
      2. 4.4.2 图像转换
      3. 4.4.3 MSP430 图像重整工具
      4. 4.4.4 调色板转换
      5. 4.4.5 压缩类型
        1. 4.4.5.1 压缩 16 种或更少颜色的图像
        2. 4.4.5.2 压缩 256 色图像
        3. 4.4.5.3 选择压缩类型
  8. 5设计示例
    1. 5.1 硬件实现
    2. 5.2 总线比较
    3. 5.3 软件实现
  9. 6参考文献
  10. 7修订历史记录

压缩类型

行程编码 (RLE) 是一种在行程像素较长时效果显著的压缩类型。该算法易于理解,可以大大减小存储大小并提高绘制速度。该 GUI 中使用两种不同类型的行程编码来压缩图像:4 位行程编码 (RLE4) 和 8 位行程编码 (RLE8)。

对图像进行行程编码会导致像素数据被压缩为两个部分:行程和像素索引。这会将连续像素数据字节字符串替换为编码字节。这种压缩是无损的,这意味着它不会改变图像数据的内容,而只是以不同的格式存储数据。以不同的方式存储数据可以针对要绘制的图像进行各种尺寸和速度权衡。

RLE4 和 RLE8 之间的区别在于为行程和像素值保留的位数。RLE4 使用 4 位来表示行程,使用 4 位来表示像素索引。RLE4 编码将行程限制为 16 个像素,并且只能用于调色板中像素不超过 16 的 1BPP 或 4BPP 图像。行程的最小长度为 1 个像素,因此行程的值 0x00 表示行程 1,0x01 表示行程 2,依此类推。

图 4-8 是包含五种不同颜色的 7x8 像素图像。此图像用于比较 MSP430 图形库支持的多种压缩类型。

GUID-DE613343-96D0-4E17-9DB5-EBEE5F5AA46E-low.gif图 4-8 MSP430 图像重整工具 – 7x8 像素图像示例

下面介绍了使用所有可用压缩选项时的图像数据。对于所有类型的图像压缩,调色板保持相同。

对于未压缩的像素数据,图像的每一行都必须以偶数字节边界结束。下面的未压缩 4BPP 像素数据说明了如何在行的最后一个字节上用额外的零填充字节来实现这一点。当 4BPP 图像的宽度不是 2 的倍数,并且 1BPP 图像的宽度不是 8 的倍数时,就会发生这种填充。经过行程编码的图像不需要一行以偶数字节边界结束,如果像素颜色仍然相同,则行程可以扩展到下一行。

                              Color Palette
                             0x0000FF,  (Blue)
                             0x00FF00,  (Green)
                             0xFF0000,  (Red)
                             0xFF00FF,  (Purple)
                             0xFFFFFF   (White)
0x00, 0x04, 0x11, 0x10,                            0x20, 0x04, 0x21, 0x10, 0x24, 0x11,
0x00, 0x44, 0x41, 0x10,                            0x00, 0x14, 0x03, 0x14, 0x01, 0x14,
0x04, 0x43, 0x44, 0x10,                            0x23, 0x24, 0x43, 0xF4, 0x04, 0x22,
0x44, 0x33, 0x34, 0x40,                            0x14
0x43, 0x33, 0x33, 0x40,
0x44, 0x44, 0x44, 0x40, 
0x44, 0x44, 0x44, 0x40,
0x44, 0x22, 0x24, 0x40
Uncompressed 4BPP Pixel Data                       RLE4 Compressed Pixel Data
                               Color Palette
                              0x0000FF,  (Blue)
                              0x00FF00,  (Green)
                              0xFF0000,  (Red)
                              0xFF00FF,  (Purple)
                              0xFFFFFF   (White)
0x00, 0x00, 0x00, 0x04, 0x01, 0x01, 0x01,          0x02, 0x00, 0x00, 0x04, 0x02, 0x01,
0x00, 0x00, 0x04, 0x04, 0x04, 0x01, 0x01,          0x01, 0x00, 0x02, 0x04, 0x01, 0x01,
0x00, 0x04, 0x04, 0x03, 0x04, 0x04, 0x01,          0x00, 0x00, 0x01, 0x04, 0x00, 0x03,
0x04, 0x04, 0x03, 0x03, 0x03, 0x04, 0x04,          0x01, 0x04, 0x00, 0x01, 0x01, 0x04,
0x04, 0x03, 0x03, 0x03, 0x03, 0x03, 0x04,          0x02, 0x03, 0x02, 0x04, 0x04, 0x03,
0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,          0x10, 0x04, 0x02, 0x02, 0x01, 0x04
0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
0x04, 0x04, 0x02, 0x02, 0x02, 0x04, 0x04
Uncompressed 8BPP Pixel Data                       RLE8 Compressed Pixel Data

每种类型的行程编码都需要进行权衡。RLE4 更适合像素行程较短的图像,因为它需要 1 个字节来对行程和数据进行编码,而 RLE8 需要 2 个字节来编码。然而,RLE8 更适合像素行程较长的图像,因为它支持长达 256 像素的行程,而 RLE4 仅支持长达 16 像素的行程。此示例图像中有几个短行程,导致 RLE8 方法需要两倍的字节数。该图像中还有一个长达 17 个白色像素的行程,RLE4 需要两个单独的行程才能生成该部分。由于这些权衡因素,图像像素数据的压缩量在很大程度上取决于图像。

表 4-2 RLE4、RLE8 和未压缩图像格式的利弊权衡
1BPP 4BPP 8BPP
优势
  • 通常对 4BPP 图像的压缩效果最佳
  • 字节和秒绘制速度比 RLE4 快得多(约快 1.5 至 4 倍)
  • 唯一支持对超出 LCD 边界的图像进行图像削波的选项
  • 最适合非常复杂的图像,例如照片
劣势
  • 可能会比未压缩的图像更大
  • 包含 1BPP 图像的未使用位
  • 无法用于 8BPP 图像
  • 图像必须保持在 LCD 边界内
  • 可能会比未压缩的图像更大
  • 包含 1BPP 和 4BPP 图像的未使用位
  • 图像必须保持在 LCD 边界内
  • 有时要比压缩后图像更大、更慢