バックナンバーはこちら。
https://www.simulationroom999.com/blog/model-based-of-minimum-2-backnumber/
はじめに
前回はXCP Basicの入手とインストール。
そして開発環境としてのVisual Studio 2017 express。
ついでにVirtual CAN Busのインストールをやった。
今回は入手したXCP BasicのビルドをしてみるためXCP Basicのフォルダ構成を確認してみる。
登場人物
博識フクロウのフクさん

イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1
エンジニア歴8年の太郎くん

イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1
XCP Basicのソースコード構成

まずインストールされたXCP Basicのディレクトリを参照してみよう。

こんな構成になってるね。
- Doc
- EULA
- Samples
- XCP Basic Driver
- Changes.txt
- README.TXT

DocにXCPの仕様書や、XCP Basicの仕様書が入ってる。
まぁ内容的にはXCP Professionalをベースにしたものにはなってるな。

EULAは使用許諾。
SampleにXCP Basicのサンプルコード。
XCP Basic Driverが純粋なXCP Basicとしてのソースコード。
って感じになっている。

とりえあずSampleを見ればOKかな。
XCP BasicのSampleフォルダ

Sampleフォルダの中も確認してみよう。

こんな感じだね。
- CAN
- RS232C
- SPI
- XCPsim

これらのフォルダには、
それぞれの物理層を想定したサンプルが入っている。

XCPsimは?

XCPsimはPC上でシミュレーションすることを想定してて
インターフェースとしてはEthernet(TCP/UDP)、CAN(VN16xxインターフェース)を想定している。

ということは
XCPsimが今回僕たちがやりたいことをおおよそやってくれてる感じなのかな?

そうだね。
Visual Studioでビルドすることを想定しているので
とりあえず動かすだけならそのままでも動いちゃうかも。

おー!
それはラッキーだ!
じゃーXCPsimの中を見てみよう
XCPsimフォルダ

XCPsimのフォルダの中身はソースコードとVCのプロジェクトファイルとソリューションファイルがあるね。
あとCANapeってフォルダがあるけど。

CANapeフォルダはXCPsimと通信するCANapeの設定ファイルが配置されてるね。
CANapeがあれば速攻で動作確認ができる環境が準備されてるってことだ。

予想以上に至れり尽くせりだねー。

実際にビルドしようと思ったら、XCPsim.slnを使えば良いのかな?

そうだね。
ただ、Visual Studi 2015で作られたプロジェクトなので
Visual Studi 2017向けへアップグレードが入るかもしれないが、
まぁ特に問題らしい問題も起きないだろう。

じゃーまずはVisual Studi 2017向けへソリューション、プロジェクトのアップグレードからだね。
まとめ

まとめだよ。
- XCP Basicのフォルダ構成を確認。
- ドキュメント、EULA、Sample、XCP Basicハード非依存コードなどが配置されている。
- Sampleに各物理層のポーティングコードが入っている。
- XCPsimがPCシミュレーションを想定。
- Ethernet(TCP/UDP)かCAN(VN16xx)を物理層と想定。
- XCPsimがPCシミュレーションを想定。
バックナンバーはこちら。
コメント