久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
基于ARM平臺(tái)的鋼琴游戲 實(shí)現(xiàn)琴鍵按下效果
[打印本頁(yè)]
作者:
why684700
時(shí)間:
2017-7-25 15:29
標(biāo)題:
基于ARM平臺(tái)的鋼琴游戲 實(shí)現(xiàn)琴鍵按下效果
效果文件都在文件里,可以下載看看。很全,有興趣就了解下。。
本階段任務(wù)與步驟
================
1,設(shè)置好共享文件夾
2,編譯這些代碼:
make
3,將編譯好的示例程序piano丟到開(kāi)發(fā)板,觀察運(yùn)行效果
注意:要將所有的bmp文件也要上傳到開(kāi)發(fā)板(已經(jīng)上傳過(guò)了就不用重復(fù)上傳了)
4,修改piano.c,使得鋼琴12個(gè)琴鍵均能按下去。
0.png
(47.88 KB, 下載次數(shù): 173)
下載附件
2017-7-25 16:55 上傳
單片機(jī)源程序如下:
/***********************************************
//
// Copyright(C), 2013-2016, GEC Tech. Co., Ltd.
//
// 作者: 林世霖
// 微信公眾號(hào):秘籍酷
// 日期: 2016-6
//
// 描述: 在LCD上顯示音樂(lè)鋼琴的界面
//
// GitHub: github.com/vincent040
// Bug Report: 2437231462@qq.com
//
***********************************************/
#include <stdio.h>
#include <signal.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <syslog.h>
#include <errno.h>
#include <linux/input.h>
#include <fcntl.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/mman.h>
#include <stdbool.h>
#include <linux/fb.h>
#include <sys/mman.h>
#include <sys/ioctl.h>
#include "bmp.h"
#include "ts.h"
int main(int argc, char const *argv[])
{
// 1,打開(kāi)LCD設(shè)備
int lcd = open("/dev/fb0", O_RDWR);
// 2,獲取LCD設(shè)備的參數(shù)
struct fb_var_screeninfo vinfo;
ioctl(lcd, FBIOGET_VSCREENINFO, &vinfo);
// 3,為該LCD設(shè)備映射顯存
unsigned char *FB;
FB = mmap(NULL, vinfo.xres * vinfo.yres * vinfo.bits_per_pixel/8,
PROT_READ|PROT_WRITE, MAP_SHARED, lcd, 0);
// 4,顯示整個(gè)鋼琴的界面
// 4.1 顯示背景(background.bmp)
bmp2lcd("background.bmp", FB, &vinfo, 0, 0);
// 4.2 顯示標(biāo)題欄(bar.bmp)
bmp2lcd("bar.bmp", FB, &vinfo, 0, 0);
// 4.3 顯示12個(gè)琴鍵(bar.bmp)
int i;
for(i=0; i<12; i++)
{
bmp2lcd("key_off.bmp", FB, &vinfo, 10+65*i, 47);
}
// 4.4 顯示LOGO(logo.bmp)
bmp2lcd("logo.bmp", FB, &vinfo, 214, 355);
// 5,打開(kāi)觸摸屏設(shè)備,開(kāi)始音樂(lè)鋼琴
int ts = open("/dev/event0", O_RDWR);
struct coordinate coor;
while(1)
{
// 5.1 等待手指觸碰,并順便獲取觸碰點(diǎn)坐標(biāo)(coor.x和coor.y)
wait4touch(ts, &coor);
// 5.2 根據(jù)coor的坐標(biāo)信息來(lái)更新琴鍵的狀態(tài)
bmp2lcd("key_on.bmp", FB, &vinfo,(coor.x-10)/65*65+10, 47);
// 5.3 根據(jù)coor的坐標(biāo)信息播放相應(yīng)的琴鍵聲音(暫時(shí)不做)
// 5.4 等待手指的松開(kāi)
wait4leave(ts);
// 5.5 將相應(yīng)的琴鍵恢復(fù)彈起的狀態(tài)
bmp2lcd("key_off.bmp", FB, &vinfo,(coor.x-10)/65*65+10, 47);
}
return 0;
}
// int ts = open("/dev/event0", O_RDWR);
// struct coordinate coor;
// while(1)
// {
// // 5.1 等待手指觸碰,并順便獲取觸碰點(diǎn)坐標(biāo)(coor.x和coor.y)
……………………
…………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
06實(shí)現(xiàn)琴鍵按下效果.rar
(10.25 KB, 下載次數(shù): 38)
2017-7-25 15:28 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
作者:
zzjay
時(shí)間:
2019-7-4 13:00
最好把仿真文件,程序文件都上傳,文檔中寫(xiě)的都不全
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
伊人久久av
|
色婷婷18
|
久久久久国产精品夜夜夜夜夜
|
日韩三级一区
|
成人福利在线观看
|
亚洲欧美日韩色图
|
日本精品在线视频
|
成人av播放
|
日韩黄色大片
|
日本不卡视频在线观看
|
成人三级在线观看
|
亚洲精品久久久久久久久
|
91精品在线播放
|
a级片在线免费观看
|
涩涩久久
|
久久久国产视频
|
国产片一区二区
|
色综合视频在线观看
|
四川一级毛毛片
|
国产91精品在线观看
|
91福利网
|
国产中文一区
|
欧美视频在线观看一区
|
国产一区二区网站
|
日本免费在线
|
日韩综合久久
|
午夜av福利
|
中文字幕在线不卡
|
久久久精品一区二区
|
一级片在线免费观看
|
在线中文字幕网站
|
欧美在线视频免费
|
黄色三级av
|
性色av网站
|
毛片毛片毛片毛片毛片毛片
|
国产成人在线免费观看
|
www久久
|
国产91在线播放
|
日本欧美久久久久免费播放网
|
伊人影院久久
|
天天曰天天操
|