本帖最后由 qiaohaiquan 于 2017-4-29 14:58 编辑
1. 其实拿到这么炫酷的板子,总要做点什么惊天地的事情吧。
2. 我测试MyDispDemo2.cc 发现可以打开照片
3. 那么开始研究,找到SD卡的里面的文件,发现了digilent 的图片
查看图片属性,bmp格式,240*320 的
4. 找到自己的图片,用PS换成bmp格式,240*320 的 像素。
5. 接下来看代码怎么处理的
int main ()
{
EnableCaches(); //初始化,可以不用
setup(); // 这个是设置屏幕的一些参数,按键,背景图片等
while(1)
{
loop(); //这个函数不仅仅是循环,处理事件都在里面
}
return 0;
}
6. 说下 setup 函数,主要是下面几个函数,绿色背景的就是这次我们需要修改的地方,C++风格代码,还好,不多讲了,大家估计都会的
//设置按键的 图片,就是按键的外观,"Images/IMG_0001.BMP"这种就是路径和照片名字。一个是按键没按下的图片,一个是按键按下的图片
mydisp.createButton(0, "Images/IMG_0001.BMP", "Images/IMG_0002.BMP", 10, 270);
mydisp.createButton(1, "Images/IMG_0001.BMP", "Images/IMG_0002.BMP", 100, 270);
mydisp.createButton(2, "Images/IMG_0001.BMP", "Images/IMG_0002.BMP", 190, 270);
//显示背景图片,我打算先把这个替换掉,0,0就是在屏上的位置从00开始
mydisp.drawImage("Images/IMG_LOGO.BMP", 0, 0);
//使能3个按键
mydisp.enableButton(0, true);
mydisp.enableButton(1, true);
mydisp.enableButton(2, true);
//擦除等会显示的图片的区域,做个准备,里面还需要指定擦的区域,不多讲了,比较简单
EraseImageBox();
7. 下面是loop函数,在里面检测那个按键按下,调用相应的处理函数,等会我要把3个图片替换掉
switch(mydisp.getButton()) {
case 0:
EraseImageBox();
mydisp.drawImage("Images/IMG_0010.BMP", 50, 20);
mydisp.setForeground(clrGreen);
mydisp.drawText("Image: IMG_0010.BMP", 20, 108);
break;
case 1:
EraseImageBox();
mydisp.drawImage("Images/IMG_0011.BMP", 30, 20);
mydisp.setForeground(clrGreen);
mydisp.drawText("Image: IMG_0011.BMP", 20, 108);
break;
case 2:
EraseImageBox();
mydisp.drawImage("Images/IMG_0100.BMP", 20, 20);
mydisp.setForeground(clrGreen);
mydisp.drawText("Image: IMG_0100.BMP", 20, 108);
break;
}
8. 准备好自己的图片,修改代码图片名字,和显示区域,把妹子美美哒的照片放上去,做3按键可以切换,我自己为了美观把3个按键的外形擦除了
但是实际3个按键还是存在的,按下的时候,有一个按键图片会显现。我放了3个图片,每按一个按键,照片会切换一个
9. 总的用起来,主要就是用MTDS这个类 的方法即可,算是很方便的。
10. 至此,这个项目我觉的已经完美结束了,但是真正的学习却刚刚开始,好了分享了这么好的一个经验,为啥大家不动起手来,给女朋友一个惊喜哩。
11. 分享一个朋友的淘宝店铺
IOT物联网火威宝山电子