Multi Source Translation Content

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Multi Source Translation Content

Discussions

Sort by:
ネットワーク経由でのファイル転送 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 詳細については、U-Boot ユーザーマニュアル[1]を確認してください。 まず、ボードIP、ホストIP、およびゲートウェイIPを設定します。   => setenv ipaddr 10.29.244.91   => setenv serverip 10.29.244.27   => setenv gatewayip 10.29.244.27 cross'cableを使用するときにgatewayipを設定する必要はありません! この設定をフラッシュに保存します。 => saveenv ファイルをボードRAMにダウンロードします。 => tftp 0x80000000 zImage ここで、 400000 は、ファイルが配置されるメモリ位置です。 zImageは、TFTPサーバーからダウンロードされるファイルです。
View full article
HOWTO: S32 RTD No AUTOSAR を使用して S32R41 の点滅 LED アプリケーション プロジェクトを作成する このドキュメントでは、S32 RTD 非 AUTOSAR ドライバーを使用して S32R41 デバイス用の簡単な点滅 LED アプリケーションを作成する手順を順を追って説明します。この例では、S32R41 EVB に使用し、S32 デバッガーを介してイーサネット接続で接続します。 準備 ソフトウェア ツールをセットアップする S32 プラットフォーム用 S32 Design Studio をインストールする S32R41 開発パッケージと S32R41 RTD AUTOSAR 4.4 をインストールします。これらは両方とも S32 構成ツールに必要です。 S32 Design Studio for S32 Platform を起動する 手順 新規 S32DS プロジェクト または プロジェクトの名前 ('Blinking_LED_RTD_No_AUTOSAR' など) を指定します。名前はスペース文字を入れずに入力する必要があります。 S32R41ファミリを展開し、Cortex-M7 S32R418AB選択 クリック 次に 次に、他のコア、つまりCortex-M7-1の選択マークのチェックを外します そして、「...」をクリックします。SDKの横にあるボタン PlatformSDK_SAF85_S32R41_2022_08_S32R418AB _M7_0の横にあるチェックボックスをオンにします。(またはS32R41の最新のSDKがインストールされている方)。クリック わかりました 「Finish」をクリックします。プロジェクト生成ウィザードが完了するまで待機し、Project Explorer ビューでプロジェクトを展開して内容を表示します。 ボード上の LED を制御するには、Pins ツール内で設定を行う必要があります。これを行う方法はいくつかあります。簡単な方法の 1 つは、MEX ファイルをダブルクリックすることです。 S32R41 EVBの回路図では、ユーザーLEDの信号線を確認するために、チャンネル4がユーザーLED信号に接続されているため、チップ上のユーザーLEDの信号線にはチャンネル4を使用しています。そこで、S32R41 EVBに接続されているLEDのDioチャネルId4の信号線を選択します。 [Peripheral Signals] タブの左側から [Pins (ピン)] ツールのパースペクティブ レイアウトで、[Peripheral Signals] タブから [Open the Siul2_0] を見つけます。また、次の画像に示すように、ドロップダウンメニューから「gpio,36 PC_04」オプションを選択します。 GPIOの使用にはPC_04を使用しているため、GPIO信号をこのピンSIUL2_0ルーティングしています。 方向を指定する必要があります。メニューが表示されます。[出力] を選択して [OK] をクリックします。 Routing Details ビューに新しい行が追加され、黄色でハイライト表示されていることを確認します。 PC_04 ピンの [ラベル] 列と [識別子] 列に [LED] を追加します。 コード プレビュー [周辺機器]ツールに移動し、LEDの点滅を有効にするSiul2_Dioを追加し、S32R41EVBの青色LEDに隣接します。 Eclipse パースペクティブ ナビゲーション バーから Peripherals Tool アイコンをクリックします。 Components ビューで、Drivers カテゴリの[Add a new configuration component…]ボタンをクリックします。これにより、すべての構成コンポーネントのリストが表示されます。 リストから[Siul2_Dio]コンポーネントを選択し、[OK]をクリックします。警告メッセージは無視してかまいません。これは、ドライバーが現在のプロジェクトにまだ含まれていないことを示しているだけです。関連するドライバー パッケージは自動的に追加されます。注: 先頭の選択項目を[Present in the tool-chain project]から[All]に変更する必要がある場合があります。 DIO ドライバーは、DIO チャネルへの読み取りおよび書き込みサービスを提供します。 また、[Siul2_Port]タブを選択し、以下のように[Siul2 IPポート開発エラー検出]オプションのチェックマークを外します。 Gpio_Dio ドライバーに追加の設定は必要ありません。Save をクリックして、.MEX ファイルにすべての変更を保存します。 デバイスの設定が完了したので、RTD の構成コードを生成できます。メニューバーから「Update Code」をクリックします。 先ほど設定した出力ピンを制御するためのアプリケーション コードを記述します。[C/C++]パースペクティブに戻ります。 まだ開いていない場合は、プロジェクトウィンドウで「src」フォルダの横にある「>」をクリックして内容を表示し、「main.c」をダブルクリックしますファイルを開いて開きます。ここにアプリケーションコードが追加されます。 ピンを制御する前に、S32 コンフィギュレーション ツールから生成されたコンフィギュレーション情報を使用してピンを初期化する必要があります。次の行を追加して、Port ドライバーを使用してすべてのピンを初期化します: 次の行を main に挿入します。コメント 'Write your code here'' の後に、次の行を挿入します。 /* ポートドライバを使用してすべてのピンを初期化します */ Siul2_Port_Ip_Init(NUM_OF_CONFIGURED_PINS0、g_pin_mux_InitConfigArr0); 次に、LEDの点灯と消灯のロジックを追加します。ピンのオンとオフを切り替え、その間に遅延を挟んでLEDを点滅させます。遅延は、認識できる程度に長くします。 変数を初期化する行を追加 uint8 i = 0; 指定された for ループ内のコードを変更し、次の行を追加します。 /* LEDを10回点滅させるロジック for (i=0; i<10; i++) { Siul2_Dio_Ip_WritePin(LED_PORT、LED_PIN、1U); レベル = Siul2_Dio_Ip_ReadPin(LED_PORT, LED_PIN); テスト遅延(2000000); Siul2_Dio_Ip_WritePin(LED_PORT, LED_PIN, 0U); レベル = Siul2_Dio_Ip_ReadPin(LED_PORT, LED_PIN); テスト遅延(2000000); } 帰る (0U); そして、この行をmain()関数の上に追加して、変数を初期化します 揮発性 uint8 レベル; 'main' 関数の前に、次のような遅延関数を追加します。 無効 TestDelay(uint32 遅延); 無効 TestDelay(uint32 遅延) {    静的な揮発性 uint32 DelayTimer = 0;    while (DelayTimer<遅延) { 遅延タイマー++; } 遅延タイマー=0; } main.c の先頭にあるインクルード行を更新しますアプリケーションで使用されるドライバーのヘッダーを含めるファイル: 取り去る #include 「Mcal.h」 足す #include 「Siul2_Port_Ip.h」 #include 「Siul2_Dio_Ip.h」 『Blinking_LED_RTD_No_AUTOSAR』をビルドします。[C/C++ Projects]ビューでプロジェクト名を選択し、[Build]をクリックします。 ビルドが完了したら、エラーがないことを確認します。 Debug Configurations を開き、[Blinking_LED_RTD_No_AUTOSAR_Debug_RAM]を選択します。必ず、実行したビルド タイプに対応する構成を選択してください。ビルド出力が存在しない場合はエラーが報告されることがあります。 ここで、S32 Debug Probe が接続されているインターフェース(Ethernet または USB)を選択してください。 USB をインターフェースに選択した場合、COM ポートは自動的に検出されます(まれに 2 台以上の S32 Debug Probe が USB 経由でホスト PC に接続されている場合は、EVB に接続されているプローブに対応する COM ポートを手動で選択する必要があります)。 Ethernet 経由で接続している場合は、プローブの IP アドレスを入力してください。IP アドレスの確認方法については、S32 Debug Probe ユーザー マニュアルを参照してください。 [デバッグ] をクリックします LEDが点滅するのを確認するには、「再開」をクリックします。 このコードは、そのままではLEDが10回点滅しますが、ループ条件を変更して無限に点滅させることができます。
View full article
MIPI DSI パネルは、Verdin 8M で BSP 5 から BSP 6 に移行する際に問題に直面しています Hi,  現在、BSP 5.x から BSP 6.5 への移行プロセスに携わっています。VerdIn8mmをカスタマイズされたボードで使用しています。ただし、BSP 6でディスプレイドライバーをロードすると、エラーメッセージが表示されるため、問題が発生しています。 BSP6でこの問題を解決する方法について何かアイデアはありますか?BSP5で問題なく動作していました。ありがとうございます i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Linux Yocto Project Re:MIPI DSIパネルは、VerdiでBSP 5からBSP 6への移行中に問題が発生しています こんにちは@AldoG、ご回答ありがとうございます。/gpu/drm/bridge/sec-dsim.c ファイルのパッチを作成して、この問題を解決しました。これが私がやったことです。 この行を置き換えました。 mvporch |= MVPORCH_SET_MAINVBP(vmode->vback_porch) | MVPORCH_SET_STABLEVFP(vmode->vfront_porch) | MVPORCH_SET_CMDALLOW(0x0); この行で mvporch |= MVPORCH_SET_MAINVBP(vmode->vback_porch) | MVPORCH_SET_STABLEVFP(vmode->vfront_porch - 15) | MVPORCH_SET_CMDALLOW(0xf); 次に、モードを設定するときに、通常はパネルドライバー内でdsi->mode_flagsにMIPI_DSI_MODE_VSYNC_FLUSHを追加しました。 Re:MIPI DSIパネルは、VerdiでBSP 5からBSP 6への移行中に問題が発生しています こんにちは Toradex BSPを使用していると思いますが、正しいですか? もしそうなら、この点について彼らのサポートチャネルにも連絡することをお勧めします。 ブリッジのアタッチに失敗したと報告されるログの問題については、バージョン間、特にデバイスツリーバインディングでのドライバーの変更を比較しましたか。 よろしくお願いします/サルドス、 アルド。
View full article
示例 XPC563MKIT PinToggleStationery CW210 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> ******************************************************************************** * 详细说明: * 应用程序执行基本初始化,将 PLL 设置为最大允许频率, * 初始化中断,通过中断闪烁一个 LED,通过软件闪烁第二个 LED * 循环,初始化并通过 UART 终端显示通知,然后通过终端 ECHO 显示通知。 * * ------------------------------------------------------------------------------ * 测试硬件:XPC563MKIT * MCU:            PPC5633MMLQ80 *系统频率:80/60/40/12 MHz * Debugger:       Lauterbach Trace32 *                 PeMicro USB-ML-PPCNEXUS * 目标:RAM、internal_FLASH * 终端:19200-8-无奇偶校验-1 停止位-eSCI_A 上无流量控制 * EVB连接:默认 * ******************************************************************************** <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> ******************************************************************************** * 详细说明: * 应用程序执行基本初始化,将 PLL 设置为最大允许频率, * 初始化中断,通过中断闪烁一个 LED,通过软件闪烁第二个 LED * 循环,初始化并通过 UART 终端显示通知,然后通过终端 ECHO 显示通知。 * * ------------------------------------------------------------------------------ * 测试硬件:XPC563MKIT * MCU:            PPC5633MMLQ80 *系统频率:80/60/40/12 MHz * Debugger:       Lauterbach Trace32 *                 PeMicro USB-ML-PPCNEXUS * 目标:RAM、internal_FLASH * 终端:19200-8-无奇偶校验-1 停止位-eSCI_A 上无流量控制 * EVB连接:默认 * ******************************************************************************** 概述
View full article
i.MX53 QSB 启用 WiFi Android <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 如何启用 i.MX53 QSB Android 的 WIFI 支持 应用每个 QSB 补丁后,根据您的硬件启用 WiFi 支持。 Android R4 可从 Adeneo 网站下载。 AR6102 更改文件设备/fsl/imx53_loco/BoardConfig.mk -BOARD_WLAN_CHIP_AR6102 := false +BOARD_WLAN_CHIP_AR6102 := true AR6003 更改文件设备/fsl/imx53_loco/BoardConfig.mk -BOARD_WLAN_CHIP_AR6003 := false +BOARD_WLAN_CHIP_AR6003 := true 完成构建后, ar6000.ko将在 /system/etc/modules 下创建 要打开 WIFI,请转至“设置”>“无线和网络”>“Wi-Fi” 错误信息案例 如果logcat显示以下错误信息: E/WifiHW(2086):无法访问“/data/misc/wifi/wpa_supplicant.conf”:权限被拒绝 重新配置 nfs 服务器文件 /etc/default/nfs-kernel-server 删除此行: RPCMOUNTDOPT=--管理-gids i.MX53
View full article
i.MX27 ADSボードの点滅 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> このチュートリアルでは、ATK を使用してブートローダーをフラッシュする方法を説明します。 ATK(アドバンスドツールキット) ATK(Advanced Toolkit)は、i.MX ボードのフラッシュメモリをプログラミングするためのWindowsソフトウェアです。 ATKの使い方 このセクションでは、フラッシュメモリを消去し、ブートローダをプログラムする手順について説明します。 1 - PCと i.MX ボードをシリアルケーブルで接続します。 2 - 一部のハードウェア構成 (スイッチ) は、ボードをフラッシュするために行う必要があります。 S18スイッチを次のように設定します:スイッチS18->111100 3 - [スタート] - [プログラム] > - > AdvancedToolKit - > AdvancedToolKit] をクリックして ATK を実行します。 次のオプションを設定します。    デバイスメモリ-> DDR;カスタム初期ファイル -> (マークを外したままにする)    通信チャネル -> シリアルポート(通常はCOM1) 4 - [Flash Tools]をクリックしてフラッシュメモリを消去、プログラム、またはダンプし、[GO]をクリックします。 フラッシュプログラミング 次のステップは、以下の手順に従って、ブートローダーイメージをボードのフラッシュにプログラムすることです。 1 - 次の図に示すようにパラメータを選択し、[プログラム]を押します。 ブートローダのバイナリイメージファイルは、ボードサポートパッケージセットプログラム、NORスパン、Biスワップに含まれています 2 - 画像ファイルフィールドに追加し、プログラムを押します。 3 - ATKを閉じ、ボードの電源を切り、下の写真に示すようにスイッチを戻します。 LinuxへのATKのインストール ATKをダウンロード: ダウンロード。 ATKの抽出: # unzip ATK_1_41_STD_installer.zip デフォルトのインストールプロセスを実行します。 #ワインSETUP.EXE Windowsマシン(C:\ Windows \ System32)からmfc42.dllとmsvcp60.dllを取得し、wine system32(/ root / .wine / drive_c / windows / system32)にコピーします。 ATKを実行します。 #ワインADSToolkit_std.exe i.MX2x
View full article
Q&A:Linux 3.5.7 BSP WiFi SDIOモジュールエラーを修正する方法は? <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Q: 彼のSDIO WiFiモジュール(Marvel 88W8790を含むAzurewaveモジュール)を4ビットモードでマウントしようとすると、エラーが発生しました alphaカーネル(3.5.7+3285970)を使用したiMX6スマートSD開発ボード上のwifiモジュール。 mwifiex_sdio mmc0:0001:1: WLAN FW がアクティブです mwifiex_sdio mmc0:0001:1: mwifiex_cmd_timeout_func: Timeout cmd id (2004.239824) = 0xa9, act = 0x0 mwifiex_sdio mmc0:0001:1: num_data_h2c_failure = 0 mwifiex_sdio mmc0:0001:1: num_cmd_h2c_failure = 0 mwifiex_sdio mmc0:0001:1: num_cmd_timeout = 1 mwifiex_sdio mmc0:0001:1: num_tx_timeout = 0 mwifiex_sdio mmc0:0001:1: last_cmd_index = 1 mwifiex_sdio mmc0:0001:1: last_cmd_resp_index = 0 mwifiex_sdio mmc0:0001:1: last_event_index = 0 mwifiex_sdio mmc0:0001:1: data_sent=1 cmd_sent=1 mwifiex_sdio mmc0:0001:1: ps_mode=1 ps_state=0 +++++++++++++++++++++++ リリースノートに記載されているように、SDHCドライバーには2つの既知の問題しかなく、これらは一致していないようです。Linuxリファレンスマニュアルには、SDIOの動作がAR6003を使用して検証されたと記載されています。私の仮定では、これが私たちが標準化したSilexモジュールです。このモジュールを使用して 4 ビット モードは検証済みですか? ここで何が起こっているのか、どなたかご存じの方はいらっしゃいますか? ある: L3.5.7はアルファ版であり、WiFi機能は安定していません。テストレポートは、オープンWiFiの問題が存在することを示しています。 Wifiモジュールはmx6q_smdで動作しない場合があります。 insmod ath、ath6kl_core、ath6kl_sdio後。Wi-Fiカードを挿入すると、いつか(50%)が表示されます -------------------------- ath6kl: RX_LOOKAHEAD_VALIDが読み取れません ath6kl: ターゲット情報を取得できません: -84 ath6kl: ath6kl コアの初期化に失敗しました ath6kl_sdio: mmc0:0001:1 のプローブがエラー -84 で失敗しました -------------------------- WiFiカードを再挿入すると、問題が解決する場合があります。 "udhcpc -i wlan0" を実行すると、30% のタイミングでプログラム例外が発生します。wlan0 ip(プログラムがハングアップ)できない場合があります。 環境(OS、プラットフォーム、ドライバなど): HW:MX6Q_SMD Num014およびNum017 MX6Q_ARDこの問題は発生しません SW: Kernel 3.5.7-1.0.0 GNU/Linux ケースID:TGE-LV-WIFI-0043 再現手順: #modprobe ath #modprobe ath6kl_core #modprobe ath6kl_sdio WiFiカードを挿入します # IWCONFIG wlan0 モード管理 # iwlist wlan0 スキャン |grep MAD-無線LAN #iwconfig wlan0 key 00112233445566778899123456 #iwconfig wlan0 essid MAD-wifi #udhcpc -i wlan0 MX6 ARD WiFiの問題も添付されました。 [Kernel3.5.7_MX6QARD]Wifi:wifiカードは、一時停止と再開中は機能しません。100% -- バグの詳細な説明: Wi-Fiカードをボードに挿入した状態。システムの中断と再開のテストを実行します。システムの一時停止と再開後、WiFiカードはうまく機能しません。 常に報告する : ath6kl: コマンドクレジットカウントレジスタをデクリメントできません: -84 ath6kl: デバイスに書き込めません: -84 ath6kl: UART デバッグのbmi_write_memoryに失敗しました ath6kl: レジュームで hw を起動できませんでした: -5 環境(OS、プラットフォーム、ドライバなど): HW: MX6QARD -023 このプラットフォームでのみ試されました SW: root@imx6qsabreauto:~# uname -a Linux imx6qsabreauto 3.5.7-1.0.0+3285970 #1 SMP PREEMPT Sat Jun 29 10:20:45 CDT 2013 armv7l GNU/Linux ケースID:TGE-LV-WIFI-1060およびTGE-LV-WIFI-1062 再現手順: 1. wif カードを挿入した状態でカーネルを起動します。 2.WiFiストレステストを行う 3.一時停止と再開を行う i.MX6Quad Linux
View full article
rpmsg-liteマスターとリモートアプリケーションでリンクアップを成功させる方法は? hi, FRDM-MCXN947 ボードの SDK を使用したマルチコア rpmsg-lite ピンポン通信のデモでは、マスター コアがリモート コアをブートストラップして開始した後、リモート コアが最初に rpmsg_lite_remote_init() を実行し、次にマスター コアに通知し、リモート コアが接続を待つ (rpmsg_lite_wait_for_ link_up()) ことがわかりました。この間、マスター コアは待機します (while())。マスター コアが初期化された後 rpmsg_lite_master_init() )、リモート コアは接続を確立してエンドポイントを作成し、データを送信する準備ができたことをマスターに通知します。使用中に、通知と待機コードをコメントアウトしたところ、マスターコアとリモートコアもリンクアップして通信できることがわかりましたが、これの理由は何ですか?マスターシステムクロックがリモートクロックよりも遅いためですか?            また、私たちのMCUにそのような通知メカニズムがない場合、マスターコアとスレーブコアがリンクアップして通信できることをどのように確認するのでしょうか? ありがとう&よろしく yzs FRDMトレーニング MCXN Re:rpmsg-liteマスターとリモートで、アプリケーションでリンクアップが成功するようにする方法は? Hello, 詳しいご説明をいただき、ありがとうございました。あなたが言ったように、私はそれを試し、実際にあなたが説明した状況を再現しました。2 つのコア間の通信を確保する方法については、フラグ ビットまたは ISR と組み合わせた共有メモリを使用できます。 私はあなたに役立つかもしれないいくつかのリンクを共有します: MCMgrDataExchangeDiagram.pngメイン ·nxp-mcuxpresso/mcuxsdk-middleware-multicore ·GitHubの RPMsg-Lite ユーザーズガイド : RPMsg コンポーネント BRs、 Celeste Re:rpmsg-liteマスターとリモートで、アプリケーションでリンクアップが成功するようにする方法は? hi, @Celeste_Liu  感謝。変更が正しく通信されることを確認しましたが、このコードをコメントアウトせずrpmsg_lite_wait_for_link_up(my_rpmsg, RL_BLOCK)、マスター側とリモート側(void)MCMGR_TriggerEvent(kMCMGR_ RemoteApplicationEvent, APP_RPMSG_READY_EVENT_DATA)の両方をマスター側とリモート側の両方でコメントアウトしました。添付の画像に見られるように、テスト結果が異なる原因はここにある可能性があります。 しかし、rpmsg_lite_wait_for_link_up(my_rpmsg、RL_BLOCK)をコメントアウトした後でも、問題なく通信できることがわかりました。 だから私は、core0とcore1が私たちのプラットフォームにそのような通知メカニズムがなく、core0が最初にmaster_main()を実行する場合に通信していることをどのように確認したいと思いますか? BR yzs Re:rpmsg-liteマスターとリモートで、アプリケーションでリンクアップが成功するようにする方法は? こんにちは@yzs、 あなたの投稿をありがとう、そして遅れて申し訳ありません。 ご指摘の状況を踏まえて、以下のテストを実施しました。次の 2 つの例を使用しました。 core0 と core1 の間のリンク関係は、rpmsg_lite_pingpong_cm33_core0 のプロパティで確認できます。 次に、あなたが提案したように、通知とrpmsg_lite_pingpong_cm33_core1のmain_remote.cで待機するための関連コードをコメントアウトしました。 /* Signal the other core we are ready by triggering the event and passing the APP_RPMSG_READY_EVENT_DATA */ -101 (void)MCMGR_TriggerEvent(kMCMGR_RemoteApplicationEvent, APP_RPMSG_READY_EVENT_DATA); +102 //(void)MCMGR_TriggerEvent(kMCMGR_RemoteApplicationEvent, APP_RPMSG_READY_EVENT_DATA); -107 rpmsg_lite_wait_for_link_up(my_rpmsg, RL_BLOCK); +108 //rpmsg_lite_wait_for_link_up(my_rpmsg, RL_BLOCK); その後、rpmsg_lite_pingpong_cm33_core1を再コンパイルし、コンパイルされたbinファイルを再度フラッシュして再テストしました。いくつかのテストの結果、マスターコアとリモートコアが通信できないことがわかりました。 したがって、あなたの側に運用上の問題があるのではないかと思います。コードをコメントアウトした後で再コンパイルしましたか?それとも、あなたの業務と私の業務に違いはありますか?調査を続けるためにも、ぜひお知らせください。 マスターコアとリモートコアのクロックが異なるという兆候はどこにも見当たりませんでした。 メールボックスを使用してマルチコア通信を実現することもできます。SDKにはこのようなデモがあります。行って見てみてください。 それがあなたを助けることができることを願っています。 ------------------------------------------------------------------------------------------ 注:この投稿があなたの質問に答えた場合は、「解決策として受け入れる」ボタンをクリックしてください。ありがとうございます! ------------------------------------------------------------------------------------------ よろしくお願いいたします。 Celeste
View full article
在 Ubuntu 上为 imx6d/q 构建 imx 测试 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Hi, 文档“如何为 imx6d/q 创建 ubuntu 硬浮点 rootfs”由 Junping Mao 分享。 https://community.freescale.com/docs/DOC-95185 但是,需要进行一些修改才能在此 rootfs 上构建 imx-tests。 附件中请参阅在 imx6d/q 的 hf-ubuntu rootfs 上构建 imx 测试的指南。 如果有任何问题,请随时告诉我。:笑脸: 问候, 郑文 i.MX6 双核 i.MX6 四核 回复:在 Ubuntu 上为 imx6d/q 构建 imx 测试 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 谢谢!这对我使用 yocto 内核的 linaro 12.04 LTS armhf 来说是有效的(我只是改变了导出 INCLUDE 行以指向这个内核)。
View full article
i.MX51 LinuxアプリケーションのみのフラッシュとSDカードリーダー <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> ネットワークセキュリティ(プロキシなど)のために、会社のネットワークを使用してアプリケーションをフラッシュすることは容易ではないことがよくあります。このチュートリアルでは、SDカードリーダーと簡単な標準Linuxコマンドのみを使用して、SDカードでLinuxアプリケーションをフラッシュする方法を説明します。 SDカードのメモリマップ Linuxアプリケーションは、次の3つの部分に分かれています。 ブートローダー Linuxカーネル Linux の Rootfs この3つの部分を順番に点滅させます Uブートのフラッシュ SDカードリーダーで、黄色の部分を点滅させます。で[...]/ltib/rootfs/boot/ フォルダ $ sudo dd if=u-boot.bin of=/dev/sdb bs=512 skip=2 seek=2 &&; sudo sync Linuxカーネルのフラッシュ SDカードリーダーで、緑色の部分を点滅させます。1MB=1048576B -> カーネル オフセットであることに注意してください。 $ sudo dd if=uImage of=/dev/sdb bs=1048576 seek=1 && sudo sync U-boot変数の構成 カーネルを起動するには、U-bootを設定する必要があります。 シリアルケーブルをEVKに差し込みます。 115kbps、8ビット、1ストップ、パリティなし EVKスイッチは、次のように設定する必要があります。 DS1 DS2 DS3 DS4 DS5 DS5 DS7 DS8 DS9 DS10 SD / MMCカードからの起動 0 0 0 0 0 0 1 1 0 0 SDカードをEVK(下部のスロット)に挿入し、アプリを起動します。ハイパーターミナルで、次のように入力します。   BBG U-Boot > printenv 環境変数を印刷するには bootcmd を変更します。 BBG U-Boot > setenv bootcmd_mmc 'run bootargs_base bootargs_mmc;mmc read 0 ${loadaddr} 0x800 0x1800;bootm' 「0x1800」はカーネルのサイズです。uImageカーネルファイル(0x1800x512Byte = 3MB)よりも大きくなければなりません 表示画面として WVGA を使用したい場合 (カーネルは CLAA サポート付きで設定する必要があります)、LTIB1007 以降 ('wvga' オプションになる前) の場合: i.MX51 EVK上のLTIB1007のu-bootのスクリプト(ハイパーターミナルにコピー/貼り付け): setenv bootcmd_mmc 'bootargs_base bootargs_mmcを実行します。MMCは0 ${loadaddr} 800 1800を読み取ります。bootm' setenv bootargs_mmc 'setenv bootargs ${bootargs} root=/dev/mmcblk0p1 rootwait rw init=/init' setenv bootargs_base' setenv bootargs console=ttymxc0,115200 di1_primary console=tty1' setenv bootcmd 'bootcmd_mmcを実行します' saveenv i.MX53 EVK上のLTIB1007のu-bootのスクリプト(ハイパーターミナルにコピー/貼り付け): setenv bootcmd_mmc 'bootargs_base bootargs_mmcを実行します。MMCは0 ${loadaddr} 800 1800を読み取ります。bootm' setenv bootargs_mmc 'setenv bootargs ${bootargs} root=/dev/mmcblk0p1 rootwait rw init=/init' setenv bootargs_base 'setenv bootargs console=ttymxc0,115200 di0_primary console=tty1' setenv bootcmd 'bootcmd_mmcを実行します' saveenv 次の printenv が必要です。 BBG Uブート > printenv ブート遅延=3 ボーレート=115200 loadaddr=0x90800000 netdev=eth0 ethprime=FEC0 uboot_addr=0xa0000000 uboot=u-boot.bin kernel=uImageの bootargs_nfs=setenv bootargs ${bootargs} root=/dev/nfs ip=dhcp nfsroot=${serveri p}:${nfsroot},v3,tcp bootcmd_net=run bootargs_base bootargs_nfs;tftpboot ${loadaddr} ${kernel};ブート m load_uboot=tftpboot の ${loadaddr} ${uboot} ethact=FEC0 bootargs=console=ttymxc0,115200 di1_primary root=/dev/mmcblk0p1 rootwait rw init =/init bootcmd_mmc=実行bootargs_base bootargs_mmc;MMC読み取り0 ${loadaddr} 800 1800;ボー オーティメット bootargs_mmc=setenv bootargs ${bootargs} root=/dev/mmcblk0p1 rootwait rw init=/i ニット bootargs_base=setenv bootargs console=ttymxc0,115200 di1_primary bootcmd=実行bootcmd_mmc stdin=シリアル stdout=シリアル stderr=serial 環境サイズ: 748/131068バイト BBG Uブーツ> ext3 パーティションの作成 SDカードリーダーを使用して、ext3パーティションを作成します。グラフィカルなパーティションマネージャーツールである gparted を使用することができます。ローンチgparted: $ sudo gparted 新しい ext3 パーティションを 20MB のオフセットで作成します。 Linuxのコピー LTIBによって生成されたrootfsフォルダをコピーするには、シェルに次のように入力します。 $ sudo cp -r /[…]/ltib/rootfs/* /media/FreescaleSD/ && sudo sync テストアプリケーション SDをスロットスロットに入れ、アプリケーションを起動します。パスワードは root です。 i.MX51 Linux
View full article
在 iMX95 torradex 板和 iMX8MM EVK 上启用 PCIe 端点框架 1.1 简介 PCI 端点框架是 Linux 内核中的一个系统,使开发人员能够测试 PCIe 端点设备的功能。Linux 内核模拟 PCIe 端点的行为并与 PCIe 总线交互。这有助于开发人员测试和验证 PCIe 根联合体,并提供一种结构化的方式来验证 PCIe 数据传输。 有关详细信息,请参阅官方文档 - 9. PCI 端点框架 — Linux 内核文档   本文主要介绍如何在imx95和imx8mm上启用End-point测试框架。 为了演示,iMX95 板将充当根联合体,imx8mm 将充当端点。 在End-point[imx8mm]上,框架创建端点控制器驱动、端点功能驱动,并使用configfs接口将功能驱动绑定到控制器驱动。 在 RC 中,将使用名为“pcitest”的用户空间实用程序从/向 Endpoint 读取和写入数据。 在 iMX EVK 上启用此功能相当简单,因此您遇到 启用此功能时出现问题。如果您在启用此功能时遇到问题,请随时发送短信,以便我们解答您的疑问。   在本练习结束时,您将能够使用/不使用 DMA 从 Root Complex[imx95] 向 End-Point[imx8mm] 发送和接收 PCIe 数据。   连接:-   iMX95 Torradex RC 将通过 M.2 PCIe 桥连接到 iMX8MM EVK iMX95 Torradex board [RC] connected to iMX8MM[EP] via PCIe bridge on M.2iMX95 Torradex 板 [RC] 通过 M.2 上的 PCIe 桥连接到 iMX8MM[EP]   1.2 imx95 和 imx8mm Linux 配置所需的更改:   内核配置 # # PCI Endpoint # CONFIG_PCI_ENDPOINT=y CONFIG_PCI_ENDPOINT_CONFIGFS=y CONFIG_PCI_EPF_TEST=y   1.3 如何运行PCIe端点测试框架? 启用 1.2 节中提到的 Linux 配置后,构建独立的 imx8mm 和 imx95 Linux 内核 注意:在更改内核配置后,您还可以使用 yocto 为 imx95 和 imx8mm 构建内核。我使用独立版本进行快速验证和调试。 构建完成后,您将在相应 imx 文件夹的 linux-imx/arch/arm64/boot/Image 位置获得 imx95 和 imx8mm 的内核映像。   将带有官方 Linux 工厂映像(最新版)的 imx8mm 刷入 emmc a. 将 imx8mm 的内核“映像”[在步骤 1 中使用端点配置构建] 替换为默认出厂映像附带的内核“映像”。 imx8mm emmc 分区上内核映像的位置 - /run/media/boot- mmcblk2p1/Image 注意 - 如果您使用的是 yocto,您也可以只刷入构建的 wic 映像,它将自动处理 [假设 wic 是使用 1.2 中提到的内核配置正确构建的] b. 使用此 dtb -> imx8mm-evk-pcie-ep.dtb 启动 Linux Linux BSP 中 DTS 的位置 - linux-imx/arch/arm64/boot/dts/freescale/imx8mm-evk-pcie-ep.dts 如果你仔细观察这个 dts:- 它只是禁用默认的 pcie0 节点并启用 pcie0_ep 节点。这是因为 PCIe 驱动程序在启动时需要来自 dtb 的某种指示,以便可以通过 Linux 内核中的 EPC 驱动程序创建端点控制器。 c. 运行以下脚本将 iMX8MM 配置为端点 root@imx8mmevk:~# cat conf_pci_ep   cd /sys/kernel/config/pci_ep/; mkdir functions/pci_epf_test/func1; cat 函数/pci_epf_test/func1/deviceid; cat functions/pci_epf_test/func1/vendorid; echo 0x1957 > functions/pci_epf_test/func1/vendorid; echo 0x0808 > functions/pci_epf_test/func1/deviceid; echo 16 > functions/pci_epf_test/func1/msi_interrupts; echo 8>函数/pci_epf_test/func1/msix_interrupts; ln -s 函数/pci_epf_test/func1 控制器/33800000.pcie_ep/   root@imx8mmevk:~# ./conf_pci_ep 0xFFFF 0xFFFF root@imx8mmevk:~#   3. 在板上刷入官方imx95图像。   与 imx8mm 类似,使用步骤 1 中构建的内核“Image”启动 imx95 板   在启动日志中,如果启用了调试,则可以观察到将调用 pci_endpoint_test 探测。在 Linux 提示符下,您可以看到将为其创建一个设备。 在 imx95 的 lspci 输出中,您可以看到 pcie 端点条目 0808 是我们在上面的步骤 2 中在端点 imx8mm 上提到的设备 id。 4.现在,在 imx95 上运行以下脚本:     root@imx95-19x19-lpddr5-evk:~# cat pcie_send_to_eptest.sh #!/bin/sh # SPDX-License-Identifier: GPL-2.0 echo“PCIe端点测试” pcitest -r -d -s 102400 pcitest -w -d -s 102400 root@imx95-19x19-lpddr5-evk:~# 上述脚本将从 EP 读取 102400 个字节,并将 102400 个字节写入 EP。   root@imx95-19x19-lpddr5-evk:~# ./pcie_send_to_eptest.sh PCIe热插拔测试 [2885.375620] pci-endpoint-test 0000:01:00.0:在 pci_endpoint_test_ioctl cmd:0x40085005 中 读取(102400 字节):正常 写入(102400字节):好的 这就是您在 IMX 上开始使用这个简单的端点测试框架所需的全部内容。如有任何疑问,请随时提问。
View full article
问答:如何使 16 位 DDR + OpenGL/OpenVG 在 imx6 solo 上工作? <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Q: OpenGL/OpenVG 可以在我们任何具有 16 位 DDR 总线的主板上运行吗? 这是在具有 16 位 DDR 总线的 imx6 solo 板上运行一些 GPU SDK 教程时的 GPU 状态转储: 挂载 rootfs VFS:在设备 0:12 上以只读方式挂载根(nfs 文件系统)。 释放初始内存:156K 启动 init GPU[0]: ************************** *** GPU 状态转储 *** **************************   axi      = 0x000000B1 空闲 = 0x7FFFFF86 FE 不空闲 SH没闲着 PA不闲着 SE 不闲着 RA 不闲着 DMA 似乎卡在了这个地址: 0x1882F230 dma低 = 0x08010583 dmaHigh = 0x80003400 dmaState = 0x00000904 命令状态 = 4 (PAR_ADR1_ST) 命令 DMA 状态 = 1 (CMD_START_ST) 命令获取状态 = 2 (FET_VALID_ST) DMA 请求状态 = 0 (REQ_IDLE_ST) 校准状态 = 0 (CAL_IDLE_ST) VE请求状态 = 0(VER_IDLE_ST) RA调试寄存器: [0x00] 0x0108C378 [0x01] 0x0042FB12 [0x02] 0x0042FB11 [0x03] 0x0000022C     [0x04] 0x10220033 [0x05] 0x0885C800 [0x06] 0xC054CBFE     [0x07] 0x68100000     [0x08] 0x00000000     [0x09] 0x00000000 [0x0A] 0x00000000 [0x0B] 0x00000000 [0x0C] 0x12344321     [0x0D] 0x12344321     [0x0E] 0x12344321 [0x0F] 0x12344321 签名 = 0x12344321(1 次读取尝试) TX调试寄存器:     [0x00] 0x00000000     [0x01] 0x00000000     [0x02] 0x00000000     [0x03] 0x00000000     [0x04] 0x00000000     [0x05] 0x00000000     [0x06] 0x00000000     [0x07] 0x00000000     [0x08] 0x00000000     [0x09] 0x00000000 [0x0A] 0x00000000 [0x0B] 0x00000000 [0x0C] 0x00000000     [0x0D] 0x00000000     [0x0E] 0x00000000 [0x0F] 0x00000000 无法获取签名(读取 0x00000000)。 FE调试寄存器: [0x00] 0x1882F450     [0x01] 0x08010594     [0x02] 0x00000001     [0x03] 0x00000256     [0x04] 0x00080049     [0x05] 0x0000000D     [0x06] 0x00009571     [0x07] 0x00007445     [0x08] 0x00000004     [0x09] 0x00000000 [0x0A] 0x00000000 [0x0B] 0x00000000 [0x0C] 0x00000000     [0x0D] 0xA3105D67 [0x0E] 0x000000D0 [0x0F] 0xBABEF00D 签名 = 0xBABEF00D(1 次读取尝试)   PE debug registers: [0x00] 0x0108C369     [0x01] 0x00000000 [0x02] 0x0108C369     [0x03] 0x00000000     [0x04] 0xA0000000     [0x05] 0xABC00000 [0x06] 0xBC000000     [0x07] 0xCDE00000 [0x08] 0xD04045C0 [0x09] 0x204045C0 [0x0A] 0x0D863084 [0x0B] 0x00000000 [0x0C] 0xBABEF00D [0x0D] 0xBABEF00D [0x0E] 0xBABEF00D [0x0F] 0xBABEF00D 签名 = 0xBABEF00D(1 次读取尝试)   DE debug registers:     [0x00] 0x00000000     [0x01] 0x00000000     [0x02] 0x00000000     [0x03] 0x00000000     [0x04] 0x00000000     [0x05] 0x00000000     [0x06] 0x00000000     [0x07] 0x00000000     [0x08] 0x00000000     [0x09] 0x00000000 [0x0A] 0x00000000 [0x0B] 0x00000000 [0x0C] 0x00000000     [0x0D] 0x00000000     [0x0E] 0x00000000 [0x0F] 0x00000000 无法获取签名(读取 0x00000000)。 SH调试寄存器:     [0x00] 0x0049AB4C [0x01] 0x0000000B     [0x02] 0x00000411 [0x03] 0x00020A95     [0x04] 0x00000000 [0x05] 0x000F024E [0x06] 0x000F424C [0x07] 0x010BEC30 [0x08] 0x0108C368 [0x09] 0x000020DF [0x0A] 0x00000693 [0x0B] 0x00000000 [0x0C] 0x00000000     [0x0D] 0x00000000     [0x0E] 0x00000000 [0x0F] 0xDEADBEEF 签名 = 0xDEADBEEF(1 次读取尝试) PA调试寄存器: [0x00] 0x640006FE     [0x01] 0x64000000     [0x02] 0x00000810     [0x03] 0x00000690     [0x04] 0x00000230     [0x05] 0x0000022D     [0x06] 0x00000000     [0x07] 0x00000000     [0x08] 0x00000003 [0x09] 0x0000AAAA [0x0A] 0x0000AAAA [0x0B] 0x0000AAAA [0x0C] 0x0000AAAA [0x0D] 0x0000AAAA [0x0E] 0x0000AAAA [0x0F] 0x0000AAAA 签名 = 0x0000AAAA(1 次读取尝试)   SE debug registers:     [0x00] 0x00000000     [0x01] 0x00000000     [0x02] 0x00000000     [0x03] 0x00000000     [0x04] 0x00000000     [0x05] 0x00000000     [0x06] 0x00000000     [0x07] 0x00000000     [0x08] 0x00000000     [0x09] 0x00000000 [0x0A] 0x00000000 [0x0B] 0x00000000 [0x0C] 0x00000000     [0x0D] 0x00000000     [0x0E] 0x00000000 [0x0F] 0x00000000 无法获取签名(读取 0x00000000)。 MC调试寄存器:     [0x00] 0x00000000     [0x01] 0x00000000     [0x02] 0x00000000     [0x03] 0x00000000     [0x04] 0x12345678     [0x05] 0x12345678     [0x06] 0x12345678     [0x07] 0x12345678     [0x08] 0x12345678     [0x09] 0x12345678 [0x0A] 0x12345678 [0x0B] 0x12345678 [0x0C] 0x12345678     [0x0D] 0x12345678     [0x0E] 0x12345678 [0x0F] 0x12345678 签名 = 0x12345678(1 次读取尝试) HI调试寄存器: [0x00] 0x0000F719 [0x01] 0x19C020C8     [0x02] 0x1EBC2426 [0x03] 0xAAAAAAAA [0x04] 0xAAAAAAAA [0x05] 0xAAAAAAAA [0x06] 0xAAAAAAAA [0x07] 0xAAAAAAAA [0x08] 0xAAAAAAAA [0x09] 0xAAAAAAAA [0x0A] 0xAAAAAAAA [0x0B] 0xAAAAAAAA [0x0C] 0xAAAAAAAA [0x0D] 0xAAAAAAAA [0x0E] 0xAAAAAAAA [0x0F] 0xAAAAAAAA 签名 = 0xAAAAAAAA(1 次读取尝试) 其他寄存器: [0x0040] 0x00924A66 [0x0044] 0x06F47370 [0x004C] 0x06F47370     [0x0050] 0x00DE8E6E     [0x0054] 0x00DE8E6E [0x0058] 0x00924A66 [0x005C] 0x001254D6     [0x0060] 0x001254D6 [0x043C] 0x00000000     [0x0440] 0x00000000     [0x0444] 0x00000000 [0x0414] 0x3C000000 [<8003b21c>] (unwind_backtrace+0x0/0xfc) 来自 [<80308114>] (_DumpGPUState+0x4ec/0x6b4) [<80308114>] (_DumpGPUState+0x4ec/0x6b4) 来自 [<80308324>] (gckOS_Broadcast+0x38/0xe8) [<80308324>] (gckOS_Broadcast+0x38/0xe8) 来自 [<80311008>] (gckEVENT_GetEvent+0x184/0x1b4) [<80311008>] (gckEVENT_GetEvent+0x184/0x1b4) 来自 [<80311294>] (gckEVENT_Submit+0x8c/0x328) [<80311294>] (gckEVENT_Submit+0x8c/0x328) 来自 [<8030dedc>] (gckCOMMAND_Commit+0x4d4/0xa28) [<8030dedc>] (gckCOMMAND_Commit+0x4d4/0xa28) 来自 [<8030c1d0>] (gckKERNEL_Dispatch+0x4b4/0x112c) [<8030c1d0>] (gckKERNEL_Dispatch+0x4b4/0x112c) 来自 [<80306580>] (drv_ioctl+0x108/0x250) [<80306580>] (drv_ioctl+0x108/0x250) 来自 [<800ed704>] (do_vfs_ioctl+0x80/0x5e0) [<800ed704>] (do_vfs_ioctl+0x80/0x5e0) 来自 [<800edc9c>] (sys_ioctl+0x38/0x60) [<800edc9c>] (sys_ioctl+0x38/0x60) 来自 [<80035580>] (ret_fast_syscall+0x0/0x30) 一个: 此 GPU 驱动程序堆栈转储表明,当 VDDPU_CAP 低于规格值(1.2V)时,GPU 卡住,因此 GPU 未正确供电。通过调整 PMU_REG_CORE[REG1_TARG] 已修复。 据我所知,GPU 驱动程序有一些 DDR 组配置,因此您可能会看到不同的问题。 i.MX6_全部
View full article
i.MX27 ADS 开发板视频 GST 视频流 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 以太网视频流 本节介绍如何使用 UDP 和 RTP 通过以太网传输视频。请务必安装最新的 gst-plugin-good 以确保最佳流媒体质量。 使用接收机器(将显示视频的机器)的 IP 地址定义环境变量 HOST。 $ 导出 HOST=XX.XX.XX.XX 你知道如何获得帽子吗?i.MX 27 视频 GST 电容 H264(MX->PC) 在i.MX27中: gst-launch-0.10-v mfw_v4lsrc捕获宽度=640捕获高度=480!mfw_vpuencoder宽度=640高度=480/ 编解码器类型=std_avc!rtph264支付!udpsink 主机=$HOST 端口=5000 在PC中: gst-launch-0.10 -v --gst-debug=2 udpsrc 端口=5000 / caps="application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)H264,/ 配置文件级别 ID = (字符串)42001e,sprop 参数集 = (字符串)Z0IAHqaAoD2Q,有效载荷 = (整数)96,/ ssrc=(guint)3296222373,时钟基数=(guint)2921390826,seqnum基数=(guint)35161”!/ rtph264depay!ffdec_h264!自动视频接收器 MPEG4 (MX->PC) 在i.MX27中 gst-launch-0.10-v mfw_v4lsrc捕获宽度=352捕获高度=288!mfw_vpuencoder 宽度=352 高度=255 比特率=64 编解码器类型=std_mpeg4!rtpmp4vpay 发送配置=true / !udpsink 主机=10.29.244.32 端口=5000 将 send-config 设置为 true 以随视频发送配置。确保更好的解码 PC gst-launch-0.10 -v --gst-debug=2 udpsrc port=5000 caps="application/x-rtp, media=(string)video, clock-rate=(int)90000, / 编码名称=(字符串)MP4V-ES,配置文件级别ID=(字符串)2,配置=(字符串)000001b002000001b59113000001000000012000c888800f50b042414103,/ 有效载荷=(int)96,ssrc=(guint)4006671474,时钟基数=(guint)3714140954,seqnum-base=(guint)29742“/ !rtpmp4vdepay!ffdec_mpeg4 !自动视频接收器 MPEG4(MX->MX) Sender gst-launch-0.10-v mfw_v4lsrc捕获宽度=640捕获高度=480!mfw_vpuencoder宽度=640高度=480编解码器类型=std_mpeg4!rtpmp4vpay 发送配置=true!udpsink 主机=$HOST 端口=5000 接收器 gst-launch-0.10 -v udpsrc 端口=5000 caps=“应用程序/x-rtp,媒体=(字符串)视频,时钟速率=(int)90000,/ 编码名称=(字符串)MP4V-ES,配置文件级别ID=(字符串)4,配置=(字符串)000001b004000001b59113000001000000012000c888800f514043c14103,/ 有效载荷=(int)96,ssrc=(guint)907905085,时钟基数=(guint)2029414707,序列号基数=(guint)22207”!rtpmp4vdepay!/ mfw_vpudecoder 编解码器类型=std_mpeg4 min_latency=true!mfw_v4lsink 同步=false 将 min_latency 设置为 true 可以为流媒体提供更好的延迟 H264 (MX->MX) Sender gst-launch-0.10-v mfw_v4lsrc捕获宽度=640捕获高度=480!mfw_vpuencoder宽度=640高度=480编解码器类型=std_avc!rtph264支付!udpsink 主机=10.29.240.51 端口=5000 接收器 gst-launch-0.10 -v udpsrc 端口=5000 caps="application/x-rtp,media=(string)video,clock-rate=(int)90000"!rtph264depay!mfw_vpudecodr 编解码器类型=std_avc!mfw_v4lsink 同步=false i.MX2x 回复:i.MX27 ADS 板视频 GST 视频流 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Hello, 我正在寻找 TI 处理器中的 i.mx6 处理器。您能告诉我您的 MX 板在解码时遇到了什么样的延迟吗?我正在尝试了解我对飞思卡尔提供的 gstreamer 元素的期望。 谢谢! Tim
View full article
我的 git 命令 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> $ git log --pretty=oneline --abbrev-commit 6f0c058 Linux 3.7-rc2 198190a 合并 git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-aarch64 的标签 'arm64-fixes' aeed41a arm64:修复汇编代码中的对齐填充 31fd84b 在 UNAME26 修复中使用clamp_t 8c1bee6 合并 git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 的分支“perf-urgent-for-linus” 45bff41 perf python:正确链接 libtraceevent
View full article
LPC553x:デバイスID チップのシルクスクリーンとDIEID 0x40000FFC)はチップのバージョンが1Bであることを示していますが、LPC55x3xのどのモデル番号か正確にはわかりません。レジスター(0x40000FF8)は0x501A11A1ですが、マニュアルで対応するモデルとパッケージが見つかりません。デバイスIDはどのモデル番号を指していますか? LPC55xx 日時:LPC553x:デバイスID こんにちは@lb_h  どういたしまして。 BR アリス 日時:LPC553x:デバイスID なるほど。ご支援のほど、よろしくお願いいたします。 日時:LPC553x:デバイスID こんにちは@lb_h  これはLPC5536JBD100デバイスです。RMをアップデートいたします。ご不便をおかけして申し訳ございません。 BR アリス 日時:LPC553x:デバイスID チップ用のシルクスクリーンです。 日時:LPC553x:デバイスID こんにちは@lb_h  チップのマーキングについて写真を撮っていただけませんか?そして、どこで買ったのか教えてください。感謝。 BR アリス 日時:LPC553x:デバイスID こんにちは、この質問の結果は見つかりましたか? 日時:LPC553x:デバイスID こんにちは@lb_h  内部で確認してみます。その後、最新情報をお送りします。 ご不便をおかけして申し訳ございません。 BR アリス
View full article
快速启动 – 延迟初始化 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 当使用休眠[1]来改进内核启动时,我发现内核初始化每个组件[2]花费了太多时间。 一种解决方案是删除不必要的模块以节省时间。另一种方法是延迟这些模块直到用户空间用完。这样它就不会因为希望在启动速度上获得好处而失去一些功能。这非常有用,因为休眠的触发点位于 late_initcall [3]。内核不需要进行太多模块初始化,因为休眠状态稍后会恢复这些模块状态。 详细实现在附加补丁中。 [1]:休眠是一种将系统内存内容存储到存储器的技术。然后设备就可以关机,开机后再读取内容。 [2]:组件表示子系统或驱动程序。 [3]:查阅kernel/power/hibernate.c中的software_resume Android i.MX53 i.MX6_全部 Linux 回复:Fastboot – 延迟初始化 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Hi JayTu, 至少你能告诉我一些高级输入或公共网站链接吗? 感谢与问候 鲁佩什 回复:Fastboot – 延迟初始化 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 你好,Roopesh, 抱歉,我不能。我们用了多种方法来改进它,现在还不允许公开。 您可以联系飞思卡尔营销部门以获取更多详细信息。 干杯, 杰伊 回复:Fastboot – 延迟初始化 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Hi Jay Tu, 您能否推荐一些有关 Android 休眠启动技术的文档? 提前致谢, 鲁佩什 回复:Fastboot – 延迟初始化 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 您能更具体地描述您的症状吗? 回复:Fastboot – 延迟初始化 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Hello jay tu 我正在尝试使用飞思卡尔 QSB 板在 android 2.3 上实现休眠模式。 在 Linux 文件系统上它运行良好。 但是当我切换到 android 并恢复时它挂起/崩溃。 你能帮忙吗? 谨致 普拉尚特
View full article
GStreamer i.MX6 图像捕捉 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 飞思卡尔没有特定的 GStreamer 元素来进行 JPEG 编码,因此应该使用标准“jpegenc”。 图像捕捉 使用网络摄像头 gst启动v4l2src num缓冲区=1!jpegenc!文件接收器位置=sample.jpeg 带有嵌入式摄像头 gst启动mfw_v4lsrc num缓冲区=1!jpegenc!文件接收器位置=sample.jpeg GStreamer i.MX6 管道上的更多管道 图形与显示 i.MX6_全部 Linux 多媒体 回复:GStreamer i.MX6 图像捕获 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 1)如何获得连续的图像序列? 2)如何通过 idpsink 传输图像?
View full article
S32K144中的PDB中断如何启用 如何通过 2108 的 Autosar RTD 启用 S32K144 MCU 的 PDB 模块中的中断 回复:S32K144中的PDB中断如何启用 Hi, 非常感谢您对我们的产品感兴趣并使用我们的社区。 没有带有 autosar mcal 的 PDB 示例,但您可以参考以下社区主题: https://community.nxp.com/t5/S32K/ADC-project-using-MCAL/td-p/1616331 希望它能对你有帮助。 祝你今天过得愉快! 回复:S32K144中的PDB中断如何启用 另外,在频道配置中。我无法为另一个频道选择频道索引值 0。那么我应该如何通过 PDB 为 ADC 提供多个通道呢?
View full article
i.MX U-bootとKernel間の8MP LVDSシームレスディスプレイ(连续显示) 次のパッチは、以下にリストされている環境でのみテストされていることに注意してください。他のソフトウェアバージョンまたはハードウェア機器がある環境では、他の編集が必要になる場合があります 環境: i.MX 8MP EVK LVDS:LVDS BOE EV121WXM-N10-1850 LVDSからミニSASパネルへ:XMX-LVDS-ミニサス ソフトウェア:LF5.15.71 Uブーツ: 1。「0001-enable-DY1212W-4856-in-U-Boot-for-i.mx8mp.patch」を適用して、EV121WXM-N10-1850をUブートステージで有効にしてください。ここで他のLVDSパネルを使用する場合は、このステップで特定のLVDSデバイスを移植する必要があります。 2.「0002-Modify-u-boot-to-show-logo-seamlessly-for-i.MX8MP.patch」を適用して、ディスプレイ関連モデルの電源がオフにならないようにし、シームレスなディスプレイを実現するのに役立ちます。 3. 元の U ブート ドライバーでは、PWM は有効になりません。したがって、「0003-Enable-PWM-and-BACKLIGHT-in-U-boot-and-modify-to-sho.patch」を適用してPWMを有効にします。 Kernel: 1. カーネルで「0001-Enable-DY1212W-4856-in-Kernl-for-i.MX8MP.patch」を適用して、EV121WXM-N10-1850を有効にします。ここで他のLVDSパネルを使用する場合は、この手順で特定のLVDSデバイスを移植する必要があります。 2。起動中にLVDS関連モデルが初期化されないように、「0002-カーネルの変更からロゴの表示にシームレスに」を適用してください。 3. 「0003-Enable-PWM-and-BACKLIGHT-in-Kernel-and-modify-to-sho.patch」を適用して、カーネルでパネルのバックライトを編集できることを確認します。 グラフィックスとディスプレイ i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Linux
View full article
使用带有 TinyUSB 的 MCX A 创建带有基于 WebUSB 的 GUI 的 BLDC 电机控制器测试工具。 简介 MCX A 是 MCX 通用微控制器设备系列的最新成员之一。所有 MCX A 设备都包含一个带有板载 PHY 的全速 USB 设备 (USBFS) 控制器。小型/低引脚数设备封装(例如 5mm 2 32QFN)与全速 USB 位置 MCX A 的组合可用于有趣的 USB 外围设备应用。 除了 MCUXPresso SDK 内置的免费 NXP USB 堆栈外,MCX A 还可与流行的开源TinyUSB堆栈配合使用。TinyUSB 是 Adafruit 支持的小型且高度灵活的 USB 堆栈,并提供了在 MCX A 上实现 USB 功能的替代方法。TinyUSB GitHub 存储库上的示例是在命令行中使用 make 或 CMake 构建的。但是,TinyUSB 很容易与 MCUXPresso 项目和 MCXA153 SDK 集成。在本文中,我们将展示如何使用 MCUXpresso IDE 设置 TinyUSB,并演示如何使用 FRDM-MCXA153 创建用于 BLDC 电机控制器测试的霍尔效应传感器模拟器。 (在 “我的视频” 中查看) TinyUSB/MCUXpresso集成 TinyUSB 提供了一个简单的入门指南,用于配置任何构建系统。 步骤1:创建一个新的MCUXpresso项目 为 MCXA153 创建一个新的 MCUXpresso 项目。您可以从“ hello_world ”应用程序作为模板开始。我们将这个项目称为“ encoder_sim ”。 步骤 2:将 TinyUSB 源文件添加到项目文件系统 克隆TinyUSB 存储库并将其放置在包含MCUXPresso项目的文件夹中。 注意:如果您将主应用程序放在 git 存储库中,您还可以对 TinyUSB 存储库进行 git 子模块处理,这样您就可以保留最新版本或锁定到特定的提交。 也可以只下载文件的静态副本并将其放入项目文件系统中。无需将 TinyUSB 文件夹直接放在 MCUXpresso 应用程序文件夹内。我们可以选择主项目源树之外的文件夹,但此示例假设 TinyUSB 与 MCUXpresso 应用程序位于同一文件夹中。 步骤 3:配置 MCUXpresso 以将 TinyUSB 添加到构建中。 MCUXpresso 将检测额外的 TinyUSB 文件夹,但我们需要告诉它在 TinyUSB 文件夹中构建一组特定的文件。以下是如何配置 Eclipse/MCUXpresso 来构建tinyusb/src文件夹中的文件 步骤 4:更新包含路径 将tinyusb/src和 tinyusb/hw 文件夹添加到项目的包含路径,以便我们的应用程序可以找到所有核心 TinyUSB 头文件。 步骤 5:添加构建配置符号 我们需要在项目中添加两个构建符号: BOARD_TUD_RHPORT=0 CFG_TUSB_MCU=OPT_MCX_MCXA15 步骤6:排除dcd_khci.c 从项目构建中排除tinyusb/src/portable/nxp/khci/dcd_khci.c 。 注意:我们必须删除它,因为我们包含了整个 TinyUSB 源代码树以及所有不同供应商的硬件支持。TinyUSB 的未来版本可能不需要此步骤。此示例是围绕tusb_option.h 中指定的 0.17 版本构建的。 步骤 7:使用 TinyUSB 示例配置您的应用程序 此时,TinyUSB 的核心已成为您项目的一部分。从这里您可以使用TinyUSB/examples/device中的示例特定文件。在几乎所有情况下,您都需要tusb_config.h ,usb_descriptors.c ,项目中的usb_descriptors.h 。 对于此示例,我使用webusb_serial示例作为 USB 描述符和 TinyUSB 配置的起点。 注意:当您研究 TinyUSB 示例时,您将看到对board_led_write()和board millis() 等函数的通用调用。TinyUSB 在使用命令行工具构建时有一个小型板 HAL 作为其示例。您可以根据需要在自己的应用程序中移植这些功能或删除它们。 为了使 TinyUSB 运行,需要在启动时调用tusb_init() 。对于裸机应用程序,tud_task(); 需要定期调用来处理 USB 活动。tud_int_handler()需要连接到 MCXA IRQ 处理程序。 您可以研究本文附带的示例以及查看TinyUSB示例。 从这里,您可以添加您的应用程序逻辑。这些示例对于如何使用设备类别提供了很好的参考。 应用示例 - 使用 WebUSB GUI 的 BLDC 霍尔效应传感器模拟器 在 BLDC 电机速度控制器的开发过程中,我们需要一种方法来模拟霍尔效应传感器的输出信号。总体概念是构建一个测试工具,以编程方式生成三相霍尔效应信号,以便我们可以测试电机控制 BLDC 逻辑。我们使用FRDM-MCXA153来制作该概念的原型。 TinyUSB 有许多有趣的设备类示例,并且可以直接集成到 MCUXpresso 项目中。此示例实现了复合设备自定义供应商类接口和 CDC(串行端口)接口。我们将展示如何通过WebUSB API将数据发送到 MCXA153 自定义供应商类接口。 WebUSB(和 WebSerial)是一种浏览器 API,它支持使用 Google Chrome 或 Microsoft Edge 在 HTML/JavaScript 页面内与 USB 设备进行交互。WebUSB API 可以与自定义供应商设备中的原始端点通信,而无需特殊的驱动程序。WebSerial 是一种允许与标准串行端口交互的 API。这使得无需安装特殊驱动程序或软件即可实现自定义 USB 硬件 GUI。也可以使用 Android 平板电脑和智能手机。 您可以在此处找到示例 MCUXpresso 项目: https://github.com/wavenumber-eng/bldc 示例存储库内的docs文件夹有一个简单的 HTML/JavaScript 示例,该示例托管在 GitHub 页面上。您可以浏览到https://wavenumber-eng.github.io/bldc/使用 Chrome 或 Microsoft Edge。 网络界面有一个滑块,可以实时设置模拟霍尔效应传感器的换向/步进速率。FRDM-MCXA153 在 GPIO 端口 1-10、1-12 和 1-13 上输出信号。因为我们同时使用了 USB-CDC 和供应商类设备,所以我们可以通过我们的 Web GUI、简单的串行终端(如 Putty)或任何其他支持串行端口的 OS GUI 框架进行控制。WebUSB 接口提供了一个有趣的用例供演示。 (在 “我的视频” 中查看) WebUSB 设备的一个有趣的方面是,您可以实现一个特殊的描述符,它将触发使用 GUI 加载网页的位置通知。 总结 NXP MCXA153 是一款适用于小型嵌入式 USB 设备的有用微控制器。结合 SDK 内置的 USB 堆栈,或者结合开源的 TinyUSB 堆栈,可以轻松构建您自己的 USB 协议桥接器和测试工具。在本文中,我们展示了如何将 TinyUSB 集成到 MCUXpresso 项目中,并使用 USB CDC / WebUSB 应用程序演示了 BLDC 电机控制器测试应用程序。 参考文献 WebUSB/CDC  MCUXpresso  + TinyUSB project https://github.com/wavenumber-eng/bldc TinyUSB 存储库 https://github.com/hathach/TinyUSB FRDM-MCXA153 产品页面 https://www.nxp.com/part/FRDM-MCXA153 MCXA153 产品页面 https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/mcx-arm-cortex-m/mcx-a-series-microcontrollers/mcx-a14x-15x-mcus-with-arm-cortex-m33-scalable-device-options-low-power-and-intelligent-peripherals:MCX-A14X-A15X WebUSB https://wicg.github.io/webusb/ https://webserial.io/ https://wicg.github.io/serial/ NXP MCXA153 是一款适用于小型嵌入式 USB 设备的有用微控制器。结合 SDK 内置的 USB 堆栈,或者结合开源的 TinyUSB 堆栈,可以轻松构建您自己的 USB 协议桥接器和测试工具。在本文中,我们展示了如何将 TinyUSB 集成到 MCUXpresso 项目中,并使用 USB CDC / WebUSB 应用程序演示了 BLDC 电机控制器测试应用程序。 开发板 MCXA USB
View full article