[ create a new paste ] login | about

Link: http://codepad.org/EDqiaqke    [ raw code | output | fork ]

hurracane - Scheme, pasted on Aug 12:
(#%require "constants.scm")
(#%require "firmataWINDOWS.rkt")
(#%require (only racket/base sleep))

(open-firmata "COM7")

(define LDR-pin 0)
(define button-pin 5)
(set-pin-mode! LDR-pin ANALOG_MODE)
(set-pin-mode! button-pin INPUT_MODE)

(define (print-analog-values)
  (report-analog-pin! LDR-pin ON)
  (let loop ()
    (display (read-analog-pin LDR-pin)) (newline)
    (sleep 1)
    (loop)))

(define (print-digital-values)
  (report-digital-port! ON)
  (let loop ()
    (display (is-pin-set? button-pin)) (newline)
    (sleep 1)
    (loop)))

(define (buttonTest)
  (display "Please press the button") (newline)
  (report-digital-port! ON)
  (let loop
    ((buttonval (is-pin-set? button-pin)))
    (if buttonval
        (begin (display "Success!") (newline)
               (report-digital-port! OFF))
        (begin (sleep .1)
               (loop (is-pin-set? button-pin))))))

(define (analogTest)
  (display "Testing sensor... Will succeed when values between 0 and 3966 occur") (newline)
  (report-analog-pin! LDR-pin ON)
  (let loop 
    ((tries 10)
     (sensorval (read-analog-pin LDR-pin)))
    (if (and (> sensorval 0)
             (< sensorval 3966))
        (begin (display "success! With a value of ") (display sensorval) (newline)
               (report-analog-pin! LDR-pin OFF))
        (if (< tries 5)
            (loop (+ tries 1)
                  (read-analog-pin LDR-pin))
            (begin (display "Sensor is returning the wrong values") (newline))))))

(print-digital-values)


Output:
1
reference to undefined identifier: #%require


Create a new paste based on this one


Comments: