aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakob Odersky <jodersky@gmail.com>2013-05-21 20:44:58 +0200
committerJakob Odersky <jodersky@gmail.com>2013-05-21 20:44:58 +0200
commit4be8ee0da20995e0e43f50cb4675b65609a613a6 (patch)
tree291c8cbb7da7c0d434c2b72d6973fac29ba50a82
parentd30e8a15c392cb9c85915da59149581f9e8dfbc4 (diff)
downloadakka-serial-4be8ee0da20995e0e43f50cb4675b65609a613a6.tar.gz
akka-serial-4be8ee0da20995e0e43f50cb4675b65609a613a6.tar.bz2
akka-serial-4be8ee0da20995e0e43f50cb4675b65609a613a6.zip
improve example
-rw-r--r--example/src/main/scala/com/github/jodersky/flow/example/Main.scala32
1 files changed, 23 insertions, 9 deletions
diff --git a/example/src/main/scala/com/github/jodersky/flow/example/Main.scala b/example/src/main/scala/com/github/jodersky/flow/example/Main.scala
index f202c64..5032d1c 100644
--- a/example/src/main/scala/com/github/jodersky/flow/example/Main.scala
+++ b/example/src/main/scala/com/github/jodersky/flow/example/Main.scala
@@ -3,24 +3,38 @@ package com.github.jodersky.flow.example
import scala.concurrent._
import scala.concurrent.ExecutionContext.Implicits.global
import com.github.jodersky.flow.Serial
+import scala.util.Try
+import scala.util.Success
object Main {
def main(args: Array[String]): Unit = {
- println("opening")
-
- Serial.debug(true)
- val s = Serial.open("/dev/ttyACM0", 115200){ data =>
- println(data.mkString("[",",","]"))
+ val isInt = Try(args(1).toInt) match {case Success(_) => true; case _ => false}
+ if (!(args.length == 2 && isInt)) {
+ println("invalid parameters")
+ println("parameters: port baud")
+ println("example: /dev/ttyACM0 115200")
+ return
}
- println("press enter to write a loooooooooong array of data")
- Console.readLine()
+ val port = args(0)
+ val baud = args(1).toInt
+
+ Serial.debug(true)
- val data: Array[Byte] = Array.fill(1000000)(42)
- s.write(data).map(d => println("sent: " + d.mkString("[",",","]"))).recover{case t => println("write error")}
+ println("opening " + port)
+ val serial = Serial.open(port, baud) { data =>
+ println("received: " + data.mkString("[", ",", "]"))
+ }
+ println("press enter to write a looong array of data")
+ Console.readLine()
+
+ val data: Array[Byte] = Array.fill(100)(42)
+ serial.write(data).map(d => println("wrote: " + d.mkString("[", ",", "]"))).recover { case t => println("write error") }
+
println("press enter to exit")
Console.readLine()
+
println("exiting")
Console.flush()
}