曾在NuTiny-EVB-M058SSAN-LQFP64 V2.1开发板上,用M0516旗舰板的例程实现了数码相框功能。这次决定在新唐的NuTiny-SDK-M451开发板上实现数码相框功能,程序则是基于M451迷你板的例程,所用显示屏为2.4寸TFT液晶屏。 在微控器方面,两者的区别上功能的实现上是没有影响的,相对来讲NuTiny-SDK-M451开发板上的M453VG6A要比M451RG6AE的资源要更丰富些,M453VG6A是100脚封装,而M451RG6AE是64脚封装,可见以M453VG6A实现数码相框功能后,尚能添加更多的其它功能。 本人所用的是2.4寸的TFT液晶屏,并以8位数据传输模式工作,因此需对 LCD.C的程序稍加修改,主要是将: STATIC UINT32 g_unTFTDataMode =TFT_DATA_16BIT; 改为:STATIC UINT32 g_unTFTDataMode =TFT_DATA_8BIT; 此外,要将LcdInit()函数中的: /* 设置当前驱动为16位模式 */ LcdConfigure16BitPins(); 改为: /* 设置当前驱动为8位模式 */ g_unTFTDataMode = TFT_DATA_8BIT; LcdConfigure8BitPins(); 并注销掉对TFT液晶屏的驱动芯片ID值的识别处理。 运行修改后的【TFT】【颜色显示】程序,则能够实现正常的显示功能。 此时,似乎数码相框的实现已无问题了,然而却做了一星期也没实现。最终只能由SD卡来找原因。为了方便,只用了一个SD卡座来插卡测试SD卡的读写功能及文件系统的读写功能,经测试一切正常。再连上液晶屏居然显示图片了。高兴之余又把SD卡座的线连回到液晶屏的卡座上,竟然又不显示图片了。 后来用STM32F411又搭建了一个数码相框,使用液晶屏上的SD卡座是能显示图片。又仔细查看了一下M451迷你板,它的SD卡座也不是在液晶屏上,是否这就是原因之一呢? 使用根目录和子目录显示的用法如下: /* 显示SD卡根目录中2.bmp */ BMP_Decode(0,0,"1:/2.BMP"); /* 显示SD卡Picture目录中3.bmp */ BMP_Decode(0,0,"1:/Picture/3.BMP"); 使用SD卡字库显示信息的语句如下: f_mount(FATFS_IN_SD ,&g_fs[1]); LcdCleanScreen(WHITE); LcdFill(0,0,LCD_WIDTH-1,20,RED); LcdShowString(80,3,"位图显示",YELLOW,RED);
图1BMP显示效果
图2使用SD卡的字库显示
图3 JPEG显示效果
图4 GIF动画显示
|