RoboCup Junior Japan Rescue Kanto OB
2005~2013
2005~2013
最近はPICだと、16F19XXシリーズしか使っていないような気がします。
32MXはなかったことになりましたからね・・・
部員にもオススメしちゃいましたのでちょっと紹介しようかと思います。
まずはコンパイラですが、基本的にハイテックを使うのが一般的なようです。
僕もハイテックで書いてますので16Fに関してはそれで統一しちゃいましょう。
さて、新しい新しいとは言っていますが、実際になにが違うのか。
まずはその辺りの話をしていこうと思います。
基本的には、プログラム視点だと古い三桁台も四桁台も対して変わりません。
まぁ同じコンパイラ使っていますから当たり前ですね。
でも、ハードウェア視点で見ると、違いが躊躇に出てきます。
なのでプログラムでも、ハードが関係する部分においては、多少の違いが現れてきます。
まずは動作クロック
CPUで何Gの・・・とか言っているアレと同じです。
クロックというのはパルス波、つまり周期的な電気信号なので、信号を発生させる発振子という物が必要になります。
三桁台の場合、その発振子を外部につけてやる必要があるのですが、
四桁台の場合は発振子は内蔵されているので必要がありません。
また、クロックは勿論大きいほうが性能は高いです。
処理速度でモロに関わってくる部分ですからね。
これも、三桁台は最大20MHzですが、四桁台は最大32MHzとなっています。
また、三桁台だと、一つの処理を行うのに4クロック必要になりますが、四桁台だと1クロックで済みます。
つまりこの違いだけでも処理速度に四倍の差があることがわかります。
次はプログラムの書込みについて
三桁台の場合・・・
というより普通のPICはプログラムの書き込みにPGDというピンとPGCというピンを状態で使用していました。
仕組みは勿論四桁台もかわらないのですが、何故か四桁台だけそのピンの名称のみが変更されているのです。
PGDはICSPDATというピンに、
PGCはICSPCLKというピンに、
それぞれ変更されています。
これはこのPICの書き込みに使われている通信がICSPというので
わざわざわかりやすい名前に改名したようです。
そして次は通信の際のピンの設定について。
基本的に、通信を行う際にも通信に使うピンは入力か出力かのどちらかに設定しないといけません。
只、その設定をどちらにするかが同じ通信でも三桁台と四桁台で変わってきます。
これが結構で間違えると通信ができない訳なのですが、通信自体のプログラムは同じなのに
ピン設定だけ違うということになりますので、しっかりデータシートを読まないとわからないのです。
落とし穴ともいうべき仕様変更ですね。
まぁ大まかに今、僕が知っているのはこのくらいでしょうか。
結構知らないと根本的にプログラムが書けなくなるような事項がほとんどなので、
16Fの四桁台を使うことがあれば以上の点に注意して頂けると非常に楽にプログラムが書けるかと思います。
という訳で、今回の記事はこの辺で。
次回は・・・なににしましょうか・・・
(^・ω・)ノ RadiumProduction in RoboCup Junior
32MXはなかったことになりましたからね・・・
部員にもオススメしちゃいましたのでちょっと紹介しようかと思います。
まずはコンパイラですが、基本的にハイテックを使うのが一般的なようです。
僕もハイテックで書いてますので16Fに関してはそれで統一しちゃいましょう。
さて、新しい新しいとは言っていますが、実際になにが違うのか。
まずはその辺りの話をしていこうと思います。
基本的には、プログラム視点だと古い三桁台も四桁台も対して変わりません。
まぁ同じコンパイラ使っていますから当たり前ですね。
でも、ハードウェア視点で見ると、違いが躊躇に出てきます。
なのでプログラムでも、ハードが関係する部分においては、多少の違いが現れてきます。
まずは動作クロック
CPUで何Gの・・・とか言っているアレと同じです。
クロックというのはパルス波、つまり周期的な電気信号なので、信号を発生させる発振子という物が必要になります。
三桁台の場合、その発振子を外部につけてやる必要があるのですが、
四桁台の場合は発振子は内蔵されているので必要がありません。
また、クロックは勿論大きいほうが性能は高いです。
処理速度でモロに関わってくる部分ですからね。
これも、三桁台は最大20MHzですが、四桁台は最大32MHzとなっています。
また、三桁台だと、一つの処理を行うのに4クロック必要になりますが、四桁台だと1クロックで済みます。
つまりこの違いだけでも処理速度に四倍の差があることがわかります。
次はプログラムの書込みについて
三桁台の場合・・・
というより普通のPICはプログラムの書き込みにPGDというピンとPGCというピンを状態で使用していました。
仕組みは勿論四桁台もかわらないのですが、何故か四桁台だけそのピンの名称のみが変更されているのです。
PGDはICSPDATというピンに、
PGCはICSPCLKというピンに、
それぞれ変更されています。
これはこのPICの書き込みに使われている通信がICSPというので
わざわざわかりやすい名前に改名したようです。
そして次は通信の際のピンの設定について。
基本的に、通信を行う際にも通信に使うピンは入力か出力かのどちらかに設定しないといけません。
只、その設定をどちらにするかが同じ通信でも三桁台と四桁台で変わってきます。
これが結構で間違えると通信ができない訳なのですが、通信自体のプログラムは同じなのに
ピン設定だけ違うということになりますので、しっかりデータシートを読まないとわからないのです。
落とし穴ともいうべき仕様変更ですね。
まぁ大まかに今、僕が知っているのはこのくらいでしょうか。
結構知らないと根本的にプログラムが書けなくなるような事項がほとんどなので、
16Fの四桁台を使うことがあれば以上の点に注意して頂けると非常に楽にプログラムが書けるかと思います。
という訳で、今回の記事はこの辺で。
次回は・・・なににしましょうか・・・
(^・ω・)ノ RadiumProduction in RoboCup Junior
カレンダー
最新CM
カテゴリー
らじぷろ目次
らじぷろ検索機
最新記事
(01/01)
(01/03)
(08/27)
(04/29)
(01/01)
(11/20)
(09/06)
(09/04)
(08/09)
(08/06)
(07/27)
(05/29)
(03/15)
(01/01)
(05/07)
プロフィール
HN:
Luz
性別:
男性
アーカイブ