したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

■■■20レス以内で済むF-BASICの質問はこちらへ■■■

676671:2016/01/11(月) 03:20:15
>>675
>それをmillitimeで見ればいいかなと。この場合、時間の触れが+方向に限定されるのが少し気になる

millitimeを見張って『仮に時刻ぴったり』にできたとしても、
結局それは「過ぎ去りし時間」で+方向にだけぶれるのはいたしかないこと。
マイナス方向もありということは、時刻ぴったりの『少し前』に合わせるようなもの。
では『少し前』とはどうやって定義して決めるのかが課題。


>あくまでもmillitimeとtime$は同じハードから時刻を得ているというのが前提ですが。

millitimeとtimeは取得元は同じです。

WindowsではPCのRTCは精度が悪いので起動後、別のハード機構からの情報で
カウントして算出しているそうです。
タイマ割り込みより、millitimeの方が若干精度が高いということ。

タイマ割り込みはWindowsの互換性維持のため、精度は低いままです。


>millitimeを一日まわして気づいたのですが、時間によってmillitimeの揺らぎ精度が違うみたいです。

非リアルタイム系OSの宿命です。そもそもmillitimeを取得する行為そのもの、そして結果を
画面等に出力すること自体が「ゆらぎ」の発生源のひとつなのですから。

>やはり、目標値を1/100秒程度がいいところなのかも知れません

いかに無限ループでmillitimeを観測しようと、プリエンティブなマルチタスクOSなので、
どこかで実行権を剥奪されるので、タスク切り換え単位以下の精度を維持しつづけることは
できないので、計測時間範囲で平均値を維持するのがやっとのはずです。
まあ極論、OSをWindows Ver.3.1、F-BASIC for Windows (V3.1)にすればということですが。


>割り込みやデーモンとの関係があるんでしょうね
そういうことですね、高精度を維持したければ、
割り込みがかかる不要なハードはすべてドライバ無効化(USBなんぞ禁止)、
不要な「サービス」はすべて停止、スクリーンセーバ等禁止、省電力機能禁止、
ウイルス対策ソフトなど常駐モノは完全にキル。
NTPによる時刻同期も当然禁止。ネットワークもハード(NIC)ごと停止。
メモリ(RAM)が大量にあるならば仮想記憶のスワップファイルをゼロに。

計測中は一切画面に経過表示せず、計測データはディスクに書かずメモリに保持、
「ペンキ塗りたて」ならぬ「マウス・キーボード触るな」
張り紙が必要な精度ですね。

>電圧値が違うからなんでしょうか。間にレベルコンバーターなどを入れれば動くのかな。
うーん、USB変換ケーブルタイプはそんな感じなんですか...
電圧に関して規定がゆるいですからね。
PC/AT機のシリアルポートはケープル長が2m〜3mが限界だとかいう虚弱ぶり。
そんなのをみならっているんでしょうかね。

RS-232なら規格限界値15mだったっけ?


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板