タスク #2098
未完了CANルータ バージョン出力機能
0%
説明
・CAN定期送信
・1F00600hxによりFWVersion、FWRevisionを定期送信(1500ms)
・NKP
・NKP 0x22によりFWVersion、FWRevisionを読み出し
・MKP 0x50によりソフトウェアバージョン、ソフトウェアバージョン(枝)を読み出し
ファイル
上田 耕市 さんが3ヶ月前に更新
■ソースコードをリリースしました。:REA001-000002
■デバッガを使用せずに動作させたところ、
NKPコマンドの「現在のモード取得」に不具合が発生する場合がありました。
これを改善するため、以下のリンク・オプション設定を変更しました。
・出力コード
・セクション終端にパディングデータを埋め込む:いいえ⇒はい(-PADDING)
不具合現象は以下の通りです。
起動直後:10 01 01 AA AA AA AA AA 送信 ⇒ 11 9B AA AA AA AA AA AA 受信
不具合原因(推測)
bssセクションのサイズが4バイトの倍数になっていなかったため
bssセクションの最後に割り付けられていた「DR_MNKPCMode_UC」「DR_MNKPCModePre_UC」
にゴミが入っていた。
■作成いただいたソースコードから以下の修正を行いました。
・NKPマルチフレーム送信時の不具合(IDが0x0000になる)を改善
変更ファイル:mNKPSCAN.c
・DD_MNKPSCAN_RES_ID_SLの定義場所を変更
変更ファイル:mNKPSCAN.h、mNKPSCAN_setting.h
・DD_ACAN_PERIODICSEND_TM_INIT_USを削除
変更ファイル:aCAN.c、aCAN.h
・DR_ACANPeriodicSendCnt_USの初期値を変更(1⇒0)
変更ファイル:aCAN.c
・Id_SLの設定場所を変更
変更ファイル:aCAN.c
・インクルードファイルの順番を変更
変更ファイル:多数
・Date・historyの記載漏れ対応
変更ファイル:多数
■今後の作業
・詳細設計書、関数設計書作成
・単体テスト、結合テスト
結合テストはできるだけデバッガを外した状態で実施してください。