NanoPi NEO PLUS2開発環境構築します

1はじめに

NanoPi NEO PLUS2電子は非常になめらかなオープンソースハードウェアを発売友好的である、オープンソースハードウェアのCPUは64ビットのクワッドコアのARMのCortex-A53プロセッサH5 Allwinner会社に基づいて、および6核Mail450 GPU、オープンソースのハードウェアを内蔵しています統合1ギガバイトDDR3メモリ、高速標準8ギガバイトのeMMCフラッシュメモリ、無線LANイーサネットインターフェイスオンボードBluetoothモジュール、及びMICO SDカードから実行を開始するシステムのためのサポート。

オープンソースハードウェアの詳細については、以下のリンクを参照してください可能性があります。

http://www.arm9.net/nanopi-neo-plus2.asp

そして、一部のボード・レイアウト図およびインターフェースの概略図を楽しみます:

 

次のピン・インターフェース・マップは、次のとおりです。

 

よりNanoPi NEO PLUS2オープンソースハードウェアの情報は、公式Wikiページビューに移動することができます。

 

2、Linuxのシステムプログラミング

まず、高速TFカードとカードリーダーを調製、ならびに開発ボード電源アダプタへの電力供給は、5V / 2A出力を必要とし、その後、公式ファームウェアは内部TFカードにプログラムされるか、二つがあります次のような方法があります:

(1)Windowsでのプログラミングツールを使用します

Windowsプログラミングツールでは、Win32のディスクイメージャー・ソフトウェア・プログラミングを使用することができ、最初の公式友好や、ファームウェアとして、それを解凍し、優れたファームウェアを提供する準備ができて:

nanopi-neo-plus2_sd_friendlycore-xenial_4.14_arm64_20190918.img.zip

上記の文書は、ファームウェアはLinuxの-4.14カーネル、解凍後のファームウェア、オープンソフトウェアプログラミングに基づいて、システムファームウェアを構築するためにUbuntuのコアに基づいています。

良いTFカード上のソフトウェアでドライブ文字を選択し、ファームウェアのプログラミングを選択し、Writeボタンプログラミングをクリックします。

 

次のように成功したプログラミングした後です。

 

 

(2)LinuxシステムのコマンドDD

まず、Linuxターミナルの下の画像を抽出します。

$の解凍 nanopi-ネオplus2_sd_friendlycore-xenial_4.14_arm64_20190918.img。ジップ

デバイスがマウントされているかを確認するためにdfコマンドを使用して、LinuxシステムへのTFカード:

$ DF -h

 

したがって、TFカード挿入デバイス名は/ dev / sdc1など、唯一つのパーティションには、画像を書き込む防ぐために、読み取りまたは書き込み、それをアンインストールする機器をマウントする必要が他のです。

$ umountのは/ dev / sdc1から

そして、ミラーを書き込むためにddコマンドを使用します。

$ sudoの DD BS = 4M の場合 = nanopi-ネオplus2_sd_friendlycore-xenial_4.14_arm64_20190918.img \ 
=は/ dev / sdcのの

どのブロックサイズのブロック、BS略称上記のライトコマンドのBS、デバイスのパラメータが書き込まれた後パラメータは、ミラーの背後のパスである場合。

プログラミングは、ブートパーティション、およびルートファイルシステムパーティションを作成、パーティション完了すると、以下のように:

 

最後に、TFカードがシステムに開発ボードのパワー・ログイン、シリアルポートターミナルソフトウェアを開いて、接続するためにMICO SDカードインタフェース、USB - シリアルツール開発ボードデバッグシリアルポートとPCのUSBインタフェースのNanoPi NEO PLUS2に挿入されています。

次のように記号が示されています:

 

システムへのログインが成功した後、これは小さなおもちゃの開発することができます。

 

3、開発環境を構築します

(1)インストールクロスコンパイラツールチェーン

公式のアドレスの最初のクロスコンパイラツールチェーンをダウンロードし、コンパイラを抽出します。

$ ます。mkdir〜/ FriendlyARM /ツールチェーン- のp 
$のMVの gccの -linaro- 6.31 - 2017.02 -x86_64_aarch64-のlinux-gnuの。tarは .xz〜/ FriendlyARM /ツールチェーン/ 
$ CD〜/ FriendlyARM / ツールチェイン
の$ タール -xf gccの -linaro- 6.31 - 2017.02 -x86_64_aarch64-のlinux-gnuの。タール .xz

