Embedded Target for Motorola MPC555 Release Notes | ![]() |
既知のソフトウェアとドキュメントの問題
本節では、Version 1.0.1 での既知のソフトウェアおよびドキュメントの問題を説明します。
必要なソフトウェア環境変数
これは、Embedded Target for Motorola MPC555 User's Guide の "Software Requirements"を修正したものです。
上記の節では、Metrowerks CodeWarrior for Embedded PowerPCと共に利用した場合に、Embedded Target for Motorola MPC555の機能が利用可能であると誤って記述されています。
実際には、(Metrowerks CodeWarriorではなく)Embedded Target for Motorola MPC555の現在の制限のため、PILおよびAlgorithm Export targetsのみがMetrowerks CodeWarriorの利用に対してサポートされます。Real-time targetは、Metrowerks CodeWarriorの利用に対してサポートされません。
完全な機能(PIL, Real-time, Algorithm Export targets)は、Wind River Systems Diab cross-compilerおよびWind River Systems SingleStep debuggerと共に利用した場合にサポートされます。
Acceleratorモード
Embedded Target for Motorola MPC555ライブラリのCANブロックを含むモデルは、Simulink Acceleratorモードでは適切に機能しません。
CANブロックとCAN Download Control Panel
candnload
ユーティリティは、CANカードおよびVector-Informatikのドライバが正常にインストールされていることが必要です。
vcand32.dll
ライブラリを置き、vcand32.dll
がインストールされた位置のパスをWindowsのシステムパスに追加する必要があります。
システムパスが正確に更新されていない場合は、CAN Drivers (Vector) blocksetの利用およびcandnload
ユーテリティにおいてエラーが発生します。
しかしながら、ラップトップでCANCardXをお使いの場合は、CAN転送キューがフラッシュされる方法には違いがある場合があります。この場合、ダウンロードは失敗する場合があります。この制限に対処するには、常に少なくとも1つのenabled CAN デバイスがCANバス上にあることを確認してください。これを行うための1つの方法は、Y-cableを使ってPC上のCAN 端子とターゲット上のCAN端子を接続することです。
この方法でPC上で2つ目のCAN端子をお使いの場合は、初期化されていることを確認してください。そのためには、Vector Informatik driver softwareが提供するbtest32ユーティリティをお使いください。PCコマンドプロンプトからbtest32ユーティリティを実行することができます。つぎの例は、ボーレート500000でbtest32を実行します。
コンパイラの最適化
非常にまれな場合において、コンパイラの欠陥により、Embedded Target for Motorola MPC555が生成したコードに適用されるコンパイラの最適化により、コード自体が正確であっても。実行プログラムが不正確な結果を作成する場合があります。
RTターゲットの利用時には、コンパイラの最適化により発生する問題に対処するために、Optimize compiler forオプションをnoneに設定してください。
PILおよびAEターゲットに対しては、コンピュータの最適化レベルを下げたり、最適化をオフにする方法は、コンパイラのドキュメントを参照してください。それから、必要な最適化スイッチを見つけ、Simulation ParametersダイアログのReal-Time Workshopペインの Target configurationカテゴリの Make command フィールドにオプションを直接入力することができます。
デフォルトでは、Make commandフィールドは、以下のコマンドを含みます。
最適化スイッチを追加するには、以下をmake_rtwコマンドに追加してください。
たとえば、コンパイラに対する正しいスイッチが-O
の場合は、Make commandフィールドは以下を含みます。
Flash Memory Lifetime
この注意は、Embedded Target for Motorola MPC555 User's Guide の "Setting Up Your Target Hardware"のフラッシュメモリプログラミングに関するステートメントを明確化したものです。
MPC555フラッシュメモリは、lifetimeに制限があります。これは、フラッシュメモリがプログラミングされるたびに短縮されます。product lifeを拡張するために、Motorolaは必要な場合にのみフラッシュプログラミングを利用することを推奨します。
Hardware Clock Configuration
最も遅いクロック周波数よりも遅いサンプルレートを選択した場合は、生成されるリアルタイムコードはクラッシュします。Simulinkは、そのような場合にはワーニングは表示しません。
リアルタイムターゲットに対しては、MPC555 Resource ConfigurationブロックのSystem Configurationパラメータから水晶周波数を設定することができます(Embedded Target for Motorola MPC555 User's Guide のSystem Configuration Parametersを参照).
PILターゲットをお使いの場合は、20 MHz 水晶周波数をもつボードの利用を推奨します。
ハードウェアが4 MHz 水晶周波数を利用する場合は、MPC555 Resource ConfigurationブロックのSystem Configurationパラメータを修正する必要があります。Oscillator Frequencyパラメータを4 MHzに変更し、USIU_PLPRCR_B_MFパラメータを4に変更します。
gmd_ppc_cmf_300_A61_200_04.c
のコピーを作成し、コピーの名前をgmd_ppc_cmf_300_A61_200.c
に変更します(step 1で削除したファイルを置き換えます)。
matlabroot/toolbox/rtw/targets/mpc555dk/common/drivers/libmods/timers/clocks_common.h
bootcode_flash.bin
ファイルを生成します。
bootcode_flash.bin
をEmbedded Target for Motorola MPC555 User's Guide のDownloading Boot Codeで記述されているように、ターゲットハードウェアでプログラミングします。
PILターゲット
MSDEVDIR
およびPATH
環境変数が以下のように正しく定義されていることを確認してください。
LPT
速度の設定により発生する場合があります。この注記は、parallel端子速度の設定方法を説明します。
pildnload
ユーティリティについて: 速度の値は、以下のファイルから得られます。
matlabroot\toolbox\rtw\targets\mpc555dk\common\tools\diab\sdsgetport.m.
を編集して、パラメータ値を= 記号の右側に変更します。正確な速度の値がわからない場合は、Delay値を得るまで、Embedded Target for Motorola MPC555 User's Guide のConfigure SingleStep Parametersに記述されている手順に従うことを推奨します。その後に、この値を速度値として入力してください。
Real-Time Target
Embedded Target for Motorola MPC555 real-time targetを利用してモデルからコードを生成するためには、 MPC555 Resource Configurationブロックがモデルに含まれなければなりません。MPC555 Resource Configurationブロックは、MPC555デバイスドライバブロックを含まないモデルに対しても必要です。
SingleStep Debugger
TargetDebuggerExe
で指定されるSingleStep debuggerのパスは、PC上の実際のハードウェアドライブ、あるいはマッピングされたドライブのいずれかで実行ファイルの絶対パスを指定する必要があります。UNCは利用しないでください。
その他の制限とワーニング
preloadfcn
コールバックを修正します。MPC555 Resource Configurationブロックを既にもつモデルのpreloadfcn
コールバックのコマンドを追加したい場合は、既にインストールしたコマンドを削除しないでください。
preloadfcn
コールバックをコピーし、コマンドに追加してください。その後で、preloadfcn
をマージされたコマンドに設定してください。preloadfcn
が失敗する場合は、preloadfcn
はすべてのモデルに対して同一であるので、MPC555 Resource Configurationブロックをもつモデルからコマンドを取得することができます。以下のコマンドによってpreloadfcn
を取得することができます。
![]() | 機能のまとめ |