C'est un simple "** Premiers pas pour connaître et mettre en œuvre la communication série **".
Communication série: méthode de communication qui transmet séquentiellement des données numériques bit par bit Communication parallèle: méthode de communication pour la transmission simultanée de plusieurs bits de données numériques
Méthode de communication | Avantages | Désavantages |
---|---|---|
Communication série | à bas prix | lent |
Communication parallèle | Coût élevé | vite |
Si vous souhaitez en savoir plus, cet article est recommandé. J'ai essayé de résumer la méthode de communication série pour les débutants du travail électronique d'une manière facile à comprendre
Tout d'abord, appuyez sur la commande suivante pour installer le package. (Vous n'êtes pas obligé de saisir «$».)
python
$ pip install pyserial
Tout d'abord, recherchez les appareils capables de communiquer. Essayez d'appuyer sur la commande suivante. (La deuxième ligne est la réponse du terminal.)
python
$ ls -l /dev/tty.*
crw-rw-rw- 1 root wheel 18, 0 11 28 17:48 /dev/tty.Bluetooth-Incoming-Port
Un périphérique appelé / dev / tty.Bluetooth-Incoming-Port
a été trouvé.
Ensuite, lisons-le.
read.py
import serial
readSer = serial.Serial('/dev/tty.Bluetooth-Incoming-Port',9600, timeout=3)
c = readSer.read() # 1 byte
string = readSer.read(10) # 10 byte
line = readSer.readline() # 1 line (upto '\n')
print("Read Serial:")
print(c)
print(string)
print(line)
readSer.close()
serial.Serial (nom de l'appareil, débit en bauds, délai d'expiration)
)write.py
import serial
serialCommand = "test"
writeSer = serial.Serial('/dev/tty.Bluetooth-Incoming-Port',9600, timeout=3)
writeSer.write(serialCommand.encode())
writeSer.close()
serial.Serial (nom de l'appareil, débit en bauds, délai d'expiration)
)main.py
import serial
print("===== Start Program =====\n")
# Set Parameter
deviceName = '/dev/tty.Bluetooth-Incoming-Port' # search by `ls -l /dev/tty.*`
baudrateNum = 9600
timeoutNum = 3
print("===== Set Parameter Complete =====\n")
# # Read Serial
readSer = serial.Serial(deviceName, baudrateNum, timeout=timeoutNum)
c = readSer.read()
string = readSer.read(10)
line = readSer.readline()
print("Read Serial:")
print(c)
print(string)
print(line)
readSer.close()
print("===== Read Serial Complete =====\n")
# Write Serial
serialCommand = "test"
writeSer = serial.Serial(deviceName, baudrateNum, timeout=timeoutNum)
writeSer.write(serialCommand.encode())
writeSer.close()
print("===== Write Serial Complete =====\n")
print("===== End Program =====\n")
Recommended Posts