IDEの外側を考えると、高速カウントARDUIO

[Udo Klein]が、アルドイノボードを使用してできるだけ迅速にカウントすることの難しさを取りました。クエストには、在庫ハードウェアを使用してできるだけ迅速に20ビットカウンターを駆動させるショートカットの検索が含まれます。しかしキャッチは、Arduinoの雰囲気がバックグラウンドで実行されているオーバーヘッドがあるということです。彼はこれらの道路隆起のそれぞれに見え、それからそれらを回避するための1つの方法を示します。

コードは、現代のC埋め込みプログラミングでは通常見ないコマンドを使用します。 GOTOステートメント彼はこれを使用して、ArduinoのBuilt Loop()関数によって使用される追加のサイクルを回避しています。ハッキングされたループ内で実行される唯一のコマンドは、深くネストされたマクロのセットです。 AVRチップに組み込まれているハードウェアXORを使用して出力ピンを切り替えます。これはレジスタに直接アドレス指定されていても、DigitalWrite()関数によって追加されたスローダウンをダンプする。

その結果、ハードウェアクロック速度の約98.9%で、出力ライトを切り替えるソフトウェアカウンタ(ブレーク後のクリップを参照)があります。かなり印象的な、しかし、彼はそれを少し速くすることができます。

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Post

3Dスキャナー3Dスキャナー

LVL1 HackerSpaceは6月にハッカソンを保持しています。これは、この24時間で生産された仕事の1つです。残りの部分からなる3Dスキャナーです。写真はあなたに写真処理で利用されている数学の概念を提供します。それは、レーザダイオードと、スキャンされている被写体との間の角関係、ならびに走査を行うウェブカメラを示す。 ウェブカメラはかなり低い高品質であり、出力を素早く強化するための1つの方法は、それをはるかに優れたものと交換することです。しかし、規則は述べられていたので、それはちょうど罰金のように取り残された部分の部品のみを利用しなければならなかった。 Playに入ったその他の問題は、プロジェクトで利用されているLCDスクリーンが提供されていませんでした。そのうち彼らはガジェットをネットワーク上で制御可能にすることにしました。右側には、電源が車やトラックコンピュータの上にテープされた電源が表示されます。ターンテーブルと同様にレーザーにリンクする(赤い光のラインを作り出すバーコードスキャナから引き抜く)。 Pythonスクリプトはすべてのピクチャ処理を行い、スキャンの各スライスをアニメーションGIFとOBJファイルの両方に組み立てます。 [ありがとうネイサン]