Python 2 > C実装の標準出力をRS-232C出力する (pySerial 2.6使用)
動作環境
Raspberry Pi 2 Model B (以下RPi)
Raspbian Jessie
Python 2.7.9
Python 3.4.2
gcc (Raspbian 4.9.2-10) 4.9.2
pySerial 2.6
USBシリアルケーブル (Prolific Technology社のドライバで動作)
変換名人 USB-RS232 (コネクタ部分は青い透過型のハウジング)
関連
概要
- C実装で1秒おきに標準出力される
- その標準出力を受けて、PythonでRS-232C出力する
C > 1秒おきの標準出力
こちらの実装をそのまま使います。
接続環境
RPi -- USBシリアル -- RS-232Cケーブル(クロス) -- PCのRS-232Cポート
PC側ではTeraTermを起動し、9600bpsでの受信待ち状態にする。
PCの環境
Windows 10 Pro (64bit) バージョン 1803 (April 2018 Update)
Tera Term Version 4.9.0 (SVN# 6338)
Python 2 > 標準出力をRS-232C出力する
redirect_serial_180801.py
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
import serial
# on pySerial 2.6
# on Python 2.7.9
CRLF = '\r\n'
with serial.Serial('/dev/ttyUSB0', 9600, timeout=10) as con1:
while True:
try:
res = raw_input()
con1.write(res)
con1.write(CRLF)
except EOFError:
break
実行
RPi側
$ ./tickTime_180801 | python2 -u redirect_serial_180801.py
用途
Cで実装したI2C通信(下記の発展版)の標準出力をPythonでRS-232Cに出力する。
関連
- Raspberry Pi > pySerial 2.6 > bug? > 受信バッファにデータが残る場合がある
- Raspberry Pi > pySerial 2.6 > [CR]はreadline()のdelimiterに使えない | [CR]まで読込む実装
検索用キーワード
- redirect
- UART
Author And Source
この問題について(Python 2 > C実装の標準出力をRS-232C出力する (pySerial 2.6使用)), 我々は、より多くの情報をここで見つけました https://qiita.com/7of9/items/e23e32e8ce417044b297著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .