UWP+IoT Coreのシリアル通信メモ

公開日: : Blog, Microsoft, 未分類 , ,

Windows10 IoT + Raspberry Pi を始めようとしているのだが、どうもセンサーを選定したり、組むまでに至るだけの知識がまだない。
まず通信方式とUWPでの実装方法についてメモ

バス

複数の周辺機器に個別に配線せず、ひとつの信号線を共有する

  • SPI : スレーブセレクト
  • I2C : アドレス
  • UART : (共有できない)

なので、信号線を共有したい場合はSPIやI2Cを、非共有の場合はUARTを選択?
SPIはI2Cより信号線の数が多いが、高速通信まで対応している

ってことみたい

非共有

UART (Universal Asynchronous Receiver Transmitter)

TX(送信)とRX(受信)を接続する(単方向の場合は1本だったり)
非同期式なのでクロックビットがない。
よってスタートビットを用いてデータ送信を開始する。

UWP Sample : Serial UART

USART (Universal Synchronous Asynchronous Receiver Transmitter)

UARTに同期のためのクロック信号を付けたもの(GND, TX, UX, CLK)

共有

I2C (Inter-Integrated Circuit)

同期式
通信レートは標準100kbps、ファースト400kbps、高速3.4Mbpsの3つ

周辺機器に7bitのアドレスが決まっていてそれを指定して通信
入力も出力も1本の信号線で行う
MACアドレス指定して通信するようなイメージ

  • SDA (Serial Data)
  • SCL (Serial Clock)

UWP Sample : Inter-Integrated Circuit (I2C) sample

SPI (Serial Peripheral Interface)

同期式
I2Cより高速通信できる

  • MOSI (Master Out Slave In)
    TX -> RX 相当
  • MISO (Master In Slave Out)
    RX -> TX 相当
  • SCLK
    クロック信号

データは3線だけど、スレーブ必要

  • SS (Slave Select)
    スレーブセレクト
    SCLK, MOSI, MISOを共有化、SSを周辺機器ごとに接続&制御を行う。

UWP Sample : Serial Peripheral Interface (SPI) sample

1-Wire

非同期式

  • DQ

周辺機器は64bit固有識別番号を1-Wireバス上のデバイスアドレスとして使う

UWP Sample : GPIO OneWire DHT11 reader

おまけ:USB (Universal Serial Bus)

  • GND
  • D+
  • D-
  • VBUS

【参考】

関連記事

【XAML】フォントサイズを自動縮小して全体を表示

Viewboxを親にするだけ。 拡大・縮小方法はStretch, StretchDirec

記事を読む

シマンテックインストール時に「指定されたパスが空です。」

Windows10 64bit, Symantec Endpoint Protection はおそら

記事を読む

no image

Windows 10 IoT 系の概要、エディション、入手方法などを一度整理

Windows 10 IoT にここ最近振り回されているので、ここまで解釈した内容にて、まとメモ 正

記事を読む

Docker for Windows で ドライブ共有が出来ない

Shared Drives タブで Cドライブにチェックをして Apply を押す。 認証ダイ

記事を読む

no image

属性を使って、列挙型の列挙子を並び替え、フィルタリングする

メモだよ

記事を読む

no image

UWPのScrollViewerでスクロール位置の同期を行うメモ

複数のScrollViewerのスクロール位置を同期したい場合、WPFではScrollChanged

記事を読む

no image

SmallBasicで拡張ライブラリを使用する

こんにちは。 teratailにて以下の質問に遭遇しまして。 small basic の 拡

記事を読む

【ストアアプリ】タイル通知(TileUpdateManager)について

こんにちは。 ストアアプリでタイル通知を行う方法を調べました。 前回のトースト通知と

記事を読む

【iPhoneアプリ】自分のiPhoneへインストールする方法

自作のiPhoneアプリを自分のiPhone上で動作させたい場合の手順をメモ ・iOS Dev

記事を読む

Visual Studio Team Services で 新規プロジェクトを作成するときの自分用初期設定メモ

新規プロジェクト作成 Version control -> Git Work item proc

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

PAGE TOP ↑