Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: как прочитать данные с ком порта в python  (Прочитано 6523 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн vvl

  • Автор темы
  • Новичок
  • *
  • Сообщений: 17
    • Просмотр профиля
читаем данные с порта rs232 к которому подключен весовой терминал КСК8.

код:
#!/usr/bin/env python
import sys, os
import serial

ser = serial.Serial(
    port=0,
    baudrate=9600,
    bytesize=8,
    parity='N',
    stopbits=1,
    timeout=1,
    xonxoff=0,
    rtscts=0,
    interCharTimeout=1,
    writeTimeout = 1
)

def mycomputer(myadres,mycommand):
    byte1 = "\x02"
    byte2 = myadres
    byte3 = mycommand
    byte6 = "\x03"
    myxor = ord(byte2)^ord(byte3)
   
    if myxor <10:
        myxor += 48
    else:
        myxor += 55
    myxor = "\x00" + chr(myxor)
    zapros = byte1 + byte2 + byte3 + myxor + byte6
    return zapros

myz = mycomputer('A','A')

def send():
    global ser, myz
    ser.write(myz) #send data

def receive():
    global ser
    result = ser.read(8)                #receive data
    return result

ser.open()                  # open port
send()

def myres():
    b=receive()
    c=tuple(b)
    d0=ord(c[0])
    d1=ord(c[1])
    d2=ord(c[2])
    d3=ord(c[3])
    d4=ord(c[4])
    d5=ord(c[5])
    d6=ord(c[6])
    d7=ord(c[7])
ser.close()

данные получаются вида 0 0 0 128 128 0 0 0, не совсем понятно как их перевезти в код ASCII или к виду b'00111111'.



Пользователь решил продолжить мысль 11 Сентября 2013, 21:02:22:
Я оказывается по 8 байт считывал
« Последнее редактирование: 11 Сентября 2013, 21:02:22 от vvl »

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Re: как прочитать данные с ком порта в python
« Ответ #1 : 12 Сентября 2013, 08:37:36 »
>>> print(123)
123
>>> hex(123)
'0x7b'
>>> bin(123)
'0b1111011'
>>>

Оффлайн vvl

  • Автор темы
  • Новичок
  • *
  • Сообщений: 17
    • Просмотр профиля
Re: как прочитать данные с ком порта в python
« Ответ #2 : 15 Октября 2013, 17:10:12 »
спасибо, скорости разные были :(

 

Страница сгенерирована за 0.017 секунд. Запросов: 22.