拡張 I/O(トーン出力やシフト入出力)

矩形波やシリアルデータの入出力(ソフトウェア)、パルス幅を測るためのライブラリです。

tone

概要 指定周波数の矩形波を生成します。ブザーで音を鳴らすのに便利です。
文法 tone(int pin, int frequency, int duration)
パラメータ pin: ピン番号
frequency: 周波数[Hz]
duration: 出力を維持する時間[ms]。省略時、0指定時は出力し続ける。
戻り値 なし

noTone

概要 tone関数で出力した矩形波出力を停止する。
文法 noTone(int pin)
パラメータ pin: ピン番号
戻り値 なし

shiftOut

概要 1バイト分のデータを1ビットずつ出力します。各ビットはまずdataPinに出力され、その後clockPinが反転して、そのビットが有効になったことが示されます。
文法 shiftOut(int dataPin, int clockPin, bitOrder, unsigned char value)
パラメータ dataPin: データ出力ピン
clockPin: クロック入力ピン
bitOrder: MSBFIRST(最上位ビットから出力)、LSBFIRST(最下位ビットから出力)
value: 送信したいデータ(unsigned charで8ビットデータ)
戻り値 なし

shiftIn

概要 1バイトのデータを1ビットずつ取り込みます。まずclockPinがHIGHになり、dataPinから次のビットが読み込まれ、clockPinがLOWに戻ります。
文法 unsigned char shiftIn(unsigned char dataPin, unsigned char clockPin, bitOrder)
パラメータ dataPin: データ入力ピン
clockPin: クロック出力ピン
bitOrder: MSBFIRST(最上位ビットから入力)、LSBFIRST(最下位ビットから入力)
戻り値 読み取った値(8ビットデータ)

shiftOutEx

概要 複数バイト分(32ビットまで)のデータを1ビットずつ出力します。各ビットはまずdataPinに出力され、その後clockPinが反転して、そのビットが有効になったことが示されます。
文法 shiftOutEx(int dataPin,int clockPin, bitOrder, int len,unsigned long value)
パラメータ dataPin: データ出力ピン
clockPin: クロック入力ピン
bitOrder: MSBFIRST(最上位ビットから出力)、LSBFIRST(最下位ビットから出力)
len: 出力するデータのビット数
value: 送信したいデータ(32ビット以下のデータ)。MSBFIRSTの場合は最上位ビットを詰めておく必要があります。
戻り値 なし

pulseIn

概要 ピンに入力されるパルスの幅を測ります。
文法 unsigned long pulseIn(int pin, int val, unsigned long timeout = 1000000)
パラメータ pin: ピン番号
val: 測定するパルスの種類。HIGHまたはLOW
timeout: タイムアウトまでの時間(単位・マイクロ秒)。デフォルトは1秒
戻り値 パルスの長さ[us] (unsigned long)。パルスがスタートする前にタイムアウトとなった場合は0。


サンプルプログラム

編集中です。

編集中#include <rxduino.h>

桜ライブラリ

春ライブラリ

めいど by がじぇっとるねさすプロジェクト
Contents are CC BY-SA 3.0