LEDマトリックスのコントロールを高速化したいのもあって,micro:bitのSPI通信はどこまで速度があげられそうなのか,試してみました。
1.micro:bitブロックエディタでのプログラミング
どうもブロックエディタでは通信速度が1MHzに固定されている? ようで,数値を変更しても出力パルスは変わりませんでした。
プログラム例です。SPI周波数を2MHzにして10101010 01010101を出力してみました。
周波数の設定を増減させても1MHzのクロックで出力されていました。
2.Arduino IDEでのプログラミング
SPIを8MHzまで上げてみました。出力値は同じです。
8MHzまでは特にエラーなく出力できているようでした。
これ以上周波数をあげると止まりはしませんが,,数値にエラーが発生しました(^^;;;;;;
そもそもmicro:bitは教育用のスタートしやすいシステムとして使用するのが本来なので,SPIの速度などは特に説明もなく1MHzに設定したサンプルが多くみられます。
Arduino IDEでプログラミングすると手持ちでは8MHzまではいけそうな感じでしたが,確証はありません(^^;;;;;;;;
ま,せっかくなのでmicro:bitでもSPIを使っていろいろと試してみたいですね。
1.micro:bitブロックエディタでのプログラミング
どうもブロックエディタでは通信速度が1MHzに固定されている? ようで,数値を変更しても出力パルスは変わりませんでした。
プログラム例です。SPI周波数を2MHzにして10101010 01010101を出力してみました。
周波数の設定を増減させても1MHzのクロックで出力されていました。
2.Arduino IDEでのプログラミング
SPIを8MHzまで上げてみました。出力値は同じです。
8MHzまでは特にエラーなく出力できているようでした。
これ以上周波数をあげると止まりはしませんが,,数値にエラーが発生しました(^^;;;;;;
そもそもmicro:bitは教育用のスタートしやすいシステムとして使用するのが本来なので,SPIの速度などは特に説明もなく1MHzに設定したサンプルが多くみられます。
Arduino IDEでプログラミングすると手持ちでは8MHzまではいけそうな感じでしたが,確証はありません(^^;;;;;;;;
ま,せっかくなのでmicro:bitでもSPIを使っていろいろと試してみたいですね。