Kali Linux(2)-Kali Linux NetHunterのインストール

久々にKali Linuxのサイトを訪れてみると、Kali Linux NetHunterというものがありました。気になったので、とりあえずインストールしてみます。

Kali Linux NetHunterをインストールするために、adbコマンドやfastbootコマンドを使用できるようにします。platform-toolsをインストールすると、adbコマンドやfastbootコマンドを使用できるようなります。私の場合は、Android Stduioを使用するので、Android Studioをインストールした時にインストールされています。AndoridStudioのインストール方法は下記を参照してください。

Android(1)-開発環境(AndroidStudio)の準備

Android Studioをインストールして、platform-toolsを追加した場合は、下記のフォルダにplatform-toolsがインストールされていると思います。

C:\Users\**********\AppData\Local\Android\Sdk\Platform-tools

platform-toolsを単体で使用したい場合は、下記からダウンロードしてインストールすることもできます。

https://developer.android.com/studio/releases/platform-tools

platform-toolsが準備できましたら、まずは、bootloaderを立ち上げます。PCとAndroid端末を接続した後に、コマンドプロンプトを管理者権限で実行して、下記のコマンドを入力します。するとbootloaderの画面がAndroid端末に表示されます。

Kali Linux(1)-Kali Linux のインストール

Kali Linuxは、ぺネストレーションテスト用の機能などが含まれているLinuxのディストリビューションです。ぺネストレーションテストは、システムに脆弱性がないかどうかをテストする方法です。Kali Linuxには、多くのぺネストレーション用のプログラムが最初からインストールされています。

Kali Linuxは下記のサイトからダウンロードできます。
https://www.kali.org/

Kali LinuxのISOイメージファイルファイルがダウンロードできましたら、ISOイメージファイルを選択して、右クリックメニューを表示します。右クリックメニューよりディスクイメージの書き込みを選択して、DVDに書き込みます。

DVDに書き込みが完了したら、PCを再起動してBIOSを起動させます。BIOSが起動できましたらDVDが始めに起動するように設定します。設定が完了したら、再起動します。

再起動するとKali Linuxのインストーラが書き込まれたDVDが起動してKali Linuxのインストール画面が表示されるので、Graphical Installを選択します。
Graphical Installを選択するとGUI画面でKali Linuxをインストールすることができます。後は、画面の指示に従ってインストールを行っていきます。

インストールが完了しましたら、再起動をします。ログインすると下記のようなデスクトップが開かれます。

RX(6)-DataFlashBGO

前回、RXマイコンを使用して、DataFlashにデータを保存する機能を構築しました。DataFlashへの保存をする時に、下記のようにコーディングしました。

err = R_FLASH_Write((uint32_t)&counter, FLASH_DF_BLOCK_0, FLASH_DF_MIN_PGM_SIZE);
if(err != FLASH_SUCCESS)
{
	while(1) ;
}

R_FLASH_Write関数を呼ぶと、書き込みが完了するまでは、復帰しません。ブロッキングモードに設定してあるためです。書き込みが完了するまで、待っていられない処理はもちろんあります。そのような時は、BGO (バックグラウンドオペレーション)モード(ノンブロッキングモード)を使用します。BGO モードを使用すると、API 関数は、処理を開始した直後に復帰します。そのため、書き込みを完了するまえに別の処理を行うことができます。

それでは、前回のプロジェクトを改良して、BGOモードでの動作にしたいと思います。前回の内容は下記のページに記載されています。

RX(5)-DataFlash

RX(5)-DataFlash

今回はRXマイコンを使用して、データを保存する機能を構築します。使用するマイコンは、「RX65N」になります。「Renesas Starter Kit+ for RX65N-2MB」評価ボードを使用します。統合開発環境を「e2studio」を使用します。

「Renesas Starter Kit+ for RX65N-2MB」には、LEDが4個搭載しています。「LED0(緑色)」はP73、「LED1(橙色)」はPG7、「LED2(赤色)」はPG6、「LED3(赤色)」はPG5を使用します。今回は、LED0~LED3を使用して、SWを押すたびに光るLEDが順番に変わるファームウェアを作成します。電源を落とした場合は、最後に光ったLEDがどれであるかDataFlashに保存して、電源をONした際に、DataFlashからどのLEDから光らせるか読み出します。

まずは、新規プロジェクトを作成します。新規プロジェクトの作成方法は、下記のページを参考にしてください。

RX(3)-RS232通信

プロジェクト・エクスプローラーに新規プロジェクトが追加されました。中央には、スマート・コンフィグレータが開かれると思いますので、コンポーネントを追加していきます。

