CAN受信デバッグは,RS-CANのチャネル間通信機能を使用し,任意のチャネルに対して連続でCANのフレームを送信することで,チャネルの受信処理のデバッグを簡易に行う機能です。
本機能は,2チャネル以上のRS-CANユニットを搭載しているデバイスに対応しています。 |
ソリューション一覧 パネルを開き,CAN受信デバッグの[GO]ボタンをクリックすると,CAN受信デバッグ パネル【Full-spec emulator】【E1】【E20】が開きます。
本機能をご利用頂くことで,マイクロコントローラ単体でのCAN受信処理の動作検証が可能です。
RS-CAN全体の設定として,クロック・ソースの選択,タイムスタンプ機能を使用するかどうか,DLCチェック機能を使用するかどうか,DLC置換機能を使用するかどうかを設定します(「RS-CAN全体設定 ダイアログ【Full-spec emulator】【E1】【E20】」参照)。
以下の図のように,RS-CANにはclk_xincan,clkc,pclkの3系統のクロック入力があります。
このうちclk_xincan,clkcは図の①のスイッチで各チャネルのボーレート・プリスケーラに入力するクロックを選択する必要があります。
それぞれのクロック入力がマイクロコントローラのどのクロック源に接続されているかはデバイスごとに異なります。詳細は,デバイスのハードウェア・マニュアルを参照してください。
フレーム受信時間のタイムスタンプを受信バッファ,または受信FIFOに格納する機能です。
CAN受信デバッグ時は,タイムスタンプ用タイマの入力クロックはpclkを2分周したものになります。
RS-CANにてフレーム受信時に,DLC(Data Length Code)によるフィルタを行うかどうかを設定します。
この設定は,チャネルごとではなくRS-CANモジュール全体の設定として効くため,RS-CAN全体の設定として用意しています。
DLCチェック機能を使用すると,受信チャネル設定 ダイアログ【Full-spec emulator】【E1】【E20】の受信ルールで設定したデータ・サイズ以上のフレームが通過するようになります。
DLCチェック機能のフィルタ通過時に,DLCコードを受信ルールに設定されているデータ・サイズの値に置換します。
CAN受信デバッグの対象となる受信チャネルのチャネル番号,受信スピード,使用する受信バッファ数,使用する受信FIFO番号,受信ルールを受信チャネル設定 ダイアログ【Full-spec emulator】【E1】【E20】で設定します。
CAN受信デバッグの対象となる受信チャネルのチャネル番号を指定します。
お客様のデバッグしたい受信処理を呼び出すチャネルを指定してください。
ボーレート・プリスケーラの分周比,プロパゲーション・タイム・セグメントの時間単位,フェーズ・バッファ・セグメントの時間単位,再同期ジャンプ幅の時間単位を設定することで受信スピードを決定します。
ボーレート・プリスケーラは,「<1> クロック・ソースの選択」で選択したクロックの分周比を設定します。
RS-CANで1ビットのデータを取得するサンプル時間と,プロパゲーション・タイム・セグメント,フェーズ・バッファ・セグメント,再同期ジャンプ幅の関係は以下のとおりです。この関係により,最終的な受信スピードが決定します。
RS-CANではチャネルごとの受信バッファは連続した領域であり,受信バッファ数を指定すると0~(受信バッファ数-1)番までの受信バッファを指定したことと同じ意味になります。
受信バッファは番号1につき1フレーム分のデータを格納します。
RS-CANでは受信フレームの格納にFIFOを使用できます。1つのFIFOは128フレーム分のデータを格納できます。
受信したフレームをどの受信バッファ/FIFOに振り分けるのかのフィルタの設定です。
ID,フレーム種類,データ・サイズによってフィルタリングします。
受信ルールごとにラベルを指定することでどの受信ルールが適用されたのかを判別できます。
デバッグ用フレームの送信に使用するチャネル番号とフレームを連続で送信するインターバル時間を送信チャネル設定 ダイアログ【Full-spec emulator】【E1】【E20】で設定します。
CAN受信デバッグはRS-CANモジュールのチャネル間通信機能を使用するため,フレーム送信用に1チャネル占拠します。
使用していないチャネルか,デバッグ対象でないチャネル番号を指定してください。
連続送信インターバル時間の基準クロックは,「<1> クロック・ソースの選択」の図にあるように,pclkを2分周したものになります。
基準周波数に対する分周比,その分周したクロックを何クロック分使用するか,またそれを10倍するかどうかを指定します。
送信するフレームを送信フレーム設定 ダイアログ【Full-spec emulator】【E1】【E20】で設定します。
CAN受信デバッグで指定可能なCANフレームは,データ・フレームとリモート・フレームのみです。
デバッグ対象のチャネルに送信したいフレームの種類,ID,データ・サイズ,データを設定してください。
設定したフレームは「<2> 連続送信インターバル時間」で設定したインターバル時間で送信します。
CAN受信デバッグ実行直後に設定を反映するか,指定アドレス実行時に反映するかを指定します。
CAN受信デバッグはRS-CANモジュールの設定を変更するため,ユーザ・コード上のRS-CANモジュール設定処理が終わった後に設定を反映するようにしてください。
デバッグを行いたい受信処理の関数にブレークポイントを設定し,パネル上のツールバーから を押下することでCAN受信デバッグを開始します。