initial commit
This commit is contained in:
		
							
								
								
									
										6
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | ||||
| .pio | ||||
| .pioenvs | ||||
| .piolibdeps | ||||
| .vscode/.browse.c_cpp.db* | ||||
| .vscode/c_cpp_properties.json | ||||
| .vscode/launch.json | ||||
							
								
								
									
										67
									
								
								.travis.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								.travis.yml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,67 @@ | ||||
| # Continuous Integration (CI) is the practice, in software | ||||
| # engineering, of merging all developer working copies with a shared mainline | ||||
| # several times a day < https://docs.platformio.org/page/ci/index.html > | ||||
| # | ||||
| # Documentation: | ||||
| # | ||||
| # * Travis CI Embedded Builds with PlatformIO | ||||
| #   < https://docs.travis-ci.com/user/integration/platformio/ > | ||||
| # | ||||
| # * PlatformIO integration with Travis CI | ||||
| #   < https://docs.platformio.org/page/ci/travis.html > | ||||
| # | ||||
| # * User Guide for `platformio ci` command | ||||
| #   < https://docs.platformio.org/page/userguide/cmd_ci.html > | ||||
| # | ||||
| # | ||||
| # Please choose one of the following templates (proposed below) and uncomment | ||||
| # it (remove "# " before each line) or use own configuration according to the | ||||
| # Travis CI documentation (see above). | ||||
| # | ||||
|  | ||||
|  | ||||
| # | ||||
| # Template #1: General project. Test it using existing `platformio.ini`. | ||||
| # | ||||
|  | ||||
| # language: python | ||||
| # python: | ||||
| #     - "2.7" | ||||
| # | ||||
| # sudo: false | ||||
| # cache: | ||||
| #     directories: | ||||
| #         - "~/.platformio" | ||||
| # | ||||
| # install: | ||||
| #     - pip install -U platformio | ||||
| #     - platformio update | ||||
| # | ||||
| # script: | ||||
| #     - platformio run | ||||
|  | ||||
|  | ||||
| # | ||||
| # Template #2: The project is intended to be used as a library with examples. | ||||
| # | ||||
|  | ||||
| # language: python | ||||
| # python: | ||||
| #     - "2.7" | ||||
| # | ||||
| # sudo: false | ||||
| # cache: | ||||
| #     directories: | ||||
| #         - "~/.platformio" | ||||
| # | ||||
| # env: | ||||
| #     - PLATFORMIO_CI_SRC=path/to/test/file.c | ||||
| #     - PLATFORMIO_CI_SRC=examples/file.ino | ||||
| #     - PLATFORMIO_CI_SRC=path/to/test/directory | ||||
| # | ||||
| # install: | ||||
| #     - pip install -U platformio | ||||
| #     - platformio update | ||||
| # | ||||
| # script: | ||||
| #     - platformio ci --lib="." --board=ID_1 --board=ID_2 --board=ID_N | ||||
							
								
								
									
										7
									
								
								.vscode/extensions.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								.vscode/extensions.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | ||||
| { | ||||
| 	// See http://go.microsoft.com/fwlink/?LinkId=827846 | ||||
| 	// for the documentation about the extensions.json format | ||||
| 	"recommendations": [ | ||||
| 		"platformio.platformio-ide" | ||||
| 	] | ||||
| } | ||||
							
								
								
									
										6
									
								
								.vscode/settings.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								.vscode/settings.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | ||||
