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

【参考】

関連記事

no image

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

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

記事を読む

no image

UWPとAzure Web AppsでOData

超メモ。走り書き。 Azure上にSQLデータベースコードファーストなAPIをODataで作成する。

記事を読む

no image

【UWP】CS1061 : ‘XXX’に’InitializeComponent’の定義が含まれておらず

いろいろなことに起因しており、引き起こされた問題であって、 根本的な原因ではない可能性はあるが、凡ミ

記事を読む

no image

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

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

記事を読む

no image

Raspberry Pi 3 Model B 各OS、動画プレイヤーでの再生比較

ベンチマークではなく、ただ感想をメモしただけ。 Windows 10 IoT Core C#

記事を読む

no image

【Xcode】Capabilities全項目【v6.1時点】

Capabilitiesの各項目が何を示しているのか よくわからなかった、かつ日本語のサイトが少な

記事を読む

no image

【ストアアプリ】資格情報の保存と読み込み

こんにちは。 Windowsストアアプリで資格情報をセキュアに保存する方法について。

記事を読む

no image

‘System.Windows.Navigation.BaseUriHelper’ のタイプ初期化子が例外をスローしました。

作成した.NETアプリケーション(WPF)が起動しない。 今回は構成ファイル(app.config)

記事を読む

no image

【WPF/XAML】Buttonのテキスト(Content)を自動改行/折り返しさせる

今更WPFを触りはじめました。 それまではほぼ.NETは2.0止まりというオワコン開発者です。

記事を読む

Visual Studio Team Services ダッシュボードを自動更新する

Visual Studio Team Services のダッシュボードでプロジェクトや運用状況のサ

記事を読む

Message

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

PAGE TOP ↑