aboutsummaryrefslogtreecommitdiff
path: root/scala/jssc/src/test/scala/com/github/jodersky/ace/jssc/test/Main.scala
blob: 5251ce85d3ac5bd86bcfee65007b5f3f3d68a906 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package com.github.jodersky.ace.jssc.test

import com.github.jodersky.ace.Arq;
import com.github.jodersky.ace.Framer;
import com.github.jodersky.ace._
import com.github.jodersky.ace.jssc._
import scala.concurrent.ExecutionContext.Implicits.global
import _root_.jssc.SerialPort


object Main {
  
  def main(args: Array[String]): Unit = {
    val serial = new Serial("/dev/ttyACM0")
    val framer = new Framer
    val arq = new Arq(200)
    val app = new SimpleActionLayer((s: Seq[Int]) => println(s))
    
    serial connect framer connect arq connect app
    serial.begin()
    
    while (true) {
      app.send(Console.readLine.getBytes().map(_.toInt)).map(sent => Console.println("> " + sent))
    }
    
  }
  
}