| { | ||||
|     "terminal.integrated.env.linux": { | ||||
|         "PATH": "/home/salfter/.platformio/penv/bin:/home/salfter/.platformio/penv:/usr/lib/llvm/6/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/games/bin:/mnt/media/scripts", | ||||
|         "PLATFORMIO_CALLER": "vscode" | ||||
|     } | ||||
| } | ||||
							
								
								
									
										39
									
								
								include/README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								include/README
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,39 @@ | ||||
|  | ||||
| This directory is intended for project header files. | ||||
|  | ||||
| A header file is a file containing C declarations and macro definitions | ||||
| to be shared between several project source files. You request the use of a | ||||
| header file in your project source file (C, C++, etc) located in `src` folder | ||||
| by including it, with the C preprocessing directive `#include'. | ||||
|  | ||||
| ```src/main.c | ||||
|  | ||||
| #include "header.h" | ||||
|  | ||||
| int main (void) | ||||
| { | ||||
|  ... | ||||
| } | ||||
| ``` | ||||
|  | ||||
| Including a header file produces the same results as copying the header file | ||||
| into each source file that needs it. Such copying would be time-consuming | ||||
| and error-prone. With a header file, the related declarations appear | ||||
| in only one place. If they need to be changed, they can be changed in one | ||||
| place, and programs that include the header file will automatically use the | ||||
| new version when next recompiled. The header file eliminates the labor of | ||||
| finding and changing all the copies as well as the risk that a failure to | ||||
| find one copy will result in inconsistencies within a program. | ||||
|  | ||||
| In C, the usual convention is to give header files names that end with `.h'. | ||||
| It is most portable to use only letters, digits, dashes, and underscores in | ||||
| header file names, and at most one dot. | ||||
|  | ||||
| Read more about using header files in official GCC documentation: | ||||
|  | ||||
| * Include Syntax | ||||
| * Include Operation | ||||
| * Once-Only Headers | ||||
| * Computed Includes | ||||
|  | ||||
| https://gcc.gnu.org/onlinedocs/cpp/Header-Files.html | ||||
							
								
								
									
										46
									
								
								lib/README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								lib/README
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,46 @@ | ||||
|  | ||||
| This directory is intended for project specific (private) libraries. | ||||
| PlatformIO will compile them to static libraries and link into executable file. | ||||
|  | ||||
| The source code of each library should be placed in a an own separate directory | ||||
| ("lib/your_library_name/[here are source files]"). | ||||
|  | ||||
| For example, see a structure of the following two libraries `Foo` and `Bar`: | ||||
|  | ||||
| |--lib | ||||
| |  | | ||||
| |  |--Bar | ||||
| |  |  |--docs | ||||
| |  |  |--examples | ||||
| |  |  |--src | ||||
| |  |     |- Bar.c | ||||
| |  |     |- Bar.h | ||||
| |  |  |- library.json (optional, custom build options, etc) https://docs.platformio.org/page/librarymanager/config.html | ||||
| |  | | ||||
| |  |--Foo | ||||
| |  |  |- Foo.c | ||||
| |  |  |- Foo.h | ||||
| |  | | ||||
| |  |- README --> THIS FILE | ||||
| | | ||||
| |- platformio.ini | ||||
| |--src | ||||
|    |- main.c | ||||
|  | ||||
| and a contents of `src/main.c`: | ||||
| ``` | ||||
| #include <Foo.h> | ||||
| #include <Bar.h> | ||||
|  | ||||
| int main (void) | ||||
| { | ||||
|   ... | ||||
| } | ||||
|  | ||||
| ``` | ||||
|  | ||||
| PlatformIO Library Dependency Finder will find automatically dependent | ||||
| libraries scanning project source files. | ||||
|  | ||||
| More information about PlatformIO Library Dependency Finder | ||||
| - https://docs.platformio.org/page/librarymanager/ldf.html | ||||
							
								
								
									
										14
									
								
								platformio.ini
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								platformio.ini
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| ; PlatformIO Project Configuration File | ||||
| ; | ||||
| ;   Build options: build flags, source filter | ||||
| ;   Upload options: custom upload port, speed and extra flags | ||||
| ;   Library options: dependencies, extra library storages | ||||
| ;   Advanced options: extra scripting | ||||
| ; | ||||
| ; Please visit documentation for the other options and examples | ||||
| ; https://docs.platformio.org/page/projectconf.html | ||||
|  | ||||
| [env:uno] | ||||
| platform = atmelavr | ||||
| board = uno | ||||
| framework = arduino | ||||
							
								
								
									
										35
									
								
								src/main.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								src/main.cpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,35 @@ | ||||
| #include <Arduino.h> | ||||
|  | ||||
| #define BTN_1 11 | ||||
| #define BTN_2 12 | ||||
| #define STEP 3 | ||||
| #define DIR 2 | ||||
|  | ||||
| void setup() { | ||||
|   pinMode(BTN_1, INPUT_PULLUP); | ||||
|   pinMode(BTN_2, INPUT_PULLUP); | ||||
|   pinMode(STEP, OUTPUT); | ||||
|   pinMode(DIR, OUTPUT); | ||||
|   digitalWrite(STEP, LOW); | ||||
|   digitalWrite(DIR, LOW); | ||||
| } | ||||
|  | ||||
| void loop() { | ||||
|   delayMicroseconds(100); | ||||
|   if (digitalRead(BTN_1)==LOW) | ||||
|   { | ||||
|     digitalWrite(DIR, LOW); | ||||
|     digitalWrite(STEP, HIGH); | ||||
|     delayMicroseconds(10); | ||||
|     digitalWrite(STEP, LOW); | ||||
|     delayMicroseconds(10); | ||||
|   } | ||||
|   if (digitalRead(BTN_2)==LOW) | ||||
|   { | ||||
|     digitalWrite(DIR, HIGH); | ||||
|     digitalWrite(STEP, HIGH); | ||||
|     delayMicroseconds(10); | ||||
|     digitalWrite(STEP, LOW); | ||||
|     delayMicroseconds(10); | ||||
|   } | ||||
| } | ||||
							
								
								
									
										6
									
								
								stepper_test/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								stepper_test/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | ||||
