打印
[开发工具]

用最新库玩转智林STM32开发板(之五)------在真彩屏上显示国旗

[复制链接]
3589|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ddllxxrr|  楼主 | 2009-4-10 21:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
首先随便选一面五星红旗    https://bbs.21ic.com/upfiles/img/20094/2009410213751785.jpg

用PHOTO SHOP编成170*96像素的图.

本例程用的是170*96象素的小图,可以在PHOTO SHOP中用把任何图像编成 R5 G6 B5 BMP格式,这一点不难做到只要
选好像素,另存为,先按保存后选择高级选项中的R5 G6 B5 BMP格式保存下就可以

智林巧妙地用了汇编语言命令incbin,先把图像装入CODE区中完后再利用LCD_BMP函数向外调,显示在液晶屏上
由于最新评估版不够,我用了智林开发板光盘上的方法,成功地取消了限制.顺利通过了(大家不要问我是怎么搞的
智林开发板光盘已经明确写着的)

最后我把工程说一下
  BMP图象考到工程目录下
  bmp组:包括BMP.S
  LIB组:直接包括MDK下ARMRV32LIBSTSTM32F10XR.LIB
  uinit组:包括main.c
  lcd组:包括TFT018.c
  Source Group 1组:包括启动文件STM32F10X.S
最后我把所有文件打包有智林开发板的可以试一下

以下是LCD_BMP函数:
void LCD_BMP( U8 x0, U8 y0, U8 x1, U8 y1 , U8 * Bmp )
  {
S16 i,j;
LCD_SetArea(x0,y0,x1,y1);
LCD_Inst(0x2C);
LCD_CS(0);
LCD_RD(1);
LCD_RS(1);
for( i = y1 - y0; i >= 0; i-- )
  for( j = 0; j <= x1 - x0; j++ ) {
   U16* PixP =  (U16*)(Bmp+0x46+i*(x1-x0+1)*2);
   U16 Pix = *(PixP+j);
   LCD_Bus_Write_Byte(Pix>>8);
   LCD_Bus_Write_Byte(Pix);
   }
LCD_CS(1);
}

及BMP.S


              PRESERVE8
; ------------------------ Load bmp picture ------------------------
AREA    |subr|,DATA,READONLY
EXPORT      bmp
bmp
    incbin china.BMP
                END

    以下程序打包:

 zl5.rar (16.74 KB)  zl5.rar (16.74 KB)
下载次数: 0
[ 注:您从未下载过该附件,本次下载需要扣分。]

https://bbs.21ic.com/upfiles/img/20094/2009410214046582.rar
最后在开发板上显示了一面国旗:    https://bbs.21ic.com/upfiles/img/20094/2009410213751785.jpg
相关链接:https://bbs.21ic.com/upfiles/img/20094/2009410214046582.rar
沙发
ddllxxrr|  楼主 | 2009-4-12 17:37 | 只看该作者

包打的不好再打一个

使用特权

评论回复
板凳
zy_sh_npk| | 2009-4-13 10:55 | 只看该作者

用什么模式驱动TFT的LCD?

不知道智林STM32开发板是用什么模式驱动TFT的LCD?
IO模拟的?总线驱动的?SPI接口的?

使用特权

评论回复
地板
网络开发| | 2009-4-13 11:28 | 只看该作者

不错

这个论坛也有很多
 www.stmsky.com/bbs

使用特权

评论回复
5
wgc204| | 2009-4-30 09:25 | 只看该作者

我有240*320的真彩屏

需要的可以联系!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2398

主题

6953

帖子

67

粉丝