You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -35,7 +35,7 @@ The programs (functions) that implement the functionality of each command should
35
35
intcommand_func(int argc, char ** argv);
36
36
```
37
37
38
-
## Basic library example using arduino
38
+
## Basic library example using arduino ##
39
39
40
40
```cpp
41
41
/**
@@ -156,13 +156,13 @@ The library is meant to work in other CPU architectures where a C compiler is av
156
156
157
157
158
158
159
-
#Librería de linea de comandos para Arduino y otros microcontroladores.#
159
+
#Librería Shell de GeekFactory#
160
160
161
-
Esta librería permite **controlar nuestros programas y dispositivos con simples comandos de texto** de manera similar a la terminal en Mac OSX o linux y la linea de comandos de Windows. Los comandos pueden transmitirse al microcontrolador mediante un puerto serie, un socket TCP/IP o una conexión USB CDC.
161
+
Esta librería permite **controlar nuestros programas y dispositivos con simples comandos de texto** de manera similar a la terminal en Mac OSX o linux y la linea de comandos de Windows. Los comandos pueden transmitirse al microcontrolador mediante un puerto serie, un socket TCP/IP o una conexión USB CDC.**Esta librería está escrita en C puro para permitir que funcione en microcontroladores/compiladores que no soportan C++**.
162
162
163
-
###Uso básico de la librería
163
+
## Uso básico de la librería ##
164
164
165
-
Para utilizar la librería debemos llamar a la función de inicialización que le dice a la librería que funciones debe usar para leer y escribir sobre el medio (serial, TCP/IP, etc.)
165
+
Para utilizar la librería debemos llamar a la función de inicialización que le dice a la librería que funciones debe usar para leer y escribir sobre el medio (serial, TCP/IP, etc.). El siguiente código preparará la librería para su uso y le indica que use las funciones shell_reader() para leer bytes desde el puerto serie y la función shell_writter() para escribir bytes al serial.
166
166
167
167
```c
168
168
// Initialize command line interface (CLI)
@@ -186,22 +186,127 @@ Finalmente, dentro del ciclo principal de cada aplicación, el programador debe
186
186
shell_task();
187
187
```
188
188
189
-
Los programas (funciones) que implementan cada uno de los comandos se deben escribir con el prototipo estándar de C y reciben los parámetros para realizar su función de manera similar a una utilidad de linea de comandos.
189
+
Los programas (funciones) que implementan cada uno de los comandos se deben escribir con el prototipo estándar de C y reciben los parámetros para realizar su función de manera similar a una utilidad de linea de comandos programada para una PC.
190
190
191
191
```c
192
192
intcommand_func(int argc, char ** argv);
193
193
```
194
194
195
-
### Objetivos de este proyecto
195
+
## Ejemplo básico de la librería utilizando arduino ##
196
196
197
-
Buscamos que la librería cumpla con los siguientes puntos:
197
+
```cpp
198
+
/**
199
+
* GeekFactory - "Construye tu propia tecnologia"
200
+
* Distribucion de materiales para el desarrollo e innovacion tecnologica
201
+
* www.geekfactory.mx
202
+
*
203
+
* Ejemplo de libreria Shell. Este ejemplo representa la configuracion minima
204
+
* requerida para implementar la funcionalidad de interfaz de comandos. En esta
205
+
* ocasion registramos 2 comandos y enviamos texto como respuesta a cada uno.
206
+
*
207
+
* Example for Shell library. This example shows the minimum setup needed to
208
+
* implement a command line interface. This time we register 2 commands and we
209
+
* send text as response for each command.
210
+
*/
211
+
212
+
#include <Shell.h>
213
+
214
+
void setup()
215
+
{
216
+
// Prepare serial communication
217
+
Serial.begin(9600);
218
+
// Wait after reset or power on...
219
+
delay(1000);
220
+
221
+
// Initialize command line interface (CLI)
222
+
// We pass the function pointers to the read and write functions that we implement below
223
+
// We can also pass a char pointer to display a custom start message
* Prácticamente cualquier dispositivo que tenga un compilador de C respetable
299
+
* Arduino Mega 2560 R3
300
+
* Pruebas básicas en tarjetas con ESP8266
301
+
302
+
La librería fue probada en los siguientes microcontroladores PIC usando MPLAB X:
303
+
304
+
* PIC24FJ64GA002
305
+
* PIC24HJ128GA504
306
+
307
+
La librería GeekFactory Shell esta diseñada para trabajar en otras arquitecturas de CPU donde exista un compilador de C, por favor comentanos sobre tu experiencia si la pruebas en otras plataformas.
308
+
309
+
## Contáctame ##
310
+
311
+
* Contacto para cualquier tema referente a esta librería: ruben en geekfactory.mx
Copy file name to clipboardExpand all lines: library.properties
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -2,8 +2,8 @@ name=GeekFactory Shell Library
2
2
version=1.0.0
3
3
author=www.geekfactory.mx
4
4
maintainer=Jesus Ruben Santa Anna Zamudio
5
-
sentence=Library to create a simple Command Line Interface (CLI)
6
-
paragraph=This library allows the user to control the device using simple text commands
5
+
sentence=Library to create a simple Command Line Interface (CLI).
6
+
paragraph=This library allows the user to control the device using simple text commands, the library is written in pure C so it can be easily ported to other microcontrollers.
0 commit comments