STM8S-Discoveryでロボスレ共通ボードを作るプロジェクト…とか


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

STM8S-Discoveryのページとは独立させて、作って見る。
…とりあえず書き溜めてから整形して、という形でよろしいか?(誰も聞いてないって
他にも妙案をお持ちの方が居ましたらぜひともこういうのもどうかという感じで書き連ねて欲しい。

自分のチェックも含めてI/Oの並びやつなぎ方、設計の方法などを書き連ねていき、適宜子ページを作る予定。
とりあえず今の目標はこんな感じ。

1、I/Oの確認と割り当て
2、SWIMの接続チェックと電源の確保
3、外部装置の用意と作り方の紹介
4、実際の動作のためのソフトの用意とソースの提示

とりあえずひとつずつ行こうか。

1、I/Oの確認と割り当て


I/Oのピンアサイン
CN1
ピン番号 該当チャンネル 機能
1 NRST リセット
2 OSCIN/PA1 外部クロック入力、もしくは汎用入出力ピン(A1)
3 OSCOUT/PA2 外部クロック出力、もしくは汎用入出力ピン(A2)
4 Vssio_1 I/Oのグランド
5 Vss デジタル系のグランド
6 VCAP 1.8V regulator capacitor
7 Vdd デジタル用電源ピン
8 Vddio_1 I/O用電源ピン
9 PA3 PA3
10 PA4 PA4
11 PA5 PA5
12 PA6 PA6

CN2
ピン番号 該当チャンネル 機能
1 PE5 SPI master / slave
2 PC1/TS1 Timer 1 - channel 1 / UART2 synchronous clock
3 PC2/TS1_load Timer 1 - channel 2
4 PC3 Timer 1 - channel 3
5 PC4 Timer 1 - channel 4
6 PC5 SPI clock
7 Vssio_2 I/O ground
8 Vddio_2 I/O power supply
9 PC6 SPI master out / slave in
10 PC7 SPI master in / slave out
11 PG0 PG0
12 PG1 PG1

CN3
ピン番号 該当チャンネル 機能
1 Vdda Analog power supply
2 Vssa Analog ground
3 PB7 Analog input 7
4 PB6 Analog input 6
5 PB5 Analog input 5
6 PB4 Analog input 4
7 PB3 Analog input 3
8 PB2 Analog input 2
9 PB1 Analog input 1
10 PB0 Analog input 0
11 PE7 Analog input 8
12 PE6 Analog input 9


CN4
ピン番号 該当チャンネル 機能
1 PE3 Timer 1 – break Input
2 PE2 I2C data
3 PE1 I2C clock
4 PE0 Configurable clock output
5 PD0/LED Timer 3 - channel 2
6 PD1/SWIM SWIM data interface
7 PD2 Timer 3 - channel 1
8 PD3 Timer 2 - channel 2
9 PD4 Timer 2 - channel 1
10 PD5 UART2 data transmit
11 PD6 UART2 data receive
12 PD7 Top level interrupt


I/O概要

アナログ

・Analog input X(アナログ電圧値を取り込むチャンネル)

ピン数では10ピンあり、ただしMUXのため、高速に同時取り込みなどは無理。
切り替えて取り込む時間が必要。
bit数(細かさ)は10bitあり、まあ十分な性能ともいえる。
当プロジェクトでは全部ユーザに空けておきたい。

デジタル

・UART2

PCではRS232に相当するシリアル通信
ソフトでも楽に処理可能だと思うためUARTはPCとの接続に使う。デバック用途などに使えると思う。

・I2C(アイスクエアシー)、SPI

 I2Cは低速シリアル通信で2ポート+グランドの接続があれば規定の枚数の接続が可能。
ただし、本来基板の中のみでの通信しか考慮していないためノイズに弱い。
当プロジェクトではとりあえずコレを拡張ボードとの接続に使用したい。
(つまり拡張ボードは全部I2Cのスレイブ動作が可能でなければならないということ、少々面倒だけど)
 SPIは高速なシリアル通信だが、デバイスが増えるたびにデジタルポートをひとつ余分に使用する。
その分速度は双方のデバイスに依存するという青天井っぷりがすばらしい。
当プロジェクトでの扱いはまだ未定
デバイスの各上限としてI2Cは400kHzSPIは8MHz対応


・SWIM

SWIMでの書き込みに必要なピンとGNDへの接続を取り出せるコネクタを用意する
このコネクタは通常使用時には必要ないが、必要とあれば引き出すことが出来るようにしておく。
(ソフトは出来る限りPC側のソフトからUART経由でSTM8S-D->I2Cと通り増設したEEPROMなどに書き込んで、動作時にはそれを読んで動作するようにしたい、可能なら…というかスキルが許せば、だが。)

・汎用I/O(デジタル専用)

現状どの程度のピンが開くか不明だが、デジタルは出来る限り空けたい。
また、不足も考えられるため増設できるボードの中にはデジタルボードも入れたいと思う。


まだまだ書き出し中、各I/Oのアサインも書き出す予定。
中途半端でごめん。
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。