MicropythonおよびCircuitPython用のSemtech SX126X LORAドライバー。
このライブラリは、JgromesによってRadiolibから移植および修正されています。
このライブラリは、一般的なおよびPycomバリアントMicropythonとCircuitPythonをサポートしています。
テスト:
* .mpyにコンパイルするか、Micropythonイメージにコンパイルして、メモリの問題エラーを防ぐ
クラスSX1262.SX1262(SPI_BUS、CLK、MOSI、MISO、CS、IRQ、RST、GPIO)
SX1262オブジェクトを作成および初期化します。
パラメーターは次のとおりです。
sx1262.setfrequency(freq)
MHzで周波数を設定します。
返品:ステータス(定数ステータス辞書を参照)
sx1262.setOutputPower(POWER)
DBMにTX Powerを設定します。
返品:ステータス
sx1262.setblockingcallback(ブロッキング、コールバック=なし)
TX/RXブロッキングモードを設定し、コールバックを中断します。
ブロック= trueの場合、TX/RXはブロッキングモードに設定され、コールバック関数は無視されます。
ブロック= falseの場合、TX/RXは非ブロッキングモードに設定され、TX/RXイベント上のイベント引数でコールバック関数がトリガーされます。
callback = noneの場合、イベントコールバック関数は無効になります。
sx1262.getrssi()
DBMでRX RSSIを取得します。
返品:RSSI値
sx1262.gettimeonair(len)
メッセージの長さ、len =メッセージの長さに応じてRX時間を空中に取得します。
返品:空気価値の時間
sx1262.send(データ)
メッセージを送信する、データ型はバイトまたはbytearrayでなければなりません。
返品:ペイロード長、ステータス
sx1262.recv(len = 0、timeout_en = false、timeout_ms = 0)
RXメッセージを読む。
len =メッセージ長、0、デフォルトでsx126x_max_packet_lengthにデフォルト
Timeout_en = falseの場合、rxタイムアウトを有効にして、メッセージが受信されるまで(ブロッキングモードのみ)関数ブロックを無期限にブロックする
MSのTimeout_ms = RX Timeout、0はタイムアウト= 100 LORAシンボルの長さを意味します。
返品:ペイロード、ステータス
sx1262.begin(freq = 434.0、bw = 125.0、sf = 9、cr = 7、syncword = 0x12、power = 14、currentlimit = 60.0
preambllelength = 8、inclicit = false、inclicitlen = 0xff、crcon = true、txiq = false、rxiq = false、
tcxovoltage = 1.6、useregulatureldo = false、blocking = true)
この方法は、LORA構成を設定するために使用されます。
パラメーターは次のとおりです。
返品:ステータス
sx1262.setbandwidth(bw)
KHZでロラ帯域幅を設定します。
返品:ステータス
sx1262.setcodingrate(cr)
5〜8のロラコーディングレートを設定します。
返品:ステータス
sx1262.setpreamblelength(preamblelength)
ロラのプリアンブルの長さを設定します。
返品:ステータス
sx1262.setspreadingfactor(sf)
5〜12のロラ拡散係数を設定します。
返品:ステータス
sx1262.setsyncword(syncword、[controlbits])
lora sync word、private = 0x12、public = 0x34を設定します。
オプションのパラメーター制御ビット、デフォルト値は0x44です。
例syncword = 0xab、controlbits = 0xcd-> sx126x 2バイト同期word = 0xacbd
例syncword = 0x12、controlbits = 0x44-> sx126x 2バイト同期word = 0x1424
返品:ステータス
sx1262.explicitheader()
LORA明示的ヘッダーモードを有効にします。
返品:ステータス
sx1262.implicitheader(Implicitlen)
暗黙の長さパラメーターでLORA暗黙のヘッダーモードを有効にします。
返品:ステータス
sx1262.forceldro(enable)
力の低いデータレートの最適化を有効にします。
返品:ステータス
sx1262.autoldro()
自動低データレートの最適化を有効にします。
返品:ステータス
sx1262.setcrc(crcon)
LORA CRCモードを設定します。
返品:ステータス
sx1262.settxiq(txiq)
LORA TX Invert IQモードを設定します。
sx1262.setrxiq(rxiq)
lora rxはIQモードを反転させます。
sx1262.getsnr()
dbでlora rx snrを取得します。
返品:SNR値
sx1262.beginfsk(freq = 434.0、br = 48.0、freqdev = 50.0、rxbw = 156.2、power = 14、currentlimit = 60.0、
preambllelength = 16、datashaping = 0.5、syncword = [0x2d、0x01]、syncbitslength = 16、
addrfilter = sx1262.addr_filt_off、addr = 0x00、crclength = 2、crcinitial = 0x1d0f、crcpolynomial = 0x1021、
crcinverted = true、whiteningon = true、whiteninginitial = 0x0100、
fixedpacketlength = false、packetlength = 0xff、preambledetectorlength = sx1262.preamble_detect_16、
tcxovoltage = 1.6、useregulatorldo = false、
ブロック= true)
この方法は、FSK構成の設定に使用されます。
パラメーターは次のとおりです。
返品:ステータス
sx1262.setbitrate(br)
KBPSでFSKビットレートを設定します。
返品:ステータス
sx1262.setfrequencedeviation(freqdev)
KHZでFSK周波数偏差を設定します。
返品:ステータス
sx1262.setrxbandwidth(rxbw)
KHZでFSK RX帯域幅を設定します。
返品:ステータス
sx1262.setdatashaping(datashaping)
シェーピングに使用するガウスフィルターのFSK時間帯域幅製品を設定します。
返品:ステータス
sx1262.setsyncbits(syncword、bitslen)
FSK同期ワードと同期ビットの長さを設定します。
syncword = sync word in list
bitslen =同期ワードビット長
返品:ステータス
sx1262.setpreamblelength(preamblelength)
FSKプリアンブル長を設定します。
返品:ステータス
sx1262.setpreambledetectorlength(preambledetectorlength)
最小プリアンブル検出長を設定し、定数FSKプリアンブル検出器長を参照してください。
sx1262.setnodeaddress(addr)
ノードアドレスADDRでアドレスフィルタリングをアクティブ化します。
返品:ステータス
sx1262.setbroadcastaddress(addr)
ノードおよびブロードキャストアドレスADDRでアドレスフィルタリングをアクティブ化します。
返品:ステータス
sx1262.disableaddressfiltering()
アドレスフィルタリングを無効にします。
返品:ステータス
sx1262.setcrc(len、initial = 0x1d0f、polynomial = 0x1021、逆= true)
FSK CRCを設定します。
LEN = CRC長、0、1、または2
Initial = CRC Initial
多項式= CRC計算に使用される多項式
反転= CRCバイトの反転を有効にします
返品:ステータス
sx1262.setwhitening(enabled、initial = 0x0100)
FSKホワイトニングを設定します。
初期=ホワイトニングLFSRの初期値
返品:ステータス
sx1262.fixedpacketlengthmode(len)
FSK固定パケット長モードを設定します。
len =バイト単位のパケット長
返品:ステータス
sx1262.variablepacketlengthmode(maxlen)
FSK変数パケット長モードを設定します。
maxlen =バイト単位の最大パケット長
返品:ステータス
イベント:sx1262.tx_done、sx1262.rx_done
FSKアドレスフィルター:sx1262.addr_filt_off、sx1262.addr_filt_node、sx1262.addr_filt_node_broad
FSKプリアンブル検出器長:SX1262.PREAMBER_DETECT_OFF、SX1262.PREAMBLE_DETECT_X-> X = 8、16、24、32
ステータス辞書:SX1262.Status