| .pio | ||||
| .pioenvs | ||||
| .piolibdeps | ||||
| .vscode/.browse.c_cpp.db* | ||||
| .vscode/c_cpp_properties.json | ||||
| .vscode/launch.json | ||||
							
								
								
									
										67
									
								
								stepper_test/.travis.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								stepper_test/.travis.yml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,67 @@ | ||||
| # Continuous Integration (CI) is the practice, in software | ||||
| # engineering, of merging all developer working copies with a shared mainline | ||||
| # several times a day < https://docs.platformio.org/page/ci/index.html > | ||||
| # | ||||
| # Documentation: | ||||
| # | ||||
| # * Travis CI Embedded Builds with PlatformIO | ||||
| #   < https://docs.travis-ci.com/user/integration/platformio/ > | ||||
| # | ||||
| # * PlatformIO integration with Travis CI | ||||
| #   < https://docs.platformio.org/page/ci/travis.html > | ||||
| # | ||||
| # * User Guide for `platformio ci` command | ||||
| #   < https://docs.platformio.org/page/userguide/cmd_ci.html > | ||||
| # | ||||
| # | ||||
| # Please choose one of the following templates (proposed below) and uncomment | ||||
| # it (remove "# " before each line) or use own configuration according to the | ||||
| # Travis CI documentation (see above). | ||||
| # | ||||
|  | ||||
|  | ||||
| # | ||||
| # Template #1: General project. Test it using existing `platformio.ini`. | ||||
| # | ||||
|  | ||||
| # language: python | ||||
| # python: | ||||
| #     - "2.7" | ||||
| # | ||||
| # sudo: false | ||||
| # cache: | ||||
| #     directories: | ||||
| #         - "~/.platformio" | ||||
| # | ||||
| # install: | ||||
| #     - pip install -U platformio | ||||
| #     - platformio update | ||||
| # | ||||
| # script: | ||||
| #     - platformio run | ||||
|  | ||||
|  | ||||
| # | ||||
| # Template #2: The project is intended to be used as a library with examples. | ||||
| # | ||||
|  | ||||
| # language: python | ||||
| # python: | ||||
| #     - "2.7" | ||||
| # | ||||
| # sudo: false | ||||
| # cache: | ||||
| #     directories: | ||||
| #         - "~/.platformio" | ||||
| # | ||||
| # env: | ||||
| #     - PLATFORMIO_CI_SRC=path/to/test/file.c | ||||
| #     - PLATFORMIO_CI_SRC=examples/file.ino | ||||
| #     - PLATFORMIO_CI_SRC=path/to/test/directory | ||||
| # | ||||
| # install: | ||||
| #     - pip install -U platformio | ||||
| #     - platformio update | ||||
| # | ||||
| # script: | ||||
| #     - platformio ci --lib="." --board=ID_1 --board=ID_2 --board=ID_N | ||||
							
								
								
									
										7
									
								
								stepper_test/.vscode/extensions.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								stepper_test/.vscode/extensions.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | ||||