スマート・コンフィグレータを使用して、まずは、PORTの設定をします。
PORTの設定は、下記のページを参考にして下さい。

RX(3)-RS232通信

今回は、LED0~LED3の4個のLEDを使用します。LED0はP73、LED1はPG7、LED2はPG6、LED3はPG5を使用すので、PORT7とPORTGのチェックをONします。

PORT7タブを選択して、P73を出力に設定します。Highで消灯なので、1に出力するにチェックを入れておりきます。

PORTGタブを選択して、PG7、PG6、PG5を出力に設定します。Highで消灯なので、1に出力するにチェックを入れておりきます。

RX(4)-AD変換

今回はRXマイコンを使用して、AD変換機能を構築します。使用するマイコンは、「RX65N」になります。「Renesas Starter Kit+ for RX65N-2MB」評価ボードを使用します。統合開発環境を「e2studio」を使用します。

RX65Nには12bitADコンバータが搭載されています。12bitなので、4096分解能になります。今回、アナログ電圧の値によって、点灯するLEDを変更しようと思います。「Renesas Starter Kit+ for RX65N-2MB」には、LEDが4個搭載しています。「LED0(緑色)」はP73、「LED1(橙色)」はPG7、「LED2(赤色)」はPG6、「LED3(赤色)」はPG5を使用します。今回は、LED1とLED2を使用します。アナログ電圧をマイコン読み取った結果、4096 / 2未満の場合、LED1を点灯します。4096 / 2以上の場合、LED2を点灯します。

まずは、新規プロジェクトを作成します。新規プロジェクトの作成方法は、下記のページを参考にしてください。

RX(3)-RS232通信

プロジェクト・エクスプローラーに新規プロジェクトが追加されました。
中央には、スマート・コンフィグレータが開かれると思いますので、
コンポーネントを追加していきます。

スマート・コンフィグレータを使用して、まずは、PORTの設定をします。
PORTの設定は、UART機能を追加した時と同じなので、下記のページを参考にして下さい。

RX(3)-RS232通信

次に、AD変換の設定を行います。まずは、コンポーネントの追加です。シングルスキャンモードS12ADを選択して、「次へ」を押します。

RX(3)-RS232通信

今回はRXマイコンを使用して、RS232通信機能を構築します。使用するマイコンは、「RX65N」になります。「Renesas Starter Kit+ for RX65N-2MB」評価ボードを使用します。

前回まで、「CS+」を使用していいましたが、今回から、統合開発環境を「e2studio」に変更しました。RXの場合、なんとなくですが、e2studioの方が使いやすそうに思いました。

まずは、新規プロジェクトを作成します。[ファイル]→[新規作成]→[C/C++ Project]を選択します。

「New C/C++ Project」ダイアログが開かれるので、「Renesas CC-RX C/C++ Executable Project」を選択して、「次へ」を押します。

プロジェクト名に、任意の名称を入力して、「次へ」を押します。今回は、「RX65N_UART」という名前にしました。

ターゲット・デバイスを設定します。今回使用するマイコンは、「R5F565NEHDFC」なので、「R5F565NEHxFC」を選択します。Hardware Debug 構成生成は「E2 Lite(RX)」を選択します。設定できたら、「次へ」を押します。

スマート・コンフィグレータを使用するので、チェックボックスをONします。
設定できたら、「次へ」を押します。

ここでは、今回、特に設定はしないので、「次へ」を押します。

「終了」ボタンを押して、プロジェクトを作成します。

プロジェクト・エクスプローラーにプロジェクトが追加されました。中央には、スマート・コンフィグレータが開かれています。

スマート・コンフィグレータを使用して、まずは、PORTの設定をします。

コンポーネントの追加方法は下記のページを参考にして下さい。

RX(1)-スイッチによるLED点灯

入出力ポートのコンポーネントを追加でましたら、PORTの設定を行います。「Renesas Starter Kit+ for RX65N-2MB」には、LEDが4個搭載しています。 「LED0(緑色)」はP73、「LED1(橙色)」はPG7、「LED2(赤色)」はPG6、「LED3(赤色)」はPG5を使用します。今回は、LED1とLED2を使用します。使用するPORTは、P7G7とPG6なので、PORTEにチェックを入れます。

LED1はPG7、LED2はPG6を使用するので、PORTGタブを選択して、PG7、PG6を出力に設定します。Highで消灯なので、1に出力するにチェックを入れておりきます。

