データ転送
- 実装済み:
- UART は USB 経由で仮想 UART に接続可能
- J-Link 経由の RTT および ST-Link 経由の RTT
- 小さな独立したマイクロコントローラーは、GPIO、I²C、SPI、CAN、LIN などへのインターフェイス ブリッジとして常に使用できます。
- FTDI のチップを使用すると、たとえば Adafruit FT232H ブレークアウト、GPIO、I2C、SPI に簡単にアクセスできることを確認できます。
表示サーバーオプション
コンソール内でtrice ds
起動し、オプション: third_party/alacritty をローカルまたはリモート PC 上で起動し、たとえばtrice log -p COM15 -ds
のように複数のtriceツール インスタンスに接続します。
ドキュメント
- https://interrupt.memfault.com/blog/trice (少し古いです)
- Trice ユーザーマニュアル (中断ブログの実現情報もカバー)
- 終了した項目も含めて、論点や議論を確認します。
- ターゲットのソースコード、特に triceDefaultConfig.h を読みます。
- CLI オプションを表示するには、ターミナルで
trice help -all
を実行するか、tricehelpall_test.go を読んでください。 - ./internal/emitter/lineTransformerANSI.go を調べて、必要に応じて変更します (その後、
go install ./cmd/trice/...
必要があります。)
SEGGER-RTT を介したダイレクトアウト モードでの Trice インスツルメンテーション プロジェクトの VS-Code と Clang を使用したデバッグ
(詳細については、フォルダー ./example を参照してください。)
トライスキャッシュ
Trice バージョン 0.70.0 以降では、コマンドtrice insert
およびtrice clean
に Trice -cache
CLI スイッチを追加で使用できるようになりました。このスイッチは、ユーザーがホーム ディレクトリに.trice/cache
フォルダを作成する場合にのみ有効です。 (トライキャッシュ仕様)
いつ使用するか
trice i
コンパイル前のステップとして使用し、 trice c
コンパイル後のステップとして使用して、作業時にプロジェクトのソース コードに ID を含めず、つまりコンパイル時のみに ID を取得し、全体を高速化したい場合もの。
仕組み
Trice キャッシュは、ID の挿入とクリーニングの繰り返しを避けるために、処理後にtrice i
またはtrice c
に渡されたすべてのファイルのコピーを保持します。コピーは、その間で編集されていないすべてのファイルに対してtrice i
またはtrice c
と同じ結果を得るために使用されます。編集されたファイルは通常どおり処理され、その後キャッシュが更新されます。ファイルのコピーはファイルの変更時刻を変更せずに実行されるため、ファイルから ID が一時的に削除された場合でも、ビルド システムは変更されていないファイルを再度処理しません。
ヒント
ビルド システムがソース ファイルも変更する場合は、特別な注意が必要です。
たとえば、自動フォーマッタは、 tice insert
コマンドの前にアクティブになる必要があります。
どのモードを使用しますか?
- 開発には SEGGER_RTT を使用したダイレクト モードをお勧めします。
- ほとんどのユースケースは、TRICE_MULTI_PACK_MODE (転送データが少ない) の TRICE_BUFFER == TRICE_RING_BUFFER (必要な RAM が少ない) の遅延モードでカバーできます。
プロジェクトのステータス
Trice は完全に使用可能であり、既知のバグはありません (問題を参照)。
未来
ドキュメントは、クイック スタート ヘルプの追加などにより改善される可能性があります。リモート プロシージャ コールなどの追加機能を記述でき、おそらく C で記述された別の tlog により、 Go がサポートするプラットフォームだけでなく、あらゆるプラットフォームでのログ記録が可能になります。
サポート?
はい、お願いします - または単にそれです。 ☺
Github アカウントでスポンサーになる
または
または
リポジトリのクローンを作成します。
git clone https://github . com/rokath/trice . git
同様のプロジェクト
- baical.net (C)
- コールスタックロガー関数の計測 (プログラムの実行フローをトレースする方法)
- 動的 Printf ブレークポイントを使用したデバッグ (Eclipse IDE オプション)
- defmt (錆び)
- 診断ログとトレース (AUTOSAR)
- elog (フットプリントとメモリ使用量を最小限に抑えた組み込みロガー)
- J-Linkシステムビュー(SEGGER)
- シンボルを使用したロギング - The Embedonomicon
- MCUビューア
- Memfault コンパクト ログ ライブラリ
- メタルシリアルライブラリ
- 自動運転車のための最小限の構造化ロギング (C++、クローズドソースの話)
- NanoLog (Linux C++)
- Percepio Tracealyzer (視覚的トレース診断)
- アカザ痕跡のトークン化
- Postform (C++ での文字列インターンによるフォーマット実験の延期。 defmt Rust クレートからインスピレーションを得た)
- qpspy (C/C++)
- リアルタイムのバイナリ データ ロギング/トレース ツールキット
- Serial-Studio (データ視覚化)
- トレース (Linux C/C++ アプリケーション用の API トレース フレームワーク)
- Zepyr 辞書ベースのロギング
(トップに戻る)