summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--2.3-1/macros/Hardware/AVR/AVRGetTimerValue.binbin0 -> 3564 bytes
-rw-r--r--2.3-1/macros/Hardware/AVR/AVRGetTimerValue.sci31
-rw-r--r--2.3-1/macros/Hardware/AVR/AVRPWMSetup.binbin5760 -> 5760 bytes
-rw-r--r--2.3-1/macros/Hardware/AVR/AVRPWMSetup.sci2
-rw-r--r--2.3-1/macros/Hardware/AVR/AVRTimerSetup.binbin0 -> 3552 bytes
-rw-r--r--2.3-1/macros/Hardware/AVR/AVRTimerSetup.sci31
-rw-r--r--2.3-1/macros/Hardware/AVR/libbin884 -> 932 bytes
-rw-r--r--2.3-1/macros/Hardware/AVR/names2
-rw-r--r--2.3-1/macros/Scilab-Arduino/GenerateSetupFunction.binbin0 -> 4288 bytes
-rw-r--r--2.3-1/macros/Scilab-Arduino/GenerateSetupFunction.sci34
-rw-r--r--2.3-1/macros/Scilab-Arduino/GetArduinoFunctions.binbin0 -> 1832 bytes
-rw-r--r--2.3-1/macros/Scilab-Arduino/GetArduinoFunctions.sci22
-rw-r--r--2.3-1/macros/Scilab-Arduino/GetArduinoSetupFunctions.binbin0 -> 1456 bytes
-rw-r--r--2.3-1/macros/Scilab-Arduino/GetArduinoSetupFunctions.sci17
-rw-r--r--2.3-1/macros/Scilab-Arduino/InsertSetupInList.binbin0 -> 6068 bytes
-rw-r--r--2.3-1/macros/Scilab-Arduino/InsertSetupInList.sci58
-rw-r--r--2.3-1/macros/Scilab-Arduino/IsArduinoFunction.binbin0 -> 2664 bytes
-rw-r--r--2.3-1/macros/Scilab-Arduino/IsArduinoFunction.sci22
-rw-r--r--2.3-1/macros/Scilab-Arduino/IsArduinoSetupFunction.binbin0 -> 2712 bytes
-rw-r--r--2.3-1/macros/Scilab-Arduino/IsArduinoSetupFunction.sci22
-rw-r--r--2.3-1/macros/Scilab-Arduino/buildmacros.sce29
-rw-r--r--2.3-1/macros/Scilab-Arduino/libbin0 -> 772 bytes
-rw-r--r--2.3-1/macros/Scilab-Arduino/names6
23 files changed, 275 insertions, 1 deletions
diff --git a/2.3-1/macros/Hardware/AVR/AVRGetTimerValue.bin b/2.3-1/macros/Hardware/AVR/AVRGetTimerValue.bin
new file mode 100644
index 00000000..26b4b47e
--- /dev/null
+++ b/2.3-1/macros/Hardware/AVR/AVRGetTimerValue.bin
Binary files differ
diff --git a/2.3-1/macros/Hardware/AVR/AVRGetTimerValue.sci b/2.3-1/macros/Hardware/AVR/AVRGetTimerValue.sci
new file mode 100644
index 00000000..ab0146aa
--- /dev/null
+++ b/2.3-1/macros/Hardware/AVR/AVRGetTimerValue.sci
@@ -0,0 +1,31 @@
+function counts = AVRGetTimerValue(timer)
+// Function to set the prescalar for timer.
+//
+// Calling Sequence
+// AVRgetTimerValue(timer, prescalar)
+//
+// Parameters
+// timer: timer to be set up (0,1,2)
+// prescalar: prescalar to be used for generating PWM waveform (0-7)
+// ***Refer datasheet for more description about timer
+//
+// Description
+// This function sets prescalr for timers. 'timer' decides which of the
+// three (0,1,2) timers available to be used. The 'prescalar' is needed for
+// deciding timer clock. Select appropriate prescalar depending on MCU clock
+// and requirement.
+//
+//
+// Examples
+// AVRTimerSetup(0,1) //Timer 0 with no scaling
+//
+// See also
+// AVRGetTimerValue
+//
+// Authors
+// Siddhesh Wani
+//
+
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
+endfunction
diff --git a/2.3-1/macros/Hardware/AVR/AVRPWMSetup.bin b/2.3-1/macros/Hardware/AVR/AVRPWMSetup.bin
index 6ae56fda..971e43ee 100644
--- a/2.3-1/macros/Hardware/AVR/AVRPWMSetup.bin
+++ b/2.3-1/macros/Hardware/AVR/AVRPWMSetup.bin
Binary files differ
diff --git a/2.3-1/macros/Hardware/AVR/AVRPWMSetup.sci b/2.3-1/macros/Hardware/AVR/AVRPWMSetup.sci
index 7e1c234f..1bee050d 100644
--- a/2.3-1/macros/Hardware/AVR/AVRPWMSetup.sci
+++ b/2.3-1/macros/Hardware/AVR/AVRPWMSetup.sci
@@ -2,7 +2,7 @@ function AVRPWMSetup(timer, prescalar, waveform_mode, output_mode)
// Function to initialise PWM of AVR
//
// Calling Sequence
-// AVRSetupADC(timer, prescalar, waveform_mode, output_mode)
+// AVRPWMSetup(timer, prescalar, waveform_mode, output_mode)
//
// Parameters
// timer: timer to be used for PWM generation (0,1,2)
diff --git a/2.3-1/macros/Hardware/AVR/AVRTimerSetup.bin b/2.3-1/macros/Hardware/AVR/AVRTimerSetup.bin
new file mode 100644
index 00000000..65e8f454
--- /dev/null
+++ b/2.3-1/macros/Hardware/AVR/AVRTimerSetup.bin
Binary files differ
diff --git a/2.3-1/macros/Hardware/AVR/AVRTimerSetup.sci b/2.3-1/macros/Hardware/AVR/AVRTimerSetup.sci
new file mode 100644
index 00000000..6316cdd7
--- /dev/null
+++ b/2.3-1/macros/Hardware/AVR/AVRTimerSetup.sci
@@ -0,0 +1,31 @@
+function AVRTimerSetup(timer, prescalar)
+// Function to set the prescalar for timer.
+//
+// Calling Sequence
+// AVRTimerSetup(timer, prescalar)
+//
+// Parameters
+// timer: timer to be set up (0,1,2)
+// prescalar: prescalar to be used for generating PWM waveform (0-7)
+// ***Refer datasheet for more description about timer
+//
+// Description
+// This function sets prescalr for timers. 'timer' decides which of the
+// three (0,1,2) timers available to be used. The 'prescalar' is needed for
+// deciding timer clock. Select appropriate prescalar depending on MCU clock
+// and requirement.
+//
+//
+// Examples
+// AVRTimerSetup(0,1) //Timer 0 with no scaling
+//
+// See also
+// AVRGetTimerValue
+//
+// Authors
+// Siddhesh Wani
+//
+
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for AVR.
+endfunction
diff --git a/2.3-1/macros/Hardware/AVR/lib b/2.3-1/macros/Hardware/AVR/lib
index 3e0137c5..b1986824 100644
--- a/2.3-1/macros/Hardware/AVR/lib
+++ b/2.3-1/macros/Hardware/AVR/lib
Binary files differ
diff --git a/2.3-1/macros/Hardware/AVR/names b/2.3-1/macros/Hardware/AVR/names
index 0e6aa636..126da77a 100644
--- a/2.3-1/macros/Hardware/AVR/names
+++ b/2.3-1/macros/Hardware/AVR/names
@@ -2,9 +2,11 @@ AVRADCSetup
AVRDigitalIn
AVRDigitalOut
AVRDigitalSetup
+AVRGetTimerValue
AVRPWMSetDuty
AVRPWMSetup
AVRReadADC
+AVRTimerSetup
GetAVRSupportFunctions
GetPeripheral
InsertPeripheralInList
diff --git a/2.3-1/macros/Scilab-Arduino/GenerateSetupFunction.bin b/2.3-1/macros/Scilab-Arduino/GenerateSetupFunction.bin
new file mode 100644
index 00000000..7a5052dc
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/GenerateSetupFunction.bin
Binary files differ
diff --git a/2.3-1/macros/Scilab-Arduino/GenerateSetupFunction.sci b/2.3-1/macros/Scilab-Arduino/GenerateSetupFunction.sci
new file mode 100644
index 00000000..db96e190
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/GenerateSetupFunction.sci
@@ -0,0 +1,34 @@
+function GenerateSetupFunction(FileInfo)
+
+SetupListFile = FileInfo.SetupListFile;
+
+load(SetupListFile,'SetupList');
+
+SetupArduinoFile = fullfile(FileInfo.CStyleOutCCCodeDir,'setup_arduino.c');
+C_SCI2CHeader(SetupArduinoFile);
+
+PrintStringInfo('#include ""setup_arduino.h""',SetupArduinoFile,'file','y');
+PrintStringInfo(' ',SetupArduinoFile,'file','y');
+PrintStringInfo('int setup_arduino()',SetupArduinoFile,'file','y');
+PrintStringInfo('{',SetupArduinoFile,'file','y');
+
+nelements=size(SetupList);
+
+for i=1:nelements
+ funcall = ' ';
+ funcall = funcall + SetupList(i)(1);
+ funcall = funcall + '(';
+ NInArg = size(SetupList(i))-1;
+ for j=1:NInArg-1
+ funcall = funcall + SetupList(i)(j+1);
+ funcall = funcall + ', ';
+ end
+ funcall = funcall + SetupList(i)(NInArg+1);
+ funcall = funcall + ');';
+ PrintStringInfo(funcall,SetupArduinoFile,'file','y');
+end
+PrintStringInfo(' ',SetupArduinoFile,'file','y');
+PrintStringInfo(' return (0); ',SetupArduinoFile,'file','y');
+PrintStringInfo('}',SetupArduinoFile,'file','y');
+
+endfunction
diff --git a/2.3-1/macros/Scilab-Arduino/GetArduinoFunctions.bin b/2.3-1/macros/Scilab-Arduino/GetArduinoFunctions.bin
new file mode 100644
index 00000000..82b0d456
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/GetArduinoFunctions.bin
Binary files differ
diff --git a/2.3-1/macros/Scilab-Arduino/GetArduinoFunctions.sci b/2.3-1/macros/Scilab-Arduino/GetArduinoFunctions.sci
new file mode 100644
index 00000000..19d59ca4
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/GetArduinoFunctions.sci
@@ -0,0 +1,22 @@
+function ArduinoFunctions = GetArduinoFunctions()
+// -----------------------------------------------------------------
+// Get list of Arduino functions supported
+//
+// Input data:
+// None
+//
+// Output data:
+// List of Arduino functions supported
+//
+// Author: Siddhesh Wani
+// -----------------------------------------------------------------
+
+ArduinoFunctions = [
+ "cmd_digital_out"
+ "cmd_digital_in"
+ "cmd_analog_out"
+ "cmd_analog_in"
+ "cmd_dcmotor_setup"
+ "cmd_dcmotor_run"];
+
+endfunction
diff --git a/2.3-1/macros/Scilab-Arduino/GetArduinoSetupFunctions.bin b/2.3-1/macros/Scilab-Arduino/GetArduinoSetupFunctions.bin
new file mode 100644
index 00000000..048da7d7
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/GetArduinoSetupFunctions.bin
Binary files differ
diff --git a/2.3-1/macros/Scilab-Arduino/GetArduinoSetupFunctions.sci b/2.3-1/macros/Scilab-Arduino/GetArduinoSetupFunctions.sci
new file mode 100644
index 00000000..f377d385
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/GetArduinoSetupFunctions.sci
@@ -0,0 +1,17 @@
+function ArduinoSetupFunctions = GetArduinoSetupFunctions()
+// -----------------------------------------------------------------
+// Get list of Arduino setup functions supported
+//
+// Input data:
+// None
+//
+// Output data:
+// List of Arduino setup functions supported
+//
+// Author: Siddhesh Wani
+// -----------------------------------------------------------------
+
+ArduinoSetupFunctions = [
+ "cmd_dcmotor_setup"];
+
+endfunction
diff --git a/2.3-1/macros/Scilab-Arduino/InsertSetupInList.bin b/2.3-1/macros/Scilab-Arduino/InsertSetupInList.bin
new file mode 100644
index 00000000..41c1a3fe
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/InsertSetupInList.bin
Binary files differ
diff --git a/2.3-1/macros/Scilab-Arduino/InsertSetupInList.sci b/2.3-1/macros/Scilab-Arduino/InsertSetupInList.sci
new file mode 100644
index 00000000..5c6be8bb
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/InsertSetupInList.sci
@@ -0,0 +1,58 @@
+function InsertSetupInList(FunName,InArg,NInArg,SetupListFile,FunType)
+
+load(SetupListFile,'SetupList');
+
+//Check first if current input function already exists in the list
+nelements = size(SetupList);
+found=%F;
+
+if(FunType=='Setup')
+ for i=1:nelements
+ if(SetupList(i)(1) == FunName)
+ for j=1:NInArg
+ if(SetupList(i)(j+1) ~= InArg(j).Name)
+ found = %F
+ break;
+ else
+ found = %T;
+ end
+ end
+ end
+ if (found == %T)
+ break; //One match found. No need to check further.
+ end
+ end
+
+ if(found == %F)
+ temp = list(FunName);
+ for i=1:NInArg
+ temp($+1) = InArg(i).Name;
+ end
+ end
+ SetupList($+1) = temp;
+elseif((FunType=='Init')&((FunName=='cmd_digital_out')|(FunName=='cmd_analog_out')|(FunName=='cmd_digital_in')))
+ for i=1:nelements
+ if(SetupList(i)(1) == FunName)
+ if(SetupList(i)(2) == InArg(2).Name)
+ found = %T
+ break;
+ else
+ found = %F;
+ end
+ end
+ end
+
+ if(found == %F)
+ temp = list('pinMode');
+ temp($+1) = InArg(2).Name;
+ if ((FunName=='cmd_digital_out')|(FunName=='cmd_analog_out'))
+ temp($+1) = 'OUTPUT';
+ elseif (FunName == 'cmd_digital_in')
+ temp($+1) = 'INPUT';
+ end
+ end
+ SetupList($+1) = temp;
+end
+
+save(SetupListFile,'SetupList');
+endfunction
diff --git a/2.3-1/macros/Scilab-Arduino/IsArduinoFunction.bin b/2.3-1/macros/Scilab-Arduino/IsArduinoFunction.bin
new file mode 100644
index 00000000..5dbfacad
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/IsArduinoFunction.bin
Binary files differ
diff --git a/2.3-1/macros/Scilab-Arduino/IsArduinoFunction.sci b/2.3-1/macros/Scilab-Arduino/IsArduinoFunction.sci
new file mode 100644
index 00000000..de1c770b
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/IsArduinoFunction.sci
@@ -0,0 +1,22 @@
+function Output = IsArduinoFunction(FunName)
+// -----------------------------------------------------------------
+// Check whether input function name is an Arduino function or not.
+//
+// Input data:
+// FunName: Name of the function to be checked
+//
+// Output data:
+// Output: True or False depending whether given function is an
+// Arduino function or not
+//
+// Author: Siddhesh Wani
+// -----------------------------------------------------------------
+
+//Get list of supported functions for Arduino
+ArduinoFunctions = GetArduinoFunctions();
+
+//Check whether input function is present in above list or not
+FunNameInArduino = members(FunName,ArduinoFunctions);
+Output = bool2s(FunNameInArduino~=0);
+
+endfunction
diff --git a/2.3-1/macros/Scilab-Arduino/IsArduinoSetupFunction.bin b/2.3-1/macros/Scilab-Arduino/IsArduinoSetupFunction.bin
new file mode 100644
index 00000000..8948d1a3
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/IsArduinoSetupFunction.bin
Binary files differ
diff --git a/2.3-1/macros/Scilab-Arduino/IsArduinoSetupFunction.sci b/2.3-1/macros/Scilab-Arduino/IsArduinoSetupFunction.sci
new file mode 100644
index 00000000..fae7f625
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/IsArduinoSetupFunction.sci
@@ -0,0 +1,22 @@
+function Output = IsArduinoSetupFunction(FunName)
+// -----------------------------------------------------------------
+// Check whether input function name is an Arduino setup function or not.
+//
+// Input data:
+// FunName: Name of the function to be checked
+//
+// Output data:
+// Output: True or False depending whether given function is an
+// Arduino setup function or not
+//
+// Author: Siddhesh Wani
+// -----------------------------------------------------------------
+
+//Get list of supported functions for Arduino
+ArduinoSetupFunctions = GetArduinoSetupFunctions();
+
+//Check whether input function is present in above list or not
+FunNameInArduinoSetup = members(FunName,ArduinoSetupFunctions);
+Output = bool2s(FunNameInArduinoSetup~=0);
+
+endfunction
diff --git a/2.3-1/macros/Scilab-Arduino/buildmacros.sce b/2.3-1/macros/Scilab-Arduino/buildmacros.sce
new file mode 100644
index 00000000..dfeb4755
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/buildmacros.sce
@@ -0,0 +1,29 @@
+// This file is released into the public domain
+
+Directories = [ "ASTManagement", ...
+ "CCodeGeneration", ...
+ "ErrorMessages", ...
+ "findDeps", ...
+ "FunctionAnnotation", ...
+ "FunctionList", ...
+ "GeneralFunctions", ...
+ "SymbolTable", ...
+ "ToolInitialization"...
+ "Hardware/AVR"...
+ "Scilab-Arduino" ];
+
+
+current_path_buildmacros = get_absolute_file_path("buildmacros.sce");
+
+for K=1:size(Directories,"*")
+ myfile = current_path_buildmacros + filesep() + Directories(K) + filesep() + "buildmacros.sce";
+ if isfile(myfile) then
+ exec(myfile);
+ end
+end
+
+clear current_path_buildmacros;
+
+tbx_build_macros(TOOLBOX_NAME, get_absolute_file_path('buildmacros.sce'));
+
+clear tbx_build_macros;
diff --git a/2.3-1/macros/Scilab-Arduino/lib b/2.3-1/macros/Scilab-Arduino/lib
new file mode 100644
index 00000000..bd0cb707
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/lib
Binary files differ
diff --git a/2.3-1/macros/Scilab-Arduino/names b/2.3-1/macros/Scilab-Arduino/names
new file mode 100644
index 00000000..55eb6fef
--- /dev/null
+++ b/2.3-1/macros/Scilab-Arduino/names
@@ -0,0 +1,6 @@
+GenerateSetupFunction
+GetArduinoFunctions
+GetArduinoSetupFunctions
+InsertSetupInList
+IsArduinoFunction
+IsArduinoSetupFunction