#実験ガイドADSアームプログラミング実験
####学習目的
ADS統合環境に精通したArmプログラミング
試験的なコンテンツ
ADSで新しいプロジェクトを作成し、開発環境をセットアップします。
AXDでのアセンブラーのデバッグ
実験環境
ハードウェア:
PCソフトウェア:
ADSオペレーティングシステム:windows7
実験プロセス
1)ADSコンパイルシステムプロジェクトの設定手順の説明
a)新しいプロジェクト:最初に次のようなフォルダーを作成します:D:\ test1(自分の名前を使用して絞り込み、名前を付けることができます)。次に、ADS1.2統合開発環境を実行し、[ファイル]> [新規作成]メニュー項目を選択すると、ダイアログボックスがポップアップし、次の図が表示されます。次に、プロジェクトタイプ選択ダイアログボックス
に示すように[プロジェクト]を選択し、[プロジェクト名]にプロジェクトファイル名を入力して、[OK]をクリックします。 、プロジェクトと同じ名前のワークスペースを作成します。
現在のプロジェクトのソースプログラムファイルを追加します。ARMアセンブラのソースファイルのサフィックスは、Sケースと名付けることができます。Debug、DebugRel Releaseを選択し、同じ手順に従ってtest2.sを作成します。
c)ソースファイルを追加します。[プロジェクト]→[プロジェクトに追加]→[ファイル]を選択するか、プロジェクト管理ウィンドウで対応する右クリックショートカットメニューコマンドをクリックしてファイル選択ダイアログボックスを開き、プロジェクトディレクトリに作成したソースを選択してファイルtest1に追加します。 .s。[ファイルの追加]ダイアログボックスで[DebugRel]を選択し、同じ手順に従ってtest2.sを作成します。
d)基本設定:設定で「エントリポイント」を設定するだけです
e)ターゲットコードを生成:アイコンを押してターゲットコードを生成します。
f)のデバッグ設定:[開く]ダイアログボックスDebugrelターゲットを使用している間」という名前のTEST_DATAディレクトリを生成したディレクトリ内のアイコン最初のコンパイルとリンクプロジェクトtest1のを押した後、デバッグ用に生成test.axfを選択します。
G)メモリウィンドウを開き、アドレスの内容を観察します
。H)プログラムをステップ実行し、レジスタとメモリ値の変化を観察して記録します
。I)実験の内容と関連情報を組み合わせ、プログラムの動作を観察し、実験を通じてARM命令の理解を深めます。
2)プログラム設計を完成させます:X = | X | + | Y | + | Z |、ここでR0 = X = 1、R1 = Y = 2、R2 = Z = 3、サブルーチンによって呼び出されるメソッド、入り口パラメーターはR3 、エクスポートパラメータはR4です
a)A * .sファイルの実装
b)完全なコードを書く
AREA Fctrl,CODE,READONLY
ENTRY
CODE32
START
MOV R0, #1
MOV R1, #2
MOV R2, R3
MOV R3,R0
BL SUBPRO 跳转到子程序
MOV R0,R4
MOV R3,R1
BL SUBPRO
ADD R0,R0,R4
MOV R3,R2
BL SUBPRO
ADD R0,R0,R4
SUBPRO
CMP R3,#0
BGE ENDP 有符号数大于或等于
RSB R3,R3,#0
ENDP
MOV R4,R3
MOV PC,LR 从子程序返回
STOP
B STOP
END
3)プログラム設計を完了します。プログラムをコンパイルし、レジスタR0のデータをカウントします。各ビットの数は0であり、結果をレジスタR2に格納します。
a)A * .sファイルの実装
b)完全なコードを書く
AREA zeronum,CODE,READONLY
ENTRY
CODE32
START
MOV R0, #0x12800
MOV R1, #1
MOV R2, #0
LOOP
ANDS R3, R0, R1
CMP R3, #0
ADDEQ R2, R2, #1
MOV R1, R1, LSL #1
CMP R1, #0
BNE LOOP
STOP
B STOP
END
実験的な収穫
実際に実践してみると、ARMプログラミングは理論クラスのように退屈ではないことに気づきましたが、それでも非常に興味深いことです。