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

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

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

【米爾MYD-J1028X開發(fā)板試用體驗(yàn)】開發(fā)環(huán)境體驗(yàn)之python開發(fā)2048小游戲

開發(fā)板試用精選 ? 來源:開發(fā)板試用 ? 作者:電子發(fā)燒友論壇 ? 2022-10-26 11:22 ? 次閱讀

本文來源電子發(fā)燒友社區(qū),作者:李先生, 帖子地址:https://bbs.elecfans.com/jishu_2300837_1_1.html


前言

板子本身安裝了python開發(fā)環(huán)境

使用以下指令查看版本

python --version

root@localhost:~# python --version

Python 3.6.9

配置SSH登錄

電腦和開發(fā)板使用以太網(wǎng)連接。這里使用J5的網(wǎng)口對(duì)應(yīng)eno0.

電腦設(shè)置對(duì)應(yīng)網(wǎng)卡的IP。我這里是192.168.137.1。
image.png

串口登錄開發(fā)板

設(shè)置開發(fā)板IP為192.168.137.2.

ifconfig eno0 192.168.137.2

電腦ping開發(fā)板,開發(fā)板ping電腦。

雙向能ping通。如果不能ping通關(guān)閉電腦的防火墻。
image.png

vi /etc/ssh/sshd_config

添加一行PermitRootLogin yes

允許ssh root用戶登錄,否則ssh不能以root用戶登錄。

使用crt ssh登錄
image.png

image.png

輸入密碼root
image.png

ftp傳文件

右鍵點(diǎn)擊ssh的窗口,點(diǎn)擊連接SFTP標(biāo)簽

image.png

lls查看本地目錄

lcd跳轉(zhuǎn)本地目錄

ls查看遠(yuǎn)程開飯啊目錄

cd跳轉(zhuǎn)遠(yuǎn)程開發(fā)板目錄

put 發(fā)送文件到開發(fā)板

get獲取開發(fā)板的文件到本地

binary 二進(jìn)制方式船速和文件推薦使用

Python開發(fā)體驗(yàn) 2048小游戲

將以下2048.py文件導(dǎo)入到開發(fā)板

# -*- coding:UTF-8 -*-

#!/usr/bin/python2

 

import random

import os, sys

 

v = [[0, 0, 0, 0],

     [0, 0, 0, 0],

     [0, 0, 0, 0],

     [0, 0, 0, 0]]

 

def display(v, score):

    print ("%4d %4d %4d %4d"    %   (v[0][0], v[0][1], v[0][2], v[0][3]))

    print ("%4d %4d %4d %4d"    %   (v[1][0], v[1][1], v[1][2], v[1][3]))

    print ("%4d %4d %4d %4d"    %   (v[2][0], v[2][1], v[2][2], v[2][3]))

    print ("%4d %4d %4d %4d"    %   (v[3][0], v[3][1], v[3][2], v[3][3]))

    print ("Total score: %d" % score)

 

def init(v):

    for i in range(4):

        v[i] = [random.choice([0, 0, 0, 2, 2, 4]) for x in range(4)]

 

def align(vList, direction):

    for i in range(vList.count(0)):

        vList.remove(0)

    zeros = [0 for x in range(4 - len(vList))]

    if direction == 'left':

        vList.extend(zeros)

    else:

        vList[:0] = zeros

 

def addSame(vList, direction):

    score = 0

    if direction == 'left':

        for i in [0, 1, 2]:

            align(vList, direction)

            if vList[i] == vList[i+1] != 0:

                vList[i] *= 2

                vList[i+1] = 0

                score += vList[i]

                return {'bool':True, 'score':score}

    else:

        for i in [3, 2, 1]:

            align(vList, direction)

            if vList[i] == vList[i-1] != 0:

                vList[i] *= 2

                vList[i-1] = 0

                score += vList[i]

                return {'bool':True, 'score':score}

    return {'bool':False, 'score':score}

 

def handle(vList, direction):

    totalScore = 0

    align(vList, direction)

    result = addSame(vList, direction)

    while result['bool'] == True:

        totalScore += result['score']

        align(vList, direction)

        result = addSame(vList, direction)

    return totalScore

 

def operation(v):

    totalScore = 0

    gameOver = False

    direction = 'left'

    op = input('operator:')

    if op in ['a','A']:

        direction = 'left'

        for row in range(4):

            totalScore += handle(v[row], direction)

    elif op in ['d','D']:

        direction = 'right'

        for row in range(4):

            totalScore += handle(v[row], direction)

    elif op in ['w', 'W']:

        direction = 'left'

        for col in range(4):

            vList = [v[row][col] for row in range(4)]

            totalScore += handle(vList, direction)

            for row in range(4):

                v[row][col] = vList[row]

    elif op in ['s', 'S']:

        direction = 'right'

        for col in range(4):

            vList = [v[row][col] for row in range(4)]

            totalScore += handle(vList, direction)

            for row in range(4):

                v[row][col] = vList[row]

    else:

        print ("Invalid input,please enter a charactor in [W,S,A,D] or the lower")

        gameOver = True

        return {'gameOver':gameOver,'score':totalScore}

 

    N = 0

    for q in v:

        N += q.count(0)

 

    if N == 0:

        gameOver = True

        return {'gameover':gameOver,'score':totalScore}

 

    num = random.choice([2,2,2,4])

    k = random.randrange(1, N+1)

    n = 0

 

    for i in range(4):

        for j in range(4):

            if v[i][j] == 0:

                n += 1

                if n == k:

                    v[i][j] = num

                    break

 

    return {'gameOver':gameOver, 'score':totalScore}

 

