NXP MIMXRT1064 学習ノート
最近、NXP NXP 全国大学生スマートカーコンペティションを行っていましたが、以前の K66 の性能では物足りず、たまたま時間に余裕ができたので、NXP がリリースした最新の RT1064 チップを研究する予定でした。実際、1064 は本質的に 1052 に似ており、必要な場合は 1052 ルーチンの一部を読むことができます。国内の 1064 リソースが少なすぎて、
SDKのダウンロードとIARの作業環境の構成
RT1064公式サイトホームページ
SDKのダウンロード
チップを入手したとき、最初は間違いなく混乱するでしょうが、Baidu 検索ルーチンを開いてコピーして貼り付けます。ルーティンがないってどういうこと?? ?
または、素直に公式インターネットカフェの公式ウェブサイトを開くルーチンは常に最も包括的です。
NXP は公式 IDE MCUXpresso をリリースしましたが、ブロガーはこのプログラムを使用するときに常に接続を切断します。。理由を探すのがめんどくさいというか、IARユーザーが一番便利です。
SDK生成リンク
ジェネレーターを正式に作成しました。必要なチップのタイプを選択してください
。必要に応じてミドルウェアを選択できます。通常は、ARMCortexM コアのソフトウェア インターフェイス標準である最上位の CMSIS を選択する必要があります。
次に
、次のファイル (主に SDK ファイル) をダウンロードします。
ダウンロードされたファイル
ボード: ボード初期化設定関連ファイル
CMSIS: インターフェイス ファイルのサンプル
ドキュメント: 説明ドキュメント
コンポーネント: 一般にいくつかの拡張コンポーネント
デバイス: プロジェクトを構築するためのいくつかのコア ファイル、ドライバー ファイル、およびフラッシュ ファイルを保存します ミドルウェア
: いくつかのミドルウェア、選択したツールを確認してくださいSDKを生成するとき
:公式ユーティリティには通常、cmakeコンパイルチェーンか何かが含まれています
基本的なファイル構成
SmartCar_1064 という名前のフォルダーを作成します
- SDK パスの直下にある CMSIS フォルダーを SmartCar_1064 にコピーします。
重要なチップドライバーファイルを保存するために内部にデバイスフォルダーを作成します
- SDK パス /devices/MIMXRT1064 の下のドライバー フォルダーを SmartCar_1064/Device (公式チップ デバイス ドライバー ファイル) にコピーします。
- SDK パス /devices/MIMXRT1064 の直下にある iar フォルダーを SmartCar_1064/Device (iar プロジェクト フラッシュ ファイル) にコピーします。
- SDK パス /devices/MIMXRT1064 の直下にあるユーティリティ フォルダーを SmartCar_1064/Device にコピーします (リダイレクトされた公式ツール、PRINTF および ASSERT 関数)
- SDK パス /devices/MIMXRT1064 の直下にある xip フォルダーを SmartCar_1064/Device (フラッシュ ファイル) にコピーします。
- SmartCar_1064/Device に新しいボード ファイルを作成し、board.c、board.h、 Clock_config.c、 Clock_config.h、pin_mux.c、pin_mux.h を SDK_2.6.1_MIMXRT1064xxxxA\boards\evkmimxrt1064\demo_apps\hello_world (実際、公式のダウンロード SDK ページにはピン設定プログラムもあります。これは便利な図です)demo_apps にはいくつかの古典的なルーチンがあり、リサーチをしなくてもこれらのルーチンから開始できます。これは非常に優れたリソースです。
- SDK_2.6.1_MIMXRT1064xxxxA\boards\evkmimxrt1064\xip ファイルを SmartCar_1064/Devise/xip にコピーします
- SDK_2.6.1_MIMXRT1064xxxxA\devices\MIMXRT1064 フォルダーにある fsl_device_registers.h、MIMXRT1064.h、MIMXRT1064_features.h、system_MIMXRT1064.c、system_MIMXRT1064.h を SmartCar_1064/Device にコピーします。
- SDK_2.6.1_MIMXRT1064xxxxA\components\serial_manager の下にあるすべてのもの (usb_cdc_adapter を除く) を SmartCar_1064/Device/utilities にコピーします。
IAR 構成 (8.3 以降である必要があります)
プロジェクト - 新しいプロジェクトの作成-----ツールチェーンで ARM を選択、テンプレートで C-main を選択-----OK をクリック-----成功したら、SmartCar_1064 フォルダに移動し、新しい
プロジェクトにSmartCar.ewp として保存します。作成
以下の手順に従って、ボード、ドライバー、ソース、スタートアップ、ユーティリティ、いくつかのフォルダーを追加します
プロジェクト-----グループの追加-----フォルダー名を入力-----OK
各ファイルで以下の手順に従ってください 追加フォルダー内のファイルを 1 つずつ
注: ドライバーは、使用するものと使用するものを必ずしも追加するわけではありません。あまり欲張らないでください。そうしないと、コンパイルが非常に遅くなります (何を要求すべきかどうやってわかりますか? これは問題です)
経験があれば、公式のルーチンを勉強して、それに従って追加すると、上図のように追加後、次のチュートリアルも追加されます
。上図にはインポートし忘れたコンポーネントがあります。実際、ユーティリティには、serial_manager.c と .h という 2 つのファイルがあり、fsl_shell 関連ファイルを削除する必要があります。そうしないと、エラーが報告されます。
上の図の青い四角形を右クリックします。-----[オプション] をクリックし、
このアイコンをクリックして、
[NXP—i.MX—i.MXRT—1064xxx6A] を選択します。
左側の「C/C++ コンパイラ」-「プリプロセッサ」を選択してヘッダー ファイルを追加します
$PROJ_DIR$\CMSIS\Include
$PROJ_DIR$\Device\utilities
$PROJ_DIR$\Device\board
$PROJ_DIR$\Device
$PROJ_DIR$\Device\drivers
$PROJ_DIR$\Device\xip
$PROJ_DIR$\Device\utilities\debug_console
$PROJ_DIR$\Device\utilities\str
次に、以下の定義済みシンボルを追加します。
SKIP_SYSCLK_INIT
XIP_EXTERNAL_FLASH=1
XIP_BOOT_HEADER_ENABLE=1
XIP_BOOT_HEADER_DCD_ENABLE=1
DEBUG
CPU_MIMXRT1064DVL6A
PRINTF_FLOAT_ENABLE=1
SCANF_FLOAT_ENABLE=0
PRINTF_ADVANCED_ENABLE=0
SCANF_ADVANCED_ENABLE=0
左側のメニュー - リンカー - 設定 - デフォルトの
選択$PROJ_DIR$\Device\iar\MIMXRT1064xxxxx_flexspi_nor.icf
を上書きします。外部 SDRAM がある場合は、sdram を備えたものを選択します。スマート カーにはそれほど大きな要件はありません。付属のチップで十分です。設定なし
左側のメニュー – デバッガー – ドライバー – J-link/J-Trace (私と同じように Jlink を使用している場合) を選択するか、
デバッガー ページ – ダウンロード タブ – ダウンロードの確認とフラッシュローダーの使用をチェックします
左側のメニュー – J-link/J-Trace (前のステップでこれを選択した場合は、これを選択しなかった場合は自分で行うことができます。Longqiu の開発ボードが CMSIS-DAP をサポートしていることを覚えています。技術的な方法については彼らに尋ねることができます) – [セットアップ] タブ – [リセット] は [コア] を選択します - [接続] タブ、インターフェイスは SWD を選択します。
コンパイルします。間違った場合は、不足しているファイルを確認し、sdk フォルダーに移動して検索して追加します。
この時点で、IAR プロジェクトの構成は完了です。