次に、シリアル通信の設定を行います。まずは、コンポーネントの追加です。SCI(SCIF)調歩式同期モードを選択して、「次へ」を押します。

作業モードを「送信/受信」に設定します。「Renesas Starter Kit+ for RX65N-2MB」はシリアル通信コネクタがSCI8に接続されているので、リソースは「SCI8」を選択します。選択ができましたら、「終了」を押します。

シリアル通信のコンポーネントが追加されました。設定は初期のままで大丈夫です。

設定ができましたらコード生成ボタンを押します。プロジェクトツリーの中に、コードが生成されました。それでは、ボタンが押されたときの処理内容をmain関数にコーディングしていきます。RX65N_UART.cを開きます。main関数を下記のようにコーディングします。

RX(2)-タイマーLED点滅

今回はRXマイコンを使用して、タイマ-LEDの点滅機能を構築します。使用するマイコンは、「RX66T」になります。「RX66T」CPUボードを使用します。

まずは、新規プロジェクトを作成します。[ファイル]→[新規作成]→[新しいプロジェクトを作成]を選択します。下記のページを参考にしてください。

RX(1)-スイッチによるLED点灯

新規プロジェクトが作成できましたら、プロジェクトツリーのスマート・コンフィグレータをダブルクリックします。スマート・コンフィグレータが起動したら、コンポーネントタブから追加していきます。コンポーネントの追加方法は下記のページを参考にして下さい。

RX(1)-スイッチによるLED点灯

まずは、入出力ポートを追加しました。RX66T CPUボードのLED1は、PORTEのP3になりますので、PORTEにチェックを入れます。

PORTEタブを選択して、P03を出力に設定して、1を出力のチェックボックスをONにします。Highが消灯、Lowが点灯のためです。

次にタイマのコンポーネントを追加します。今回は、16bitタイマを追加します。コンポーネントの追加ボタンを押して、コンポーネントの追加ダイアログを表示します。8bitタイマを選択して、次へボタンを押します。

カウントモードを16 ビットにして終了ボタンを押します。

RenesasSynergy(10)-サービスコール関数

前回は、Renesas Synergy S7G2マイコンをRS232通信機能とMessagingの機能を追加したファームウェアを作成しました。今回は、このMessaging機能の変わりに、ThreadXに用意されているサービスコール関数を使用して、thread間の処理の受け渡しを行おうと思います。使用する評価ボードは、RenesasSynergyマイコン「S7G2」が搭載されている「SK-S7G2」です。

それでは、新規プロジェクトを作成します。 新規プロジェクトの作成方法は、下記のページを参考にしてください。

RenesasSynergy(1)-LED点滅

threadを2つ追加します。threadの作成方法は、下記のページを参照してください。

RenesasSynergy(3)-タイマを使用したLEDの点滅

new_thread0、new_thread1を作成しました。今回、TIme Slicing intervalを0で設定していますので、注意してください。

続いて、UARTをnew_thread1に追加します。UARTの追加方法は下記のページを参照してください。

RenesasSynergy(8)-RS232通信

下記のようにthreadの追加、UARTの追加をしました。

それでは、[Generate Project Content]を選択して、ソースコードを生成します。

RenesasSynergy(9)-Messaging機能

前回は、Renesas Synergy S7G2マイコンをRS232通信機能を追加したファームウェアを作成しました。今回は、このファームウェにMessaging機能を追加して、thread間の処理の受け渡しを行おうと思います。使用する評価ボードは、RenesasSynergyマイコン「S7G2」が搭載されている「SK-S7G2」です。前回作成したプロジェクトファイルを改良していこうと思います。

RenesasSynergy(8)-RS232通信

今回は、RS232通信機能を追加したファームウェアを作成します。使用する評価ボードは、RenesasSynergyマイコン「S7G2」が搭載されている「SK-S7G2」です。評価ボードにはLEDが3つ用意されているので、L1,ONでLED1が点灯、L1,OFFでLED1が消灯、L2,ONでLED2が点灯、L2,OFFでLED2が消灯するコマンドを用意して、RS232通信を行える機能を作成しようと思います。デリミタは’\r’です。

それでは、新規プロジェクトを作成します。新規プロジェクトの作成方法は、下記のページを参考にしてください。

RenesasSynergy(1)-LED点滅

今回は、プロジェクト名を「RS232」としました。テンプレートは、BSPを選択しました。プロジェクトファイルが作成できたので、まずは、スレッドを2つ作成します。1つ目のスレッド(new thread0)は、特になにも処理をしないスレッドです。2つ目のスレッド(new thread1)は、RS232通信の受信と送信を行います。