init(v)

score = 0

print ("Input:W(Up) S(Down) A(Left) D(Right), press .")

while True:

    os.system("clear")

    display(v, score)

    result = operation(v)

    print (result)

    if result['gameOver'] == True:

        print ("Game Over, You failed!")

        print ("Your total score %d" % (score))

        sys.exit(1)

    else:

        score += result['score']

        if score >= 2048:

            print ("Game Over, You Win!!!")

            print ("Your total score: %d" % (score))

            sys.exit(0)

put 2048.py

python 2048.py運(yùn)行

w s a d回車控制上下左右移動(dòng)的方向

image.png

總結(jié)

可以看到使用使用python進(jìn)行腳本開發(fā)非常便捷。

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

    關(guān)注

    5

    文章

    227

    瀏覽量

    20989
  • MYD-J1028X
    +關(guān)注

    關(guān)注

    1

    文章

    16

    瀏覽量

    283
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    有獎(jiǎng)丨米爾 全志T536開發(fā)板免費(fèi)試用

    米爾與全志合作發(fā)布的新品基于全志T536應(yīng)用處理器的MYD-LT536-GK開發(fā)板免費(fèi)試用活動(dòng)來啦~~米爾提供了3塊價(jià)值750元的
    的頭像 發(fā)表于 12-26 08:05 ?131次閱讀
    有獎(jiǎng)丨<b class='flag-5'>米爾</b> 全志T536<b class='flag-5'>開發(fā)板</b>免費(fèi)<b class='flag-5'>試用</b>

    人臉疲勞檢測(cè)應(yīng)用-米爾基于RK3576核心/開發(fā)板

    本文將介紹基于米爾電子MYD-LR3576開發(fā)板米爾基于瑞芯微RK3576開發(fā)板)的人臉疲勞檢測(cè)方案測(cè)試。
    的頭像 發(fā)表于 12-20 08:06 ?274次閱讀
    人臉疲勞檢測(cè)應(yīng)用-<b class='flag-5'>米爾</b>基于RK3576核心<b class='flag-5'>板</b>/<b class='flag-5'>開發(fā)板</b>

    如何用OpenCV進(jìn)行手勢(shì)識(shí)別--基于米爾全志T527開發(fā)板

    本文將介紹基于米爾電子MYD-LT527開發(fā)板米爾基于全志T527開發(fā)板)的OpenCV手勢(shì)識(shí)別方案測(cè)試。摘自優(yōu)秀創(chuàng)作者-小火苗
    的頭像 發(fā)表于 12-13 08:04 ?735次閱讀
    如何用OpenCV進(jìn)行手勢(shì)識(shí)別--基于<b class='flag-5'>米爾</b>全志T527<b class='flag-5'>開發(fā)板</b>

    米爾-Xilinx XC7A100T FPGA開發(fā)板試用】測(cè)試一

    感謝米爾電子和電子發(fā)燒友提供的米爾-Xilinx XC7A100T FPGA開發(fā)板MYD-J7A100T用的 FPGA 為 XILINX 公司 ARTIX-7 系列的 XC 7A1
    發(fā)表于 12-08 08:48

    FacenetPytorch人臉識(shí)別方案--基于米爾全志T527開發(fā)板

    本篇測(cè)評(píng)由電子工程世界的優(yōu)秀測(cè)評(píng)者“小火苗”提供。本文將介紹基于米爾電子MYD-LT527開發(fā)板米爾基于全志T527開發(fā)板)的Facene
    的頭像 發(fā)表于 11-28 15:12 ?341次閱讀
    FacenetPytorch人臉識(shí)別方案--基于<b class='flag-5'>米爾</b>全志T527<b class='flag-5'>開發(fā)板</b>

    追加名額丨米爾瑞芯微RK3576開發(fā)板有獎(jiǎng)試用

    米爾與瑞芯微合作發(fā)布的新品基于瑞芯微RK3576應(yīng)用處理器的MYD-LR3576開發(fā)板免費(fèi)試用活動(dòng)加碼啦~~米爾追加了2塊價(jià)值849元的
    的頭像 發(fā)表于 11-22 01:00 ?207次閱讀
    追加名額丨<b class='flag-5'>米爾</b>瑞芯微RK3576<b class='flag-5'>開發(fā)板</b>有獎(jiǎng)<b class='flag-5'>試用</b>

    米爾-Xilinx XC7A100T FPGA開發(fā)板試用】+01.開箱(zmj)

    米爾-Xilinx XC7A100T FPGA開發(fā)板試用】+01.開箱(zmj) 1.感謝 感謝米爾電子和電子發(fā)燒友提供的此次試用機(jī)會(huì),可
    發(fā)表于 11-12 15:45

    有獎(jiǎng)丨米爾 瑞芯微RK3576開發(fā)板免費(fèi)試用

    米爾與瑞芯微合作發(fā)布的新品基于瑞芯微RK3576應(yīng)用處理器的MYD-LR3576開發(fā)板免費(fèi)試用活動(dòng)來啦~~米爾提供了7塊價(jià)值849元的
    的頭像 發(fā)表于 11-12 01:00 ?343次閱讀
    有獎(jiǎng)丨<b class='flag-5'>米爾</b> 瑞芯微RK3576<b class='flag-5'>開發(fā)板</b>免費(fèi)<b class='flag-5'>試用</b>

    基于OPENCV的相機(jī)捕捉視頻進(jìn)行人臉檢測(cè)--米爾NXP i.MX93開發(fā)板

    本文將介紹基于米爾電子MYD-LMX93開發(fā)板米爾基于NXPi.MX93開發(fā)板)的基于OpenCV的人臉檢測(cè)方案測(cè)試。OpenCV提供了一
    的頭像 發(fā)表于 11-07 09:03 ?1117次閱讀
    基于OPENCV的相機(jī)捕捉視頻進(jìn)行人臉檢測(cè)--<b class='flag-5'>米爾</b>NXP i.MX93<b class='flag-5'>開發(fā)板</b>

    米爾基于NXP iMX.93開發(fā)板的M33處理器應(yīng)用開發(fā)筆記

    資源MYD-LMX9X開發(fā)板米爾基于NXPiMX.93開發(fā)板)3.軟件資源Windows7及以上版本軟件:IAREmbeddedWorkbench4.板載固件調(diào)試
    的頭像 發(fā)表于 06-29 08:01 ?1395次閱讀
    <b class='flag-5'>米爾</b>基于NXP iMX.93<b class='flag-5'>開發(fā)板</b>的M33處理器應(yīng)用<b class='flag-5'>開發(fā)</b>筆記

    點(diǎn)擊參與米爾NXP i.MX 93開發(fā)板有獎(jiǎng)試用

    米爾與NXP合作發(fā)布的新品基于NXPi.MX93應(yīng)用處理器的MYD-LMX9X開發(fā)板免費(fèi)試用活動(dòng)來啦~~米爾提供了3塊價(jià)值678元的
    的頭像 發(fā)表于 06-13 08:02 ?559次閱讀
    點(diǎn)擊參與<b class='flag-5'>米爾</b>NXP i.MX 93<b class='flag-5'>開發(fā)板</b>有獎(jiǎng)<b class='flag-5'>試用</b>

    米爾NXP i.MX 93開發(fā)板的Qt開發(fā)指南

    1.概述Qt是一個(gè)跨平臺(tái)的圖形應(yīng)用開發(fā)框架,被應(yīng)用在不同尺寸設(shè)備和平臺(tái)上,同時(shí)提供不同版權(quán)版本供用戶選擇。米爾NXPi.MX93開發(fā)板MYD-LMX9X
    的頭像 發(fā)表于 06-07 08:01 ?1759次閱讀
    <b class='flag-5'>米爾</b>NXP i.MX 93<b class='flag-5'>開發(fā)板</b>的Qt<b class='flag-5'>開發(fā)</b>指南

    免費(fèi)!NXP i.MX 93開發(fā)板有獎(jiǎng)試用

    米爾與NXP合作發(fā)布的新品基于NXPi.MX93應(yīng)用處理器的MYD-LMX9X開發(fā)板免費(fèi)試用活動(dòng)來啦~~米爾提供了2塊價(jià)值678
    的頭像 發(fā)表于 05-23 08:01 ?743次閱讀
    免費(fèi)!NXP i.MX 93<b class='flag-5'>開發(fā)板</b>有獎(jiǎng)<b class='flag-5'>試用</b>

    米爾-全志T113-i開發(fā)板試用米爾-全志T113-i開發(fā)環(huán)境搭建

    PermitRootLogin yes內(nèi)容,允許root賬號(hào)SSH登錄。 然后再PC側(cè)通過SSH客戶端登錄開發(fā)板。 四、hellworld測(cè)試 至此,初步完成米爾-全志T113-i開發(fā)板開發(fā)
    發(fā)表于 03-01 21:43

    ROS系統(tǒng)的智能車開發(fā)-基于米爾芯馳MYD-JD9X開發(fā)板

    本篇測(cè)評(píng)由電子工程世界的優(yōu)秀測(cè)評(píng)者“mameng”提供。本文將介紹基于米爾電子MYD-JD9X開發(fā)板的ROS系統(tǒng)智能車開發(fā)。目前實(shí)現(xiàn)ROS的方式主要有兩種:Ubuntu系統(tǒng)+ROS;U
    的頭像 發(fā)表于 01-26 08:01 ?951次閱讀
    ROS系統(tǒng)的智能車<b class='flag-5'>開發(fā)</b>-基于<b class='flag-5'>米爾</b>芯馳<b class='flag-5'>MYD-JD9X</b><b class='flag-5'>開發(fā)板</b>