Arduino の不思議 [Arduino]
Arduino の不思議 というより、AVR Atmega328p は 絶対設定pinは 電源やRESET しかなくて、
ほかにはxtal位で、アナログやPWMなどはディジタルポートとして使え、それ以外に、COMポート SPI I2C などの専用機能があることです。
今回の目的にはイーサネット、SDカードを SPIで使い チップセレクトでデバイスの選択し、
LCDはめんどくさいI2Cをさけて、余ったpinに分離状態で割り当てようと思っています。
Atmega328P の機能名 SS MOSI MISO SCK は
16-PB2-D11 17-PB3-D12 18-PB4-D13 19 -PB5-D14
といくつもの名前があって ややこしいです。
ライブラリに寄りますと SPI によるイサーネットは10、11、12、13 となっています
メモリーや SDカードの SPIは 4 がチップセレクト MOSI MISO SCK は同じバスですが、
機能名ですと DとかAとか書いてあるので10というのはXTAL機能pinでしょうか?
もし違っていれば 適当に入れ替えても 動作するようです。
(専用機能は出来るだけそのまま使った方が速度が上げられます)
さて残ったLCDは LiquidCrystal lcd(rs-a2, Enbl-a3, d3, d4, d8, d10);
LiquidCrystal lcd(25, 26, 5, 6, 14, 16); とバラバラに割り当ててためしてみます。
追加
今更なんですが デジタルピンはd13で終わっていますが、
アナログピンはその次からa0~a5 となっています。
しかしこれをデジタルピンとして設定すると d14~d19として扱えます。
xt1、xt2、は発信器が必要で ほかに宛てることは出来ませんが、
txd、rxd には スケッチを聞き込まないときは ほかに宛てることがせきますが、
d何々とかの名前が内容ですが (d0、d1)かもしれません。
Arduino は AVRチップと ファウンデーションの IDEが核となって チップと基板を組み合わせ
高く売りすぎているように思います。 所詮は AVRの能力を超えるものではなく、ピン配列なども無理に制限を加えられ、ワンチップ化して マイクロコントローラーとして使うしかない様で、
それとなれば PICの方が 遙かに高機能なんですが、 フルサポートする ソフトが高く、
次の LPCXpresso NXP LPC1769 なんかと比べると もう終わったな と感じてしまいました。
コメント 0