之前我在電腦上利用socket進行兩個程式之間的通訊,這次我們還是利用同樣的程式來進行樹莓派和電腦之間的通訊
先看下程式,程式的具體解析可以看我上一個部落格
這次唯一的區別就是HOST改為192.168什麼的,自己在dos介面敲一下ipconfig查看一下IP地址然後填進去
server端:
import socketimport timeHOST = '192.168.199.131'PORT = 8001sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.bind((HOST, PORT)) sock.listen(5) while True: connection,address = sock.accept() try: connection.settimeout(10) buf = connection.recv(1024) if buf: connection.send(b'welcome to server!') print('Connection success!') else: connection.send(b'please go out!') except socket.timeout: print ('time out') connection.close() client端:
import socketimport timeHOST = '192.168.199.131'PORT = 8002sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.connect((HOST, PORT)) time.sleep(2) sock.send(b'1')print (sock.recv(1024).decode())sock.close()
接著在dos介面運行server.py,在樹莓派中運行client.py
注意在樹莓派中得用python3指令,因為樹莓派既有python2也有python3
dos介面:
樹莓派:
如果我們想要在樹莓派運行server端電腦上運行client端,讓樹莓派來作為伺服器接收使用者資料的話,我們就可以在樹莓派上ifconfig一下查看一下它的地址,並將兩個程式的IP地址都改為它,接著先運行樹莓派上的server後運行電腦上的client就行了
如果你又想實現UDP傳輸的話,可以將我上一個部落格的UDP代碼拷過來修改下試試,因為具體我還沒有試過嘿嘿