Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Re: Re: Unusual error in Win32::SerialPort (Missing REQUIRED setting for BAUD)

by BronzeWing (Monk)
on May 21, 2003 at 15:36 UTC ( [id://259751]=note: print w/replies, xml ) Need Help??


in reply to Re: Unusual error in Win32::SerialPort (Missing REQUIRED setting for BAUD)
in thread Unusual error in Win32::SerialPort (Missing REQUIRED setting for BAUD)

Perfect, it worked exactly as you said. Printing the available baud rates showed that 115200 was missing, and adding it to $Serial->{"_L_BAUD"} made everything work right. Thanks very much for your help!

-BronzeWing

  • Comment on Re: Re: Unusual error in Win32::SerialPort (Missing REQUIRED setting for BAUD)
  • Download Code

Replies are listed 'Best First'.
Re^3: Unusual error in Win32::SerialPort (Missing REQUIRED setting for BAUD)
by derrick0627us (Novice) on Jul 28, 2009 at 07:08 UTC
    Hi! I am also working on the Win32::SerialPort. I tried the debug method mentioned above and got this response back, baud rate: 115200 1200 38400 4800 2400 600 57600 19200 9600 300. What does that mean? Does that mean I can only use those baudrates in my perl script? Please let me know. Thanks.

      What other baud rate would you want to use?

      And yes, it seems that Win32::SerialPort wants a baud rate configured before doing any interesting stuff. But without seeing code, it's kinda hard to tell exactly.

      I want to use baudrate such as, 921600 or 230400 or some higher baudrates. I tried to stick in this line here for 921600 since it seems to be working in the previous thread. Here is my code. $PortObj$devNum = Win32::SerialPort->new ($PortName, $quiet) || die "Cant open $PortName: $^E\n"; # quiet is optional unless (defined($PortObj$devNum)) { &logout("openUart ... new failed\n"); return 0; } $PortObj$devNum->{"_L_BAUD"}{921600} = 921600; #$PortObj$tmpDevNum->debug(1); #$PortObj$tmpDevNum->debug_comm(1); #print("\t set options\n"); $PortObj$devNum->baudrate("$baudrate"); But when I do this later, I don't see 921600 shows up in the list. print "baud rate: ", join("",$PortObj$devNum->baudrate),"\n"; Thanks.
      Hi, i tried the same but it is not working for me. With the print statement i am getting error as "Can't call method "baudrate" on an undefined value at serialport_logger.pl line 36" with the _L_BAUD setting i am getting the same error as "Missing REQUIRED setting for STOP at serialport_logger.pl line 42 write_settings failed, closing port at serialport_logger.pl line 42 no settings at serialport_logger.pl line 42." can anyone help me on this?????????

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://259751]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (5)
As of 2024-04-25 11:10 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found