1.はじめに
レンジファインダーは私たちの日常生活でよく使われる道具ですが、見落とされがちです。たとえば、身長の測定、さまざまな家具の購入、家の装飾などのシーンで。さらに、ライフシーンだけでなく、エンジニアリングや建築の専門的な測量シーンでも使用できます。これらのシナリオでは、高精度の測定器が必要です。
レンジファインダーは多くのシナリオで広く使用されています。多くのHaaS開発者は、HaaS100をレンジファインダーとして使用できるかどうかを尋ねます。
答えはイエスです。HaaS 100は、豊富な周辺機器センシングデバイスをサポートし、距離計アプリケーションをすばやく構築できます。
2.レンジファインダープログラム
2.1、ハードウェアの選択
メインコントロールボード
メインコントロール開発ボードとしてHaaS100を選択します。HaaS100は、開発者向けの高性能HaaSメイン開発ボードです。
HaaS 100の関連する紹介については、https: //blog.csdn.net/youngwah292/article/details/108943898を参照してください。
超音波モジュール
超音波距離測定センサーは、US-100超音波モジュールを選択します。モジュール購入リンク。この例では、US-100はUARTシリアルポートモードを使用しています。
主な製品パラメータは次のとおりです
動作電圧 |
DC 2.4V〜5.5V |
静止電流 |
2mA |
動作温度 |
-20〜 + 70度 |
出力方法 |
レベルまたはUART(この場合はUARTモードが使用されます) |
検出角度 |
15度未満 |
検出距離 |
2cm〜450cm |
検出精度 |
0.3cm + 1% |
UARTモードのシリアルポート構成、ボーレート9600、リベレーションビット1ビット、ストップビット1ビット、データビット8ビット、パリティなし、フロー制御なし |
表示画面
ディスプレイ画面は0.96インチのOLED画面を使用することを選択し、画面はSPIインターフェースを使用します。モジュール購入リンク。
関連するデバイスのハードウェアパフォーマンスの説明は、購入リンクにあります。
2.2、ハードウェア配線
メインコントロール開発ボードHaaS100と超音波測距モジュール間の接続。超音波測距モジュールには2つのGNDが含まれており、そのうちの1つを接続するだけです。
メインコントロール開発ボードと0.96インチOLEDスクリーン間の接続。
3.スキーム分析
3.1、ソースコード分析
HaaS100のソースコードのダウンロードをすばやく開始するには、HaaS100を参照してください。
レンジファインダーに関連するコードパス
application / example / rangefinder_demo
ソースツリー
。
├──aos.mk
├──app_entry.c
├──Config.in
├──maintask.c//メインタスクの入り口
├──oled_display.c// OLEDディスプレイのソースコード
└──rangefinder.c//レンジファインダーのソースコード
表示と印刷のためのOLEDインターフェース機能
void OLED_Show_String(uint8_t x, uint8_t y, const uint8_t *p, uint8_t size, uint8_t mode);
void OLED_Show_Char(uint8_t x, uint8_t y, uint8_t chr, uint8_t size, uint8_t mode);
印刷インターフェース機能を使用して、OLED画面に情報を表示できます。
3.2、コンパイルして書き込む
レンジファインダーのコンパイルコマンド
cd PATH_TO_ALIOS_THINGS
aos make rangefinder_demo@haas100 -c config
aos make
HaaS 100の関連する章では、環境のインストールと書き込みの手順をすばやく開始します。
3.3 。エフェクト表示
実行チェックリストの例
画像のコンパイルに成功しました |
|
画像の書き込みに成功しました |
|
周辺機器とメインコントロールボード間の接続 |
上記のハードウェア接続のセクションを参照してください |
チェクリストを確認した後、ファンクションボタンを押すたびに(ファンクションボタンの位置については下のスクリーンショットを参照してください)、レンジング機能が再開されます。
効果については、以下のスクリーンショットを参照してください。
4.まとめ
開発ボードとして、HaaS 100はセンサーと組み合わせることにより、さまざまなシナリオで使用できます。もっと便利な解決策があり、一緒に作成することを楽しみにしています。この記事が好きな友達はお気に入りが好きで、コメント欄で返信・交換してくれてありがとう。
開発者テクニカルサポート
さらにテクニカルサポートが必要な場合は、DingTalk開発者グループに参加するか、WeChatパブリックアカウントをフォローしてください。
テクノロジーとソリューションの詳細については、AliyunAIoTホームページhttps://iot.aliyun.com/をご覧ください。