| { | ||||
| 	// See http://go.microsoft.com/fwlink/?LinkId=827846 | ||||
| 	// for the documentation about the extensions.json format | ||||
| 	"recommendations": [ | ||||
| 		"platformio.platformio-ide" | ||||
| 	] | ||||
| } | ||||
							
								
								
									
										39
									
								
								stepper_test/include/README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								stepper_test/include/README
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,39 @@ | ||||
|  | ||||
| This directory is intended for project header files. | ||||
|  | ||||
| A header file is a file containing C declarations and macro definitions | ||||
| to be shared between several project source files. You request the use of a | ||||
| header file in your project source file (C, C++, etc) located in `src` folder | ||||
| by including it, with the C preprocessing directive `#include'. | ||||
|  | ||||
| ```src/main.c | ||||
|  | ||||
| #include "header.h" | ||||
|  | ||||
| int main (void) | ||||
| { | ||||
|  ... | ||||
| } | ||||
| ``` | ||||
|  | ||||
| Including a header file produces the same results as copying the header file | ||||
| into each source file that needs it. Such copying would be time-consuming | ||||
| and error-prone. With a header file, the related declarations appear | ||||
| in only one place. If they need to be changed, they can be changed in one | ||||
| place, and programs that include the header file will automatically use the | ||||
| new version when next recompiled. The header file eliminates the labor of | ||||
| finding and changing all the copies as well as the risk that a failure to | ||||
| find one copy will result in inconsistencies within a program. | ||||
|  | ||||
| In C, the usual convention is to give header files names that end with `.h'. | ||||
| It is most portable to use only letters, digits, dashes, and underscores in | ||||
| header file names, and at most one dot. | ||||
|  | ||||
| Read more about using header files in official GCC documentation: | ||||
|  | ||||
| * Include Syntax | ||||
| * Include Operation | ||||
| * Once-Only Headers | ||||
| * Computed Includes | ||||
|  | ||||
| https://gcc.gnu.org/onlinedocs/cpp/Header-Files.html | ||||
							
								
								
									
										46
									
								
								stepper_test/lib/README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								stepper_test/lib/README
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,46 @@ | ||||
|  | ||||
| This directory is intended for project specific (private) libraries. | ||||
| PlatformIO will compile them to static libraries and link into executable file. | ||||
|  | ||||
| The source code of each library should be placed in a an own separate directory | ||||
| ("lib/your_library_name/[here are source files]"). | ||||
|  | ||||
| For example, see a structure of the following two libraries `Foo` and `Bar`: | ||||
|  | ||||
| |--lib | ||||
| |  | | ||||
| |  |--Bar | ||||
| |  |  |--docs | ||||
| |  |  |--examples | ||||
| |  |  |--src | ||||
| |  |     |- Bar.c | ||||
| |  |     |- Bar.h | ||||
| |  |  |- library.json (optional, custom build options, etc) https://docs.platformio.org/page/librarymanager/config.html | ||||
| |  | | ||||
| |  |--Foo | ||||
| |  |  |- Foo.c | ||||
| |  |  |- Foo.h | ||||
| |  | | ||||
| |  |- README --> THIS FILE | ||||
| | | ||||
| |- platformio.ini | ||||
| |--src | ||||
|    |- main.c | ||||
|  | ||||
| and a contents of `src/main.c`: | ||||
| ``` | ||||
| #include <Foo.h> | ||||
| #include <Bar.h> | ||||
|  | ||||
| int main (void) | ||||
| { | ||||
|   ... | ||||
| } | ||||
|  | ||||
| ``` | ||||
|  | ||||
| PlatformIO Library Dependency Finder will find automatically dependent | ||||
| libraries scanning project source files. | ||||
|  | ||||
| More information about PlatformIO Library Dependency Finder | ||||
| - https://docs.platformio.org/page/librarymanager/ldf.html | ||||
							
								
								
									
										14
									
								
								stepper_test/platformio.ini
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								stepper_test/platformio.ini
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| ; PlatformIO Project Configuration File | ||||
| ; | ||||
| ;   Build options: build flags, source filter | ||||
| ;   Upload options: custom upload port, speed and extra flags | ||||
| ;   Library options: dependencies, extra library storages | ||||
| ;   Advanced options: extra scripting | ||||
| ; | ||||
| ; Please visit documentation for the other options and examples | ||||
| ; https://docs.platformio.org/page/projectconf.html | ||||
|  | ||||
| [env:uno] | ||||
| platform = atmelavr | ||||
| board = uno | ||||
| framework = arduino | ||||
							
								
								
									
										9
									
								
								stepper_test/src/main.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								stepper_test/src/main.cpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
| #include <Arduino.h> | ||||
|  | ||||
| void setup() { | ||||
|   // put your setup code here, to run once: | ||||
| } | ||||
|  | ||||
| void loop() { | ||||
|   // put your main code here, to run repeatedly: | ||||
| } | ||||
							
								
								
									
										11
									
								
								stepper_test/test/README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								stepper_test/test/README
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
|  | ||||
| This directory is intended for PIO Unit Testing and project tests. | ||||
|  | ||||
| Unit Testing is a software testing method by which individual units of | ||||
| source code, sets of one or more MCU program modules together with associated | ||||
| control data, usage procedures, and operating procedures, are tested to | ||||
| determine whether they are fit for use. Unit testing finds problems early | ||||
| in the development cycle. | ||||
|  | ||||
| More information about PIO Unit Testing: | ||||
| - https://docs.platformio.org/page/plus/unit-testing.html | ||||
							
								
								
									
										11
									
								
								test/README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								test/README
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
|  | ||||
| This directory is intended for PIO Unit Testing and project tests. | ||||
|  | ||||
| Unit Testing is a software testing method by which individual units of | ||||
| source code, sets of one or more MCU program modules together with associated | ||||
| control data, usage procedures, and operating procedures, are tested to | ||||
| determine whether they are fit for use. Unit testing finds problems early | ||||
| in the development cycle. | ||||
|  | ||||
| More information about PIO Unit Testing: | ||||
| - https://docs.platformio.org/page/plus/unit-testing.html | ||||
		Reference in New Issue
	
	Block a user