「PIC AVR 工作室」サイトの日記的なブログです。
サイトに挙げなかった他愛ないことを日記的に書き残してます。
PIC AVR 工作室 ブログ



とりあえず、ArduinoをPCに繋いでごにょごにょできる
環境を作ったので、ようやく、Arduino Uno R4 Minima
のdouble型がどういう実装になっているのかを試して
みることに。

とりあえず、double型で変数2個ほど作って、片方に
割られる数、もう片方を商にして、そいつをSerial.
printlnで出力すればいいんだろうとか思ってスケッチを
サクッと書いてみると…

いくつか落とし穴。

まずは、Selial.beginの後に、
while (!Serial) {
;
}
を入れないと、どうやらうまく表示できないみたいだった。

あとSerial.println関数では、直接double型を出力する
ことはできないっぽいな。
調べてみたら、

Arduinoでsprintfの書式とfloatの扱い方、0埋めとか

Arduinoで文字列に変換する関数sprintfを使用する場合のフォーマット指定子一覧の解説と浮動小数点の扱い方(Arduinoでは浮動小数点の指定子が使えません)の紹介記事です。そ...

くろべこblog

 


dtostrf関数っていうのを使って、double型を一旦文字列
(Stringオブジェクトではなく、char配列でいいみたい)
に変換してやる必要があるみたい。

で、出来上がったスケッチがこれ。



void setup() {
Serial.begin(9600);
while (!Serial) {
;
}
double a = 1.0;
double b = a / 3.0;
char buf[20];

Serial.println("start!");
dtostrf(b, 20, 15, buf);
Serial.println(buf);

}

(あぁ、最近のArduino IDEって、html形式でコピー
するっていう編集機能がなくなってしまったみたい。
あれ、何気に便利で愛用していたのに…テキストとして
ブログ記事に貼り付けちゃうと、インデントがなくなって
全部左寄せになっちゃうんだよな。なにかいい方法は
ないかな)

とりあえず、小数点以下15桁表示させてみたんだけど、
ちゃんとでてるみたい。
(実装が、float型だと約7桁。double型だと約15桁)

というわけで、およそ倍の桁が使えるようになった
ので、まぁ精度不足で困ることはないってことだろう。



あとは、R4 Minimaに実装されているクロック源なんだ
けど、IC内蔵のRC発振だろうと思うので、多分精度が低い。

調べてみると、




NJU6319AEっていうのがあるみたい。

水晶発振器用IC(クォーツクリスタル発振器) NJU6319AE (4個入): 半導体(モジュール) 秋月電子通商-電子部品・ネット通販

秋月でも売ってるし、Aliexでも売ってる。結構汎用に
使われているものみたいだな。入手性は悪くなさそう。
しかも、3段までの1/2倍分周期も入ってるやつもある
みたい。(秋月で扱ってるのは「A」なので分収なしの
やつみたい)

このICの出力バッファをトライステートにする端子
(/CONT)って、オープンでいいのかな?これ。内部で
プルアップされてるし。
それにしても、上記のtwitterの使用例の基板。なかなかに
便利そうで欲しいなこれ。

最大で50MHzまでってなってるんだけど、遅い方はどこまで
行けるんだろう?時計用の遅いクロックとかもいけちゃう
のかな?
まぁ、16MHzとかで発振させて、割り込み入力ピンからの
入力を、Arduino側で分周してから割込み掛けさせればいい
んだろうけどな。

とりあえず、Arduino Uno R4 Minimaを使って、double型
で割り算の結果を扱ったり、水晶発振子の精度(50ppm)
で正確な割込みを発生させることが比較的簡単にできる
ことはわかった。

ちょっとブレッドボードで、テスト動作させられる回路
を作って動かしたいところだな。
(その前に、そもそも素のR4 Minimaの発振精度がどの程度
なのかがわかるといいんだけど、計測器持ってないからな)


なんにしても、ちょっと実験してて、R4 Minimaはやっぱり
32ビットコアのおかげか、double型がちゃんとdoubleで計算
されているのでよかった、よかった。
(公式のリファレンスページが古くて、dueではdoubleとして
実装されているよ、っていうことしか書いてないんだよな)





【速報】ホンダが「モトコンパクト」を発表! 電動でモトコンポが再来、価格は1000ドル(約15万円)以下!【東京モーターショー2023】 | Webikeプラス

ホンダがアメリカで「Motocompacto(モトコンパクト)」を発表した。1981年のMOTOCOMPO(モトコンポ)と同じように折り畳み式のボディを採用した電動バイクは、キャリーケー...

Webikeプラス

 


ホンダ・モトコンパクト。

これ、軽くていいんだけど、航続距離が短いな。
車載用としての用途を考えた結果なんだろうけど、できれば
普段使いもできるように、もうちょっと航続距離を長く
できるオプションでも欲しいところなんだよなぁ。

それにしても、かなり軽量に作られているな。これなら、
一人でクルマに載せられそう。


コメント ( 0 )
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする