module Spark_Digital 'cat;Data'
author 'Fab Lab BH'
version 1 0 
description ''

  spec ' ' 'Buzzer' 'Buzzer Pin _ Tone _' 'num num' 5 1000
  spec ' ' 'Buzzer2' 'Buzzer Pin _ State _' 'auto bool' 5 false
  spec ' ' 'LED' 'LED Pin _ State _' 'num bool' 5 false
  spec ' ' 'LED2 Pin' 'LED Pin _ Brightness _' 'num auto' 5 1000
  spec 'r' 'Button Pin' 'Button Pin _' 'auto' 27
  spec 'r' 'Inverted Button Pin' 'Inverted Button Pin  _' 'auto' 1
  spec 'r' 'Photo Interrupter Pin' 'Photo Interrupter Pin _' 'num' 5
  spec 'r' 'Tilt Switch Pin' 'Tilt Switch Pin _' 'num' 5
  spec 'r' 'Touch Pin' 'Touch Pin _' 'num' 5
  spec ' ' 'Horn' 'Horn Pin _ State _' 'num bool' 5 true
  spec ' ' 'Horn Pin' 'Horn Pin _ Tone _' 'num num' 5 1000

to 'Button Pin' Input {
  local 'Read1' (digitalReadOp Input 'up')
  if (Read1 == (booleanConstant true)) {
    return (not Read1)
  } else {
    return (booleanConstant true)
  }
}

to Buzzer Pin Tone {
  analogWriteOp Pin Tone
}

to Buzzer2 Pin State {
  digitalWriteOp Pin State
}

to Horn Pin State {
  digitalWriteOp Pin State
}

to 'Horn Pin' Pin Tone {
  analogWriteOp Pin Tone
}

to 'Inverted Button Pin' Input {
  local 'Read2' (digitalReadOp Input 'up')
  if (Read2 == (booleanConstant false)) {
    return Read2
  } else {
    return (booleanConstant true)
  }
}

to LED Pin State {
  digitalWriteOp Pin State
}

to 'LED2 Pin' Pin Brightness {
  analogWriteOp Pin Brightness
}

to 'Photo Interrupter Pin' Pin {
  return (digitalReadOp Pin)
}

to 'Tilt Switch Pin' Pin {
  return (digitalReadOp Pin)
}

to 'Touch Pin' Pin {
  return (digitalReadOp Pin)
}

