<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ## 問題 你想通過串行端口讀寫數據,典型場景就是和一些硬件設備打交道(比如一個機器人或傳感器)。 ## 解決方案 盡管你可以通過使用Python內置的I/O模塊來完成這個任務,但對于串行通信最好的選擇是使用[pySerial包](http://pyserial.sourceforge.net/) [http://pyserial.sourceforge.net/] 。這個包的使用非常簡單,先安裝pySerial,使用類似下面這樣的代碼就能很容易的打開一個串行端口: import serial ser = serial.Serial('/dev/tty.usbmodem641', # Device name varies baudrate=9600, bytesize=8, parity='N', stopbits=1) 設備名對于不同的設備和操作系統是不一樣的。比如,在Windows系統上,你可以使用0, 1等表示的一個設備來打開通信端口”COM0”和”COM1”。一旦端口打開,那就可以使用 `read()`,`readline()` 和 `write()` 函數讀寫數據了。例如: ser.write(b'G1 X50 Y50\r\n') resp = ser.readline() 大多數情況下,簡單的串口通信從此變得十分簡單。 ## 討論 盡管表面上看起來很簡單,其實串口通信有時候也是挺麻煩的。推薦你使用第三方包如 `pySerial` 的一個原因是它提供了對高級特性的支持(比如超時,控制流,緩沖區刷新,握手協議等等)。舉個例子,如果你想啟用 `RTS-CTS` 握手協議,你只需要給 `Serial()` 傳遞一個 `rtscts=True` 的參數即可。其官方文檔非常完善,因此我在這里極力推薦這個包。 時刻記住所有涉及到串口的I/O都是二進制模式的。因此,確保你的代碼使用的是字節而不是文本(或有時候執行文本的編碼/解碼操作)。另外當你需要創建二進制編碼的指令或數據包的時候,`struct` 模塊也是非常有用的。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看