メインコンテンツ

このページは前リリースの情報です。該当の英語のページはこのリリースで削除されています。

MISRA C2000 ペリフェラルと生成コードの C 準拠

MathWorks® は、C2000™マイクロコントローラーブロックセット 内のデバイス ドライバー ブロックによって生成された C コードを評価します。この取り組みの結果を、以下の準拠概要表で参照できます。これらの表では、コンプライアンスを達成するために使用する方法も示しています。

  • 準拠: ルール/ディレクティブへの準拠は、コード生成プロセス、モデリング ガイドライン、またはモデル アドバイザー チェックに準拠することで実現されます。該当する場合、指令または規則を満たすために実行できるコンプライアンス方法またはアクションに関する情報を提供する説明メモがあります。

  • 逸脱: ルールまたは指令に準拠していません。

これらの表は、公開されている MISRA™ C:2023 ドキュメントと一致しています。MISRA C:2023 規約では、次のガイドラインが統合されています。

  • MISRA C:2012 の規則と指令。

  • 技術的訂正 1 (TC1) および技術的訂正 2 (TC2) に説明が追加されました。

  • 修正 1 (AMD1)、修正 2 (AMD2)、修正 3 (AMD3)、および修正 4 (AMD4) に追加された新しいルールと変更。

これらの表は、 MISRA C:2012 重要なシステムでの C 言語の使用に関するガイドライン ドキュメントのセクション 5.3 に従って、プロジェクトの MISRA 準拠ステートメントを準備するときに使用できます。C2000 マイクロコントローラー Blockset はマルチスレッドおよびアトミック操作を含むコードを生成しないため、表には MISRA C:2012 Amendment 4 は含まれません。

メモ

C2000 マイクロコントローラー Blockset から生成されたコードは、これらのコーディング ガイドラインの大部分のサブセットに準拠しています。これらの表のルール/ディレクティブの非準拠ステータスは、自動生成されたコードに対して識別される必須カテゴリと必須カテゴリには該当しません。評価にはユーザー定義関数は含まれません。プロセッサ間通信(IPC)ペリフェラルは、MISRA C 準拠の対象外です。

「実装」

命令準拠
命令 1.1

非準拠

「コンパイルとビルド」

命令準拠
命令 2.1

非準拠

「要件トレーサビリティ」

命令準拠
命令 3.1

非準拠

「コード設計」

命令準拠
命令 4.1

準拠

命令 4.3

非準拠

命令 4.10非準拠

「標準C環境」

ルール準拠
1.5準拠

「未使用コード」

ルール準拠
2.1

準拠

2.2準拠

「コメント」

ルール準拠
3.1

非準拠: サポートされていないブロック名のチェック (Embedded Coder)

3.2非準拠

「文字セットと語彙規則」

ルール準拠
4.1非準拠

「識別子」

ルール準拠
5.1

準拠

5.8

準拠

「宣言と定義」

ルール準拠
8.2準拠
8.3準拠
8.6非準拠
8.8準拠

「初期化」

ルール準拠
9.1

準拠

「ポインタ型変換」

ルール準拠
11.1非準拠
11.3

非準拠

11.6非準拠
11.8

準拠

「表現」

ルール準拠
12.2

非準拠

「副作用」

ルール準拠
13.5

準拠:

偏差

「制御文式」

ルール準拠
14.3

準拠

「制御フロー」

ルール準拠
15.6準拠

"Functions"

ルール準拠
17.3

準拠

「前処理ディレクティブ」

ルール準拠
20.9準拠

「標準ライブラリ」

ルール準拠
21.1

準拠

21.2

準拠

参考

(Embedded Coder) | (Embedded Coder)