- 追加された行はこの色です。
- 削除された行はこの色です。
#author("2022-06-14T13:22:36+09:00","","")
[[Developers Page]]
* PIOの出力について [#pf6e1572]
ここでは モジュールのPINをデジタル入出力としての使用方法について説明します。~
#contents
SANSHOシリーズでは 複数のPINがデジタル入出力として割り当て可能になっています。~
下記のその割り当て可能であるポートを示します。
**UART2のピン番号 [#ra3ebe0c]
|ポート番号|機能|h
|3|PIO0|
|4|PIO1|
モジュール pyb
クラス Pin
**使用例 [#s368d745]
>
import pyb
>>> p1=pyb.Pin.board.P3 #
>>> p1.init(p1.OUT) # 出力へのセット
>>> p1.value(1) # 値を出力
>>> p1.value() # 現値を確認
>>> p1.init(p1.IN) # 出力へのセット
>>> p1.value() # 入力値を確認
* RTCについて [#z74799d2]
* UARTの使用について [#ucafe910]
* ファイル操作について [#abc83960]
ファイルの入出力の操作を説明します。~
~
本システムはファイルシステム(FAT16)を装備しています。~
ファイルシステムはSPIを介して接続された SDカードへのファイル操作が可能です。~
SDカードはあらかじめFAT16でフォーマットしている必要があります。~
~
SDカードはSPIモードで操作されます。~
モジュールとはSPI信号で接続される必要があります。~
**SPIのポート番号 [#kbe6d832]
|ポート番号|機能|h
|P13|SPI_NSS|
|P14|SPI_MISO|
|P15|SPI_MOSI|
|P16|SPI_CLK|
**ファイルの書き込み例 [#t5cc70c9]
ファイルの書き込みを行う場合の例を示します。
>
>>> f1=open("filename",'w') # "filename" を 書き込みモードで OPENする。
>>> s="testdata" # 書き込み情報を用意する。
>>> f1.write(s+'\n') # 改行を追加してファイルへ書き込む
>>> f1.close() # ファイルをクローズする。
#br
>
>>> f1=open('recv100.py','r') #リードモードでファイルをOPENします。
>>> f1.read()
'import lpwa\rimport rfn\r\rLOOPCOUNT=100\rWAITTIME=1000\rprint("**** Recive packet test script ****")\r#lpwa.reg(0x 14,0x11)\ri=0\rwhile(1):\r\trcv=lpwa.reg(rfn.Get,rfn.Post,WAITTIME)\r\tif type(rcv) is int:\r\t\tcontinue\r\tprint(str(i),end="")\r\tprint(rcv)\r\ti+=1\r\tif i >= LOOPCOUNT:\r\t\tbreak\r'
>>> f1.readline() ''
>>> f1.readline()
**ディレクトリの操作 [#k8e77c16]
ファイルの存在や、ディレクトリの移動などの ディレクトリに操作について説明します。
>
import uos
>>> uos.listdir() # ディレクトリの内容を表示する。
['System Volume Information', 'beeputl.py', 'test.py', 'data903.csv', 'data905.csv', 'data908.csv', 'gpsf.py', 'gpsft.py', 'boot_20220228.py', 'boot_20220323.py', '_main.py', 'bak', 'PY\x10\x00.TXT', 'recv100.py', 'send100.py', 'rfn.py', 'er2str.py']
#br
>
>>> os.mkdir('dir')
#br
>
>>> os.remove('data.txt')
エントリを削除できます:
**スクリプトの起動方法 [#b49852e4]
>
exec(open("./recv100.py").read()) # recv100.pyを実行します。
#br
[[セキュアなページ]]へ~
[[出荷時スクリプト一覧ページ]]へ~