Προγραμματισμού μιλάμε για μια σειριακή θύρα στο OS X ή Linux

ψήφοι
15

Έχω ένα σημάδι Prolite LED που μου αρέσει να συσταθεί για να δείξει κύλιση ερωτήματα αναζήτησης από ένα apache κορμούς και άλλα στατιστικά στοιχεία διασκέδασης. Το πρόβλημα είναι, G5 μου δεν έχει σειριακή θύρα, γι 'αυτό πρέπει να χρησιμοποιήσετε ένα usb σε σειριακή dongle. Θα εμφανίζεται ως /dev/cu.usbserial και /dev/tty.usbserial.

Όταν το κάνω αυτό πάντα φαίνεται να είναι εξαίρετα,:

stty -f /dev/cu.usbserial
speed 9600 baud;
lflags: -icanon -isig -iexten -echo
iflags: -icrnl -ixon -ixany -imaxbel -brkint
oflags: -opost -onlcr -oxtabs
cflags: cs8 -parenb

Όλα λειτουργούν επίσης όταν χρησιμοποιώ την σειριακή θύρα εργαλείο για να μιλήσουμε για αυτό.

Αν τρέξω αυτό το κομμάτι του κώδικα, ενώ το προαναφερόμενο εργαλείο σειριακή θύρα, everthing λειτουργεί επίσης. Αλλά μόλις έχω αποσυνδέστε το εργαλείο η σύνδεση χάνεται.

#!/usr/bin/python

import serial

ser = serial.Serial('/dev/cu.usbserial', 9600, timeout=10) 
ser.write(<ID01><PA> \r\n) 
read_chars = ser.read(20)
print read_chars

ser.close()

Έτσι, το ερώτημα είναι, τι Magicks χρειάζεται να εκτελέσετε για να αρχίσουμε να μιλάμε για τη σειριακή θύρα, χωρίς τη σειριακή θύρα εργαλείο; Είναι αυτό ένα πρόβλημα με τα δικαιώματα; Επίσης, ποια είναι η διαφορά μεταξύ /dev/cu.usbserial και /dev/tty.usbserial;


Όχι, δεν σειριακούς αριθμούς. Το πράγμα είναι, το πρόβλημα εξακολουθεί να υφίσταται ακόμη και με sudo-τρέχει το script python, και το μόνο πράγμα που κάνει να πάει μέσα, αν μπορώ να ανοίξω τη σύνδεση στο γραφικό εργαλείο που ανέφερα.

Δημοσιεύθηκε 06/08/2008 στις 20:00
πηγή χρήστη
Σε άλλες γλώσσες...                            


2 απαντήσεις

ψήφοι
0

έχετε δοκιμάσει να παρακολουθείτε την κίνηση μεταξύ του GUI και σειριακή θύρα για να δείτε αν υπάρχει κάποια ειδική εντολή που αποστέλλονται σε όλη; Επίσης απλά περίεργος, Python στέλνει ASCII και όχι UTF-8 ή κάτι άλλο έτσι δεν είναι; Ο λόγος που ρωτώ είναι γιατί παρατήρησα αλλαγές προσφορά σας για τις χορδές και σε ορισμένες γλώσσες, που στην πραγματικότητα είναι η διαφορά μεταξύ ASCII και UTF-8.

Απαντήθηκε 06/08/2008 στις 22:40
πηγή χρήστη

ψήφοι
5

/dev/cu.xxxxxείναι η «επεξήγησης» της συσκευής, είναι αυτό που χρησιμοποιείτε όταν έχετε δημιουργήσει μια σύνδεση με τη σειριακή συσκευή και να αρχίσουμε να μιλάμε για αυτό. /dev/tty.xxxxxείναι η συσκευή «dialin», που χρησιμοποιείται για την παρακολούθηση μιας θύρας για τις εισερχόμενες κλήσεις για παράδειγμα ένας ακροατής φαξ.

Απαντήθηκε 06/08/2008 στις 23:19
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more