diff --git a/Images/7.png b/Images/7.png new file mode 100644 index 0000000..41d2b93 Binary files /dev/null and b/Images/7.png differ diff --git a/Images/8.png b/Images/8.png new file mode 100644 index 0000000..39604fd Binary files /dev/null and b/Images/8.png differ diff --git a/README.md b/README.md index b9577fc..88ad026 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ This library makes it easy for anyone—even if you don’t know how to code or ## Installation 1. **Download the Fan Motor Library:** - Download the library file from [here](RGB_LED.ubl). + Download the library file from [here](Spark_MultiDigitalPins.ubl). 2. **Open MicroBlocks IDE** on your computer. diff --git a/RGB_LED.ubl b/RGB_LED.ubl deleted file mode 100644 index 077afa1..0000000 --- a/RGB_LED.ubl +++ /dev/null @@ -1,63 +0,0 @@ -module RGB_LED -author unknown -version 1 0 -description '' -variables SetPins - - spec ' ' 'RGBLED' 'RGB Pin _ R _ G _ B _' 'auto bool bool bool' 17 false false false - spec ' ' 'PickColor' 'RGB Pin _ Color _' 'num str' 17 'Empty' - -to PickColor Pin Color { - if (Color == ('[data:toString]' 'Red')) { - digitalWriteOp Pin true - Pin += 1 - digitalWriteOp Pin false - Pin += 1 - digitalWriteOp Pin false - } (Color == ('[data:toString]' 'Yellow')) { - digitalWriteOp Pin true - Pin += 1 - digitalWriteOp Pin true - Pin += 1 - digitalWriteOp Pin false - } (Color == ('[data:toString]' 'Green')) { - digitalWriteOp Pin false - Pin += 1 - digitalWriteOp Pin true - Pin += 1 - digitalWriteOp Pin false - } (Color == ('[data:toString]' 'Purple')) { - digitalWriteOp Pin false - Pin += 1 - digitalWriteOp Pin true - Pin += 1 - digitalWriteOp Pin true - } (Color == ('[data:toString]' 'Blue')) { - digitalWriteOp Pin false - Pin += 1 - digitalWriteOp Pin false - Pin += 1 - digitalWriteOp Pin true - } true { - digitalWriteOp Pin true - Pin += 1 - digitalWriteOp Pin true - Pin += 1 - digitalWriteOp Pin true - } else { - digitalWriteOp Pin false - Pin += 1 - digitalWriteOp Pin false - Pin += 1 - digitalWriteOp Pin false - } -} - -to RGBLED Pin Red Green Blue { - digitalWriteOp Pin Red - Pin += 1 - digitalWriteOp Pin Green - Pin += 1 - digitalWriteOp Pin Blue -} - diff --git a/Spark_MultiDigitalPins.ubl b/Spark_MultiDigitalPins.ubl new file mode 100644 index 0000000..a4f731f --- /dev/null +++ b/Spark_MultiDigitalPins.ubl @@ -0,0 +1,46 @@ +module Spark_MultiDigitalPins Variables +author 'Fatima Idrees' +version 1 1 +description '' + + spec ' ' 'RGBLED' 'RGBLED Pin _ R _ G _ B _' 'auto bool bool bool' 17 false false false + spec ' ' 'RGBLED2' 'RGBLED Pin _ R _ G _ B _' 'auto auto auto auto' 17 50 50 50 + spec 'r' 'Ultransonic Pin' 'Ultransonic Pin _' 'num' 17 + +to RGBLED Pin Red Green Blue { + comment 'Created by Fatima Idrees' + digitalWriteOp Pin Red + digitalWriteOp (Pin + 1) Green + digitalWriteOp (Pin + 2) Blue +} + +to RGBLED2 Pin Red Green Blue { + comment 'Created by Fatima Idrees' + analogWriteOp Pin Red + analogWriteOp (Pin + 1) Green + analogWriteOp (Pin + 2) Blue +} + +to 'Ultransonic Pin' Input { + comment 'Contributed by Joan Guillén and Josep Ferràndiz' + digitalWriteOp (Input + 1) false + waitMicros 2 + digitalWriteOp (Input + 1) true + waitMicros 50 + digitalWriteOp (Input + 1) false + local 'start' (microsOp) + waitUntil (or (not (digitalReadOp (Input + 2))) (((microsOp) - start) > 23320)) + waitUntil (or (digitalReadOp (Input + 2)) (((microsOp) - start) > 23320)) + if (((microsOp) - start) > 23320) { + comment 'Distance sensor not ready; return the last distance reading' + return _sr04_last + } + comment 'Pulse sent. Measure time until echo is detected.' + start = (microsOp) + waitUntil (or (not (digitalReadOp (Input + 2))) (((microsOp) - start) > 23320)) + _sr04_last = ((10 * ((microsOp) - start)) / 583) + comment 'Leave some time for reverberations to die away.' + waitMillis 10 + return _sr04_last +} +