diff options
author | SudhakarKuma | 2021-05-03 05:55:29 +0530 |
---|---|---|
committer | SudhakarKuma | 2021-05-03 05:55:29 +0530 |
commit | 6d2a66e4dcfb943beb6465d46c6a33c389d29868 (patch) | |
tree | a07d6bde46afd1cb15efdb5acc0a011b9663ee89 | |
parent | 9df72386ce00e634ad0f8e4ac9fe5542da786762 (diff) | |
download | FLOSS-Arduino-Book-6d2a66e4dcfb943beb6465d46c6a33c389d29868.tar.gz FLOSS-Arduino-Book-6d2a66e4dcfb943beb6465d46c6a33c389d29868.tar.bz2 FLOSS-Arduino-Book-6d2a66e4dcfb943beb6465d46c6a33c389d29868.zip |
Maintain consistency in pushbutton
-rw-r--r-- | tools/openmodelica/windows/Arduino.mo | 12 | ||||
-rw-r--r-- | user-code/push/OpenModelica/led-push-button.mo | 14 | ||||
-rw-r--r-- | user-code/push/OpenModelica/push-button-status.mo | 9 | ||||
-rw-r--r-- | user-code/push/arduino/led-push-button/led-push-button.ino | 19 | ||||
-rw-r--r-- | user-code/push/arduino/push-button-status/push-button-status.ino | 5 | ||||
-rw-r--r-- | user-code/push/julia/led-push-button.jl | 4 | ||||
-rw-r--r-- | user-code/push/julia/push-button-status.jl | 3 | ||||
-rw-r--r-- | user-code/push/python/led-push-button.py | 3 | ||||
-rw-r--r-- | user-code/push/python/push-button-status.py | 4 | ||||
-rw-r--r-- | user-code/push/scilab/led-push-button.sce | 1 | ||||
-rw-r--r-- | user-code/push/scilab/push-button-status.sce | 2 | ||||
-rw-r--r-- | user-code/push/scilab/push-button-status.zcos | bin | 3823 -> 3822 bytes |
12 files changed, 43 insertions, 33 deletions
diff --git a/tools/openmodelica/windows/Arduino.mo b/tools/openmodelica/windows/Arduino.mo index e5a95ba..b15bb3b 100644 --- a/tools/openmodelica/windows/Arduino.mo +++ b/tools/openmodelica/windows/Arduino.mo @@ -566,7 +566,7 @@ Arduino.SerialCommunication.Functions.<b>ieeesingle2num</b>(hexa); import sComm = Arduino.SerialCommunication.Functions; import strm = Modelica.Utilities.Streams; Integer ok(fixed = false); - Integer digital_in(fixed = false); + Integer val(fixed = false); Integer digital_out(fixed = false); Integer c_ok(fixed = false); algorithm @@ -577,8 +577,8 @@ Arduino.SerialCommunication.Functions.<b>ieeesingle2num</b>(hexa); if ok <> 0 then strm.print("Unable to open serial port, please check"); else - digital_in := sComm.cmd_digital_in(1, 12) ""; - if digital_in == 0 then + val := sComm.cmd_digital_in(1, 12) ""; + if val == 0 then strm.print("0"); digital_out := sComm.cmd_digital_out(1, 9, 0) "This will turn OFF the blue LED"; sComm.delay(200); @@ -603,7 +603,7 @@ Arduino.SerialCommunication.Functions.<b>ieeesingle2num</b>(hexa); import sComm = Arduino.SerialCommunication.Functions; import strm = Modelica.Utilities.Streams; Integer ok(fixed = false); - Integer digital_in(fixed = false); + Integer val(fixed = false); Integer c_ok(fixed = false); algorithm when initial() then @@ -612,8 +612,8 @@ Arduino.SerialCommunication.Functions.<b>ieeesingle2num</b>(hexa); if ok <> 0 then strm.print("Unable to open serial port, please check"); else - digital_in := sComm.cmd_digital_in(1, 12); - if digital_in == 0 then + val := sComm.cmd_digital_in(1, 12); + if val == 0 then strm.print("0"); sComm.delay(200); else diff --git a/user-code/push/OpenModelica/led-push-button.mo b/user-code/push/OpenModelica/led-push-button.mo index 50f1f04..7764c88 100644 --- a/user-code/push/OpenModelica/led-push-button.mo +++ b/user-code/push/OpenModelica/led-push-button.mo @@ -9,24 +9,28 @@ model led_push_button "Conrolling LED with PushButton" algorithm
when initial() then
ok := sComm.open_serial(1, 2, 115200) "At port 2 with baudrate of 115200";
+ sComm.delay(2000);
end when;
if ok <> 0 then
strm.print("Unable to open serial port, please check");
else
- val := sComm.cmd_digital_in(1, 12) "Read from digital pin 12";
+ val := sComm.cmd_digital_in(1, 12) "";
if val == 0 then
+ strm.print("0");
digital_out := sComm.cmd_digital_out(1, 9, 0) "This will turn OFF the blue LED";
sComm.delay(200);
else
+ strm.print("1");
digital_out := sComm.cmd_digital_out(1, 9, 1) "This will turn ON the blue LED";
sComm.delay(200);
end if;
end if;
- //for i in 1:1000 loop
- //end for;
- //strm.print(String(time));
+//for i in 1:1000 loop
+//end for;
+// strm.print(String(time));
when terminal() then
c_ok := sComm.close_serial(1) "To close the connection safely";
end when;
- annotation(experiment(StartTime = 0, StopTime = 10, Tolerance = 1e-6, Interval = 0.1));
+ annotation(
+ experiment(StartTime = 0, StopTime = 10, Tolerance = 1e-6, Interval = 0.1));
end led_push_button;
diff --git a/user-code/push/OpenModelica/push-button-status.mo b/user-code/push/OpenModelica/push-button-status.mo index d31ebd7..2a8dee0 100644 --- a/user-code/push/OpenModelica/push-button-status.mo +++ b/user-code/push/OpenModelica/push-button-status.mo @@ -21,11 +21,12 @@ algorithm sComm.delay(200);
end if;
end if;
- //for i in 1:1000 loop
- //end for;
+//for i in 1:1000 loop
+//end for;
when terminal() then
c_ok := sComm.close_serial(1) "To close the connection safely";
end when;
- //sComm.cmd_arduino_meter(digital_in);
- annotation(experiment(StartTime = 0, StopTime = 10, Tolerance = 1e-6, Interval = 0.1));
+//sComm.cmd_arduino_meter(digital_in);
+ annotation(
+ experiment(StartTime = 0, StopTime = 10, Tolerance = 1e-6, Interval = 0.1));
end push_button_status;
diff --git a/user-code/push/arduino/led-push-button/led-push-button.ino b/user-code/push/arduino/led-push-button/led-push-button.ino index 75f580b..928b7cd 100644 --- a/user-code/push/arduino/led-push-button/led-push-button.ino +++ b/user-code/push/arduino/led-push-button/led-push-button.ino @@ -1,20 +1,21 @@ const int sensorPin = 12; const int ledPin = 9; -int sensorValue; +int sensorValue = 0; int i; void setup() { Serial.begin(115200); - pinMode(9, OUTPUT); - pinMode(12, INPUT); - for (i = 0; i < 1000; i++) { - sensorValue = digitalRead(12); + pinMode(sensorPin, INPUT); + pinMode(ledPin, OUTPUT); + for (i = 0; i < 50; i++) { + sensorValue = digitalRead(sensorPin); + Serial.println(sensorValue); // print it at the Serial Monitor if (sensorValue == 0) { - digitalWrite(9, LOW); - delay(5); + digitalWrite(ledPin, LOW); + delay(200); } else { - digitalWrite(9, HIGH); - delay(5); + digitalWrite(ledPin, HIGH); + delay(200); } } } diff --git a/user-code/push/arduino/push-button-status/push-button-status.ino b/user-code/push/arduino/push-button-status/push-button-status.ino index caae0dc..09880b8 100644 --- a/user-code/push/arduino/push-button-status/push-button-status.ino +++ b/user-code/push/arduino/push-button-status/push-button-status.ino @@ -1,11 +1,12 @@ -int sensorPin = 12; // Declare the push-button +const int sensorPin = 12; // Declare the push-button int sensorValue = 0; void setup() { Serial.begin(115200); pinMode(sensorPin, INPUT); // declare the sensorPin as an INPUT - for (int i = 0; i < 1000; i++){ + for (int i = 0; i < 50; i++){ sensorValue = digitalRead(sensorPin); // read push-button value Serial.println(sensorValue); // print it at the Serial Monitor + delay(200); } } void loop() { diff --git a/user-code/push/julia/led-push-button.jl b/user-code/push/julia/led-push-button.jl index 907159e..d899a7e 100644 --- a/user-code/push/julia/led-push-button.jl +++ b/user-code/push/julia/led-push-button.jl @@ -4,12 +4,14 @@ include("ArduinoTools.jl") ser = ArduinoTools.connectBoard(115200) ArduinoTools.pinMode(ser, 9, "OUTPUT") ArduinoTools.pinMode(ser, 12, "INPUT") -for i = 1:200 +for i = 1:20 val = ArduinoTools.digiRead(ser, 12) + println(val) if val == 0 ArduinoTools.digiWrite(ser, 9, 0) else ArduinoTools.digiWrite(ser, 9, 1) end + sleep(0.5) end close(ser) diff --git a/user-code/push/julia/push-button-status.jl b/user-code/push/julia/push-button-status.jl index bc51541..5b7b394 100644 --- a/user-code/push/julia/push-button-status.jl +++ b/user-code/push/julia/push-button-status.jl @@ -3,8 +3,9 @@ include("ArduinoTools.jl") ser = ArduinoTools.connectBoard(115200) ArduinoTools.pinMode(ser, 12, "INPUT") -for i = 1:200 +for i = 1:20 val = ArduinoTools.digiRead(ser, 12) println(val) + sleep(0.5) end close(ser) diff --git a/user-code/push/python/led-push-button.py b/user-code/push/python/led-push-button.py index 887b4c6..e0ed6d5 100644 --- a/user-code/push/python/led-push-button.py +++ b/user-code/push/python/led-push-button.py @@ -27,8 +27,7 @@ class PUSHBUTTON_LED: self.pushbutton = 12 for i in range(20): val = self.obj_arduino.cmd_digital_in(1, self.pushbutton) - # sleep(0.5) - # print (val) + print(val) self.obj_arduino.cmd_digital_out(1, self.blue, val) sleep(0.5) def exit(self): diff --git a/user-code/push/python/push-button-status.py b/user-code/push/python/push-button-status.py index a8864c4..3e99c73 100644 --- a/user-code/push/python/push-button-status.py +++ b/user-code/push/python/push-button-status.py @@ -24,8 +24,8 @@ class PUSHBUTTON: self.pushbutton = 12 for i in range(20): val = self.obj_arduino.cmd_digital_in(1, self.pushbutton) - sleep(1) - print (val) + print(val) + sleep(0.5) def exit(self): self.obj_arduino.close_serial() diff --git a/user-code/push/scilab/led-push-button.sce b/user-code/push/scilab/led-push-button.sce index 21c4045..e452ab4 100644 --- a/user-code/push/scilab/led-push-button.sce +++ b/user-code/push/scilab/led-push-button.sce @@ -2,6 +2,7 @@ ok = open_serial(1, 2, 115200); // port 2, baudrate 115200 if ok ~= 0 then error('Unable to open serial port, please check'); end
for i = 1:1000 //Run for 1000 iterations
val = cmd_digital_in(1, 12)
+ cmd_arduino_meter(val);
if val == 0
cmd_digital_out(1, 9, 0)
else
diff --git a/user-code/push/scilab/push-button-status.sce b/user-code/push/scilab/push-button-status.sce index 2f4f74b..fbe7dc9 100644 --- a/user-code/push/scilab/push-button-status.sce +++ b/user-code/push/scilab/push-button-status.sce @@ -1,5 +1,5 @@ ok = open_serial(1, 2, 115200); // port 2, baud rate 115200
-if ok ~= 0 then error('Unable to open serial port, please check'), end
+if ok ~= 0 then error('Unable to open serial port, please check'); end
for i = 1:1000 // Run for 1000 iterations
val = cmd_digital_in(1, 12); // Read the status of pin 12
cmd_arduino_meter(val);
diff --git a/user-code/push/scilab/push-button-status.zcos b/user-code/push/scilab/push-button-status.zcos Binary files differindex b02019d..1834212 100644 --- a/user-code/push/scilab/push-button-status.zcos +++ b/user-code/push/scilab/push-button-status.zcos |