Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: Python ja sarjaportti

OH8GJF [09.03.2014 06:49:01]

#

Hassun hauskaa huomenta !

Win 7 Pro, 64 bit, Python 3.2
Yritän lukea sarjapotilta tulevaa tietoa, ei vaan onnistu,
olen yrittänyt varmaan pariakymmentä eri esimerkkiä ja aina sama virhe.

import serial
import time
ser = serial.Serial('COM4', 9600, timeout=0)

while 1:
    try:
        print ser.readline()
        time.sleep(1)
    except ser.SerialTimeoutException:
        print('Data could not be read')
        time.sleep(1)

Check module ilmoittaa aina virheen
- lauseessa "print ser.readline()",
- kohtaan "ser"

Mitä en nyt hoksaa, vai mistä tämä johtuu ?
- yhteensopivuuongelmia minun ja Pythonin välillä ?

73 de OH8GJF, Heikki

Mod. lisäsi kooditagit!

Metabolix [09.03.2014 10:22:45]

#

Koodistasi puuttuvat siitä kohdasta sulut print-funktion parametrin ympäriltä. Python 2:ssa sulkuja ei tarvita, joten varmasti ”viallisia” rivejä on monissa esimerkeissä.

Kysymyksen yhteydessä on syytä aina kertoa myös, mikä virheilmoitus tulee. Python 2:n vuoksi tuokin rivi näyttää nopeasti katsoen olevan kunnossa, ja siksi eksyin turhaan tutkimaan Serial-luokkaa, kun taas virheilmoituksen perusteella ongelma olisi löytynyt heti. SyntaxError ylipäänsä kertoo, että vika on koodin muodossa eikä sisällössä, jolloin ongelma on helppo ratkaista ihan itsekin tarkistamalla, että kaikki symbolit ja sulut ovat rivillä oikein, ja ainakaan ei tarvitse hämätä muita keskustelijoita epäolennaisilla asioilla kuten sarjaportilla.

OH8GJF [10.03.2014 12:14:22]

#

Kiitos, olisipa tuota saanut etsiä.

73 de OH8GJF, heikki

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta