Hi all,I'm new to python and facing issue using serial in python.I'm facing the
below error
ser.write(port,command)NameError: global name 'ser' is not defined
Please find the attached script and let me know whats wrong in my script and
also how can i read data from serial port for the same script.
Best Regards,Chandan.
import time
import os
import serial
import glob
ER_Address = [[0x0A,0x01,0x08,0x99,0xBB,0xBB,0xBB,0xBB,0xBB,0xBB,0xBB]]
"""
----------------------------------------------------------------------------------------------------------------------------
Function Name: RunSequence
----------------------------------------------------------------------------------------------------------------------------
Function Description:
---------------------
A RunSequence function has Multiple calls to the RunSuite function, each call
is a single testcase consisting of all the parameters
required by the RunTesSuite.
-----------------------------------------------------------------------------------------------------------------------------
"""
def WriteSerialData(command):
ser.write(port,command)
def SendPacket(Packet):
str = chr(len(Packet)) + Packet #Concatenation of Packet with the
PacketLength
print str
WriteSerialData(str)
def CreateFrame(Edata):
evt = chr(0x12)
evt = evt + chr(Edata[0])
for i in range (1, len(Edata)):
evt = evt + chr(Edata[i])
return evt
def SetRequest(data):
print data
new = []
new = sum(data, [])
Addr = CreateFrame(new)
SendPacket(Addr)
print "SendPacket Done"
ReadPacket()
def OpenPort(COMPort,BAUDRATE):
"""
This function reads the serial port and writes it.
"""
comport=COMPort
BaudRate=BAUDRATE
try:
ser = serial.Serial(
port=comport,
baudrate=BaudRate,
bytesize=serial.EIGHTBITS,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
timeout=10,
xonxoff=0,
rtscts=0,
dsrdtr=0
)
if ser.isOpen():
print "Port Opened"
ser.write("Chandan")
string1 = ser.read(8)
print string1
return ser
else:
print "Port CLosed"
ser.close()
return 3
except serial.serialutil.SerialException:
print "Exception"
ser.close()
if __name__ == "__main__":
CurrDir=os.getcwd()
files = glob.glob('./*pyc')
for f in files:
os.remove(f)
OpenPort(26,9600)
SetRequest(ER_Address)
#SysAPI.SetRequest('ER',ER_Address)
print "Test Scripts Execution complete"
--
http://mail.python.org/mailman/listinfo/python-list