国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 操作系統(tǒng) > 正文

樹莓派+python+打印串口數(shù)據(jù)

2024-06-28 16:04:40
字體:
供稿:網(wǎng)友

python上手沒兩天,寫一個正常的打印串口的程序耗費(fèi)了我半天的時間,網(wǎng)上有很多關(guān)于樹莓串口python小程序,多數(shù)是在串口助手這樣的終端回顯,而我想要樹莓派時時打印出串口接收到的數(shù)據(jù)。在網(wǎng)上找了許多的文章,不盡人意。遇到了各種小問題。

第一個就是python PRint 不換行的問題,詳細(xì)自行百度。

python2.x 版本需要在printf語句后面打逗號,換行是沒有了,但是出現(xiàn)了時延和空格,以前的換行符變成了空格。

所以我選擇了另一種打印不換行的替代方案,sys.stdout.write() 替換print,換行和空格解決了,時延又是一個問題。

第二個就是打印時延,讓人很不爽快。

解決辦法見鏈接  ,python -u 運(yùn)行python 程序禁用stdout緩沖即可。

最后附上修改代碼。

# -*- coding: utf-8 -*#python -u 啟動,禁用stdout緩沖功能,不然打印有延時。  import serial  import time  import sys# 打開串口  ser = serial.Serial("/dev/ttyUSB0", 9600)  def main():      while True:          # 獲得接收緩沖區(qū)字符          count = ser.inWaiting()          if count != 0:              # 讀取內(nèi)容并回顯              recv =ser.read(count) #            print recv            sys.stdout.write(recv)            ser.write(recv)          # 清空接收緩沖區(qū)          ser.flushInput()          # 必要的軟件延時          time.sleep(0.1)        if __name__ == '__main__':      try:          main()      except KeyboardInterrupt:          if ser != None:              ser.close() 


上一篇:分區(qū)理解

下一篇:路由和交換

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 萨嘎县| 崇左市| 清丰县| 扎囊县| 东丽区| 南充市| 宣威市| 阿巴嘎旗| 斗六市| 巴东县| 淮阳县| 五台县| 江津市| 唐海县| 锡林郭勒盟| 乐至县| 敦煌市| 曲松县| 新昌县| 兰西县| 都安| 台中县| 赤水市| 平阳县| 普陀区| 龙川县| 铁力市| 乐昌市| 建水县| 霍林郭勒市| 伊宁县| 榆树市| 惠安县| 宜城市| 鄯善县| 宜章县| 邵东县| 伊通| 长乐市| 墨竹工卡县| 永泰县|