0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于嵌入式linux開發(fā)板的貪吃蛇游戲運(yùn)行

AGk5_ZLG_zhiyua ? 來源:未知 ? 作者:工程師曾玲 ? 2018-09-23 14:08 ? 次閱讀

本文導(dǎo)讀

如何在嵌入式linux開發(fā)板上運(yùn)行貪吃蛇游戲呢?本文以EasyARM-i.MX283A為硬件載體,簡述其運(yùn)行貪吃蛇小游戲的方法及步驟。

1

原料準(zhǔn)備

硬件方面

使用ZLG致遠(yuǎn)電子提供的EasyARM開源套件。EasyARM-i.MX283A采用NXP的ARM9核心,運(yùn)行專為嵌入式linux產(chǎn)品裁剪的uboot、kernel及rootfs,其豐富的外設(shè)資源及完善的驅(qū)動(dòng)支持為日常學(xué)習(xí)及項(xiàng)目評估提供堅(jiān)實(shí)基礎(chǔ)。該板默認(rèn)支持TFT-4.3液晶顯示屏,搭配USB串口線、網(wǎng)線等必要配件即可快速上手。

ZLG致遠(yuǎn)電子EasyARM-i.MX283A開源套件

軟件方面

使用linux宿主機(jī)。嵌入式linux的開發(fā)大多使用ubuntu系統(tǒng),可以從 Ubuntu 官網(wǎng)下載的 ISO 鏡像,安裝后得到純凈的 Ubuntu,再搭建嵌入式linux開發(fā)環(huán)境。建議使用ZLG致遠(yuǎn)電子官網(wǎng)提供的Ubuntu系統(tǒng),該系統(tǒng)已經(jīng)安裝了完整的嵌入式 Linux 開發(fā)環(huán)境。

Ubuntu開發(fā)環(huán)境

2

環(huán)境搭建

宿主機(jī)方面

需要在VMware下運(yùn)行ubuntu系統(tǒng),并且正確安裝linux-arm交叉工具鏈及qt-sdk。

交叉工具安裝比較簡單,將EasyARM-i.MX283A資料中的“gcc-4.4.4-glibc-2.11.1-multilib-1.0_EasyARM-iMX283.tar”解壓到ubuntu的/opt(或其他)目錄下,再在“profile”或“bashrc”中export即可。若在任意shell中輸入“arm-none”,按TAB鍵后可自動(dòng)補(bǔ)全下圖“arm-none-linux-gnueabi-”則證明工具鏈安裝成功。

安裝交叉編譯器

安裝qt-sdk的主要目的是獲取QT庫及qmake工具。在ubuntu聯(lián)網(wǎng)的情況下使用命令“sudo apt-get install qt-sdk”獲取并安裝qt-sdk,若失敗請先執(zhí)行“sudo apt-get update”更新源。安裝成功后,會(huì)在/usr/bin/目錄下產(chǎn)生兩個(gè)可執(zhí)行文件 qmake 和 qmake-qt4,如下圖。分別打印信息可知qmake是嵌入式版本的指令,qmake-qt4是桌面版本的指令。

安裝qmake

目標(biāo)機(jī)方面

EasyARM-i.MX283A需要執(zhí)行的操作較少,需要的qt庫已經(jīng)交叉編譯后移植上去,我們需要關(guān)注的主要是使用SSH工具登錄到開發(fā)板上,并于宿主機(jī)通過NFS建立文件共享,以便將編譯好的可執(zhí)行文件拷貝到開發(fā)板。當(dāng)然,使用U盤或者SD卡拷貝也行,只不過頻繁的插拔、掛載操作顯得特別麻煩。

宿主機(jī)目標(biāo)板間的文件拷貝

3

測試源碼

本文的重點(diǎn)在于體驗(yàn)嵌入式linux平臺(tái)下的游戲運(yùn)行,代碼的書寫不是今天的重點(diǎn)呦。So,筆者決定尋求“某度”幫助。在某論壇下載到源碼,我們先測試下是否報(bào)錯(cuò)。下載得到的源碼如下圖。

貪吃蛇源碼

在源碼目錄下執(zhí)行“qmake-qt4 -project”生成qt工程,再執(zhí)行“qmake-qt4”編譯工程得到Makefile文件,最后執(zhí)行“make”命令得到可執(zhí)行文件。

編譯貪吃蛇

這個(gè)snake-demo可執(zhí)行程序就是我們要得結(jié)果了,執(zhí)行它游戲?qū)㈤_始運(yùn)行。

運(yùn)行貪吃蛇

4

編譯ARM版本

測試源碼沒有報(bào)錯(cuò),下面進(jìn)行ARM版本的編譯。前面我們提到,qmake-qt4是桌面版的qmake工具,qmake是ARM版本的qmake工具,因此本次使用qmake在源碼目錄重復(fù)第3小節(jié)的編譯步驟。得到的文件看起來和原來沒什么區(qū)別,執(zhí)行“./snake-demo”會(huì)提示“無法執(zhí)行二進(jìn)制文件”,通過兩者的Makefile文件和“file”命令的查看,通過對比確認(rèn)此時(shí)的snake-demo就是我們需要的,詳情見下圖。

qmake-qt4與qmake執(zhí)行對比

將此文件拷貝到開發(fā)板上并執(zhí)行。是不是有哪里不對勁?沒錯(cuò),中文無法顯示。

EasyARM-i.MX283A的QT庫默認(rèn)不支持中文,需要給它更新個(gè)中文字庫。

缺少中文庫

網(wǎng)絡(luò)上下載ttf格式的中文字庫,拷貝到開發(fā)板的/opt目錄下。“QT_QWS_FONTDIR”環(huán)境變量為qt應(yīng)用程序提供字庫尋找路徑,更新它。在shell下執(zhí)行“export QT_QWS_FONTDIR=/opt”,并在程序執(zhí)行是添加執(zhí)行參數(shù)指定字庫名“./snake-demo -qws -font wqy-microhei”。OK,點(diǎn)擊觸摸屏操作小小貪吃蛇吧!

添加中文支持

5

結(jié)語

EasyARM-i.MX28x系列開源套件在致遠(yuǎn)電子淘寶官方店有售,若您準(zhǔn)備用作實(shí)際項(xiàng)目開發(fā),強(qiáng)烈建議您選用工業(yè)級EPC系列ARM板。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5082

    文章

    19123

    瀏覽量

    305143
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11304

    瀏覽量

    209475

原文標(biāo)題:“貪吃蛇”帶你玩轉(zhuǎn)linux

文章出處:【微信號(hào):ZLG_zhiyuan,微信公眾號(hào):ZLG致遠(yuǎn)電子】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    貪吃蛇游戲

    編的簡單的貪吃蛇游戲
    發(fā)表于 05-05 16:40

    用超核開發(fā)板寫的貪吃蛇

    `好久之前買的超核k60開發(fā)板,寫的貪吃蛇`
    發(fā)表于 01-21 16:11

    貪吃蛇游戲

    貪吃蛇游戲的下載
    發(fā)表于 03-04 18:24

    貪吃蛇游戲的電路實(shí)現(xiàn)

    最近論壇好冷清,在此發(fā)一貼暖暖身,回到正題,大家都玩過“貪吃蛇游戲,用代碼實(shí)現(xiàn)該游戲想必難不倒大神,在網(wǎng)上也有一大堆針對該游戲的代碼實(shí)現(xiàn),如果擺脫代碼,用硬件來實(shí)現(xiàn)“
    發(fā)表于 11-19 17:52

    貪吃蛇游戲

    Labview制作貪吃蛇游戲,值得學(xué)習(xí)研究
    發(fā)表于 09-07 21:39

    【FPGA DEMO】Lab 9:貪吃蛇游戲

    基于Perf-V開發(fā)板,實(shí)現(xiàn)貪吃蛇游戲的設(shè)計(jì)。實(shí)驗(yàn)中用開發(fā)板上key1-key4按鍵來控制小蛇的移動(dòng),VGA設(shè)計(jì)該游戲的界面?;静襟E如上
    發(fā)表于 07-30 15:53

    基于arm的嵌入式LCD顯示屏貪吃蛇游戲

    基于arm的嵌入式LCD顯示屏貪吃蛇游戲開始界面選擇挑戰(zhàn)模式,隨機(jī)產(chǎn)生目標(biāo)食物,觸摸顯示屏,控制身移動(dòng),吃到食物時(shí)身加長,分?jǐn)?shù)加一,達(dá)到
    發(fā)表于 11-08 07:09

    利用LED矩陣、 鍵盤編寫一個(gè)簡單的貪吃蛇游戲

    是進(jìn)一步熟練前面學(xué)過的知識(shí),體驗(yàn)嵌入式開發(fā)的過程。而且有了鍵盤和LED矩陣的驅(qū)動(dòng)、C語言貪吃蛇程序,任務(wù)的關(guān)鍵就是明確各個(gè)接口:1、嵌入式開發(fā)板的LED矩陣接口。2、嵌入式開發(fā)板的鍵盤
    發(fā)表于 12-15 09:20

    如何利用QT去制作一個(gè)貪吃蛇的小游戲

    如何利用QT去制作一個(gè)貪吃蛇的小游戲呢?并將其移植到嵌入式Linux平臺(tái)下呢?
    發(fā)表于 12-23 09:37

    基于stm32的貪吃蛇游戲的設(shè)計(jì)資料分享

    指南者開發(fā)板上,使其能在觸摸屏上顯示,并且添加了暫停/繼續(xù)的觸摸按鍵以及簡單的游戲結(jié)束顯示,大體再現(xiàn)了貪吃蛇這款小游戲。一、主要功能上圖是整個(gè)顯示屏的布局以及對應(yīng)功能。
    發(fā)表于 02-21 07:27

    貪吃蛇游戲設(shè)計(jì)貪吃蛇收尾基本完成

    電子發(fā)燒友網(wǎng)站提供《貪吃蛇游戲設(shè)計(jì)貪吃蛇收尾基本完成.rar》資料免費(fèi)下載
    發(fā)表于 03-24 23:06 ?4次下載

    貪吃蛇游戲java源代碼

    貪吃蛇游戲java源代碼
    發(fā)表于 12-27 17:56 ?9次下載

    基于LabVIEW的貪吃蛇游戲源代碼

    基于LabVIEW的貪吃蛇游戲源代碼
    發(fā)表于 04-22 09:27 ?74次下載

    嵌入式貪吃蛇

    基于arm的嵌入式LCD顯示屏貪吃蛇游戲開始界面選擇挑戰(zhàn)模式,隨機(jī)產(chǎn)生目標(biāo)食物,觸摸顯示屏,控制身移動(dòng),吃到食物時(shí)身加長,分?jǐn)?shù)加一,達(dá)到
    發(fā)表于 11-03 13:51 ?10次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>貪吃蛇</b>

    基于stm32的貪吃蛇游戲

    野火指南者開發(fā)板上,使其能在觸摸屏上顯示,并且添加了暫停/繼續(xù)的觸摸按鍵以及簡單的游戲結(jié)束顯示,大體再現(xiàn)了貪吃蛇這款小游戲。一、主要功能上圖是整個(gè)顯示屏的布局以及對應(yīng)功能。
    發(fā)表于 12-24 19:32 ?21次下載
    基于stm32的<b class='flag-5'>貪吃蛇</b>小<b class='flag-5'>游戲</b>