ユーザーの環境変数へのクロスコンパイラツールチェーンのパス:

$ VIM〜/ .bashrcに

ファイルに次の行を追加します。

 

すぐに効果を取るために、環境変数をできるように、次のコマンドを使用します。

$元〜/ .bashrcに

最後に、インストールが成功したかどうか確認し、クロスコンパイラツールチェーンのバージョンを参照してください。

$ - - linuxのAarch64 gnu- のgcc -vを

次の出力は、インストールは成功です。

 

(2)U-ブートをコンパイルします

上記では、それはクロスコンパイラツールチェーンをインストールした後、単にU-ブートをコンパイルする方法について説明します。

依存して、いくつかのソフトウェアをインストールします。

$ sudoの apt-getのインストールのSWIGのpython-devののpython3-devのデバイスツリーコンパイラを

U-bootソースダウンロードのGitの使用とそれに対応するブランチに切り替えます:

$ gitのクローン[email protected]:Cqlismy / U-boot.git -b sunxi-v2017.x --depth 1

私は、U-bootソースコードをコンパイルし始めました。

$のCDのU-ブート/ 
$ 作る nanopi_h5_defconfig CROSS_COMPILE = aarch64-linuxの-gnu- 
$ 作る CROSS_COMPILE = aarch64-linuxの-gnu-

次のようにコンパイル後の出力結果は、次のとおりです。

 

次のようにU-bootソースでは、TFカードを更新するためにDDのu-bootコマンドを使用して、ソース・ファイル内のu-boot.itbルートディレクトリを生成するために必要なファイルディレクトリSPL sunxi-spl.binを生成します。

LinuxシステムへのTFカードの後、次のコマンドを実行します。

$のCD U- ブート
の$ DD  の場合 =は/ dev / sdXにBS =の= SPL / sunxi-spl.bin 1024模索= 8 
$ DD  の場合 =は/ dev / sdXにBS =の= U-boot.itb 1024模索= 40

TFカード上のブートパーティション用の/ dev / sdXにのために。

(3)カーネルをコンパイルします。

まず、Linuxカーネルのソースをダウンロードし、対応するブランチに切り替わり:

$ gitのクローン[email protected]:Cqlismy / linux.git -b sunxi- 4.14 .Y --depth 1

次に、カーネルソースをコンパイルを開始:

$のCDのLinux / 
$のタッチ.scmversionの
$のメイク sunxi_arm64_defconfig ARCH =アームCROSS_COMPILE = aarch64-linuxの-gnu- 
$ 作る ARCH = arm64 CROSS_COMPILE = aarch64-linuxの-gnu-

次のようにコンパイルが成功した後、次のとおりです。

 

画像は、アーチ/ arm64 / bootディレクトリのソースコード内の必要な画像ファイルを生成するアーチ/ arm64 /ブーツ/ DTS / allwinnerディレクトリ内DTBファイルを生成します。

ブートパーティションのTFカードは/メディア/ SD /ブーツに取り付けられ、イメージファイルやデバイスツリーを更新するには、次のコマンドを使用することができますと仮定します。

$には、CDのlinux 
$ CPアーチ/ arm64 /ブーツ/画像/メディア/ SD / ブート
の$ CPアーチ/ arm64 /ブーツ/ DTS / allwinner / sun50i-H5-nanopi * .dtb /メディア/ SD /ブーツ

あなたは、ドライバモジュールをコンパイルして更新する場合は、次のコマンドを使用することができます。

$ CDでlinux 
の$ makeが ARCH = arm64 CROSS_COMPILE = aarch64-linuxの-gnu-モジュール

TFカードrootfsのパーティションは、rootfsのモジュールを駆動更新するために、以下のコマンドを使用して、/メディア/ SD / rootfsのに装着時:

$ 作る modules_install INSTALL_MOD_PATH = /メディア/ SD / rootfsのARCH = arm64 \ 
CROSS_COMPILE = aarch64-linuxの-gnu-

 

4、サブセクション

本論文では、簡単にNanoPi NEO PLUS2このオープンソースハードウェアだけでなく、開発環境の一部を構築するために、小さなおもちゃの開発の前に簡単な紹介を紹介します。

おすすめ

転載: www.cnblogs.com/Cqlismy/p/11600837.html