Nueva release de Firmware v2 (r0.2.0)

85 views
Skip to first unread message

Eric Pernia

unread,
Feb 13, 2018, 5:46:23 PM2/13/18
to CIAA-Firmware, embebidos32@
Buenas tardes, se publicó una nueva release de Firmware v2:

https://github.com/ciaa/firmware_v2/releases

Se agregaron nuevos ejemplos y se actualizaron los proyectos anteriores.

Están todos funcionando, probados sobre la EDU-CIAA-NXP funcionando correctamente, la mayoría comprobados por varias personas con sus respectivas placas EDU-CIAA-NXP, placas de periféricos y PCs independientes.

Actualmente contamos con los siguientes, todos probados con la EDU-CIAA-NXP:

Ejemplos Bare-metal con biblioteca sAPI

  • GPIO:
    • gpio_01_switches_leds: teclas y leds de la EDU-CIAA-NXP.
    • gpio_02_blinky: led destellando de la EDU-CIAA-NXP.
    • gpio_03_blinky_switch: ejemplo de destello de led y manejo de tecla con destello utilizando delay no bloqueante.
    • gpio_04_led_sequences: ejemplo de secuencias de leds.
    • keypad_7segment_01: Manejo de teclado matricial y display 7 segmentos.
    • lcd_01: Manejo de display LCD.
  • UART:
    • uart_01_echo: Eco de por UART, la EDU-CIAA-NXP responde lo que le transmito desde la PC.
    • uart_02_receive_string_blocking: Espera a recibir cierta cadena patrón por UART o sale por timeout (funciona de manera bloqueante).
    • uart_03_receive_string: Espera a recibir cierta cadena patrón por UART o sale por timeout (funciona de manera no bloqueante mediante una FSM).
  • Printf
    • stdio_01_printf_sprintf: Ejemplo de uso de printf() y similares de la biblioteca de C estándar.
  • ADC, DAC:
    • adc_dac_01: Utilización de los periféricos ADC y DAC de la EDU-CIAA-NXP.
  • TIMER, RTC:
    • cycles_counter_01: Funciones de conteo de ciclos de reloj, funciona únicamente en modo debug y permite tener trazabilidad de tiempos de ejecución.
    • tick_01_tickHook: Función de tick periódico y como ejecutar periódicamente una función callback desde dicha interrupción.
    • rtc_01: Periférico RTC para reloj de fecha/hora.
    • pwm_01: Ejemplo de PWM aplicado a los LEDs de la EDU-CIAA-NXP.
    • pwm_02_rgb_controller_uart: Control de LED RGB para formar cualquier color.
    • servo_01: Ejemplo de Servomotor conectado a la EDU-CIAA-NXP.
  • Periféricos externos:
    • Magnetómetros I2C. Puede venir cualquiera de ellos en el módulo GY-273, son compatibles en cuanto a disposición y tamaño de pines pero con diferente mapa de registros. Para diferenciarlos revise el chip con una lupa:
      • i2c_01_hmc5883l: Ejemplo de magnetómetro HMC5883L.
      • i2c_02_qmc5883l: Ejemplo de magnetómetro QMC5883L.
    • dht11_01: Sensor de humedad y temperatura.
    • ultrasonicSensor_HCSR04_01: Sensor ultrasónico de distancia HC-SR04.
    • spi_01_sdCard_fatFileSystem: Ejemplo de logueo de valores del ADC en tarjeta SD (conectada a la EDU-CIAA-NXP por SPI) utilizando un sistema de archivos FAT (ChanFS).
    • Módulo WiFi ESP01 (ESP8266):
      • 01_uart_bridge: Conexión directa con módulo ESP01 para enviar comandos AT al mismo.
      • 02_http_server: Servidor embebido en la EDU-CIAA-NXP para ver datos de la misma.
      • 03_thingspeak: Envío de datos a un dashboard en thingspeak para visualización de datos por internet.

Ejemplos con sistemas operativos y biblioteca sAPI

  • S.O. Cooperativos (de M.J. Pont, ver )
    • scheduler_01_seos: Introducción al sistema operativo cooperativo.
    • scheduler_02_seos_background_foreground: Sistema operativo cooperativo, variante foreground-background.
    • seos_Pont2014_01: Sistema operativo cooperativo completo de M.J. Pont.
    • seos_pont_02_microwave: Sistema operativo cooperativo completo de M.J. Pont, ejemplo de microondas.
  • FreeOSEK
    • freeOSEK_01_blinky: Ejemplo de Led destellando con freeOSEK.
  • FreeRTOS
    • freeRTOS_01_blinky: Ejemplo deLed destellando con freeRTOS.
    • freeRTOS_02_Queue: Ejemplo de utilización de colas en freeRTOS.
    • freeRTOS_03_ChanFatFS_SPI_SdCard_ADC_log: Ejemplo de logueo de valores del ADC en tarjeta SD (conectada a la EDU-CIAA-NXP por SPI) utilizando un sistema de archivos FAT (ChanFS) y freeRTOS.
    • freeRTOS_book: Ejemplos del libro de Richard Barry con FreeRTOS y sAPI. Estos son:
      • EXAMPLE001: Creating tasks
      • EXAMPLE002: Using the task parameter
      • EXAMPLE003: Experimenting with priorities
      • EXAMPLE004: Using the Blocked state to create delay
      • EXAMPLE005: Converting the example tasks to use vTaskDelayUntil()
      • EXAMPLE006: Combining blocking and non-blocking tasks
      • EXAMPLE007: Defining an idle task hook function
      • EXAMPLE008: Changing task priorities
      • EXAMPLE009: Deleting tasks
      • EXAMPLE010: Blocking when receiving from a queue
      • EXAMPLE011: Blocking when sending to a queue or sending structures on a queue
      • EXAMPLE012: Using a queue set
      • EXAMPLE013: Creating one-shot and auto-reload timers
      • EXAMPLE014: Using the callback function parameter and the software timer ID
      • EXAMPLE015: Resetting a software timer
      • EXAMPLE016: Using a binary semaphore to synchronize a task with an interrupt
      • EXAMPLE017: Using a counting semaphore to synchronize a task with an interrupt
      • EXAMPLE018: Centralized deferred interrupt processing
      • EXAMPLE019: Sending and receiving on a queue from within an interrupt
      • EXAMPLE020: Re-writing vPrintString() to use a semaphore
      • EXAMPLE021: Re-writing vPrintString() to use a gatekeeper task
      • EXAMPLE022: Experimenting with event groups
      • EXAMPLE023: Synchronizing tasks
      • EXAMPLE024: Using a task notification in place of a semaphore, method 1
      • EXAMPLE025: Using a task notification in place of a semaphore, method 2

Ejemplos sin biblioteca sAPI

  • LPC4337:
    • adc_fir_dac
    • asm
    • blinky
    • blinky_ram
    • blinky_rit
    • boot: LPCBootloader example
    • mpu
    • start_m0
    • trilat
    • i2c
    • pwm
    • sd_spi
    • usb_cdc
    • usb_msc_host
    • usb_rom_cdc
    • statechart
    • tcpecho
  • LPC4337 RTOS:
    • freertos_blinky
    • blinky_osek
    • multicore

Esta release contiene colaboraciones de:

  • Eric Pernia.
  • Martin Ribelotta.
  • Juan Manuel Cruz.
  • Pablo Ridolfi.
  • Agustin Bassi.
  • Pablo Gómez.
  • Alejandro Permingeat.
  • Danilo Zecchin.
  • Sebastian Bedin.
  • Rodrigo Furlani.
  • Marcelo Vieytes.

No me funciona...

Cualquier duda recuerden sumarse y consultar en la lista CIAA-Firmware <ciaa-firmware@googlegroups.com> o aquí en "embebidos32@" <embeb...@googlegroups.com>.

Recuerden que...

Todos pueden colaborar con su granito de arena para que esta lista de ejemplos crezca!


Saludos cordiales.
Ing. EricPernia.
Coordinador general del Proyecto CIAA.

Bioing. Juan Manuel Reta

unread,
Feb 13, 2018, 8:35:00 PM2/13/18
to Eric Pernia, CIAA-Firmware, embebidos32@
Excelente Eric y Felicitaciones al equipo!!!!

Saludos, 


Mg. Bioing. Juan Manuel Reta
Profesor Titular Exclusivo
Electrónica Programable - Departamento Electrónica
Director - Laboratorio de Prototipado Electrónico y 3D
Universidad Nacional de Entre Ríos
tel: 0343 4975101 int 156
http://ingenieria.uner.edu.ar/grupos/prototipado/

Cualquier duda recuerden sumarse y consultar en la lista CIAA-Firmware <ciaa-f...@googlegroups.com> o aquí en "embebidos32@" <embeb...@googlegroups.com>.

Recuerden que...

Todos pueden colaborar con su granito de arena para que esta lista de ejemplos crezca!


Saludos cordiales.
Ing. EricPernia.
Coordinador general del Proyecto CIAA.

--
Has recibido este mensaje porque estás suscrito al grupo "CIAA-Firmware" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a ciaa-firmware+unsubscribe@googlegroups.com.
Visita este grupo en https://groups.google.com/group/ciaa-firmware.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

Eduardo Filomena

unread,
Feb 13, 2018, 8:39:01 PM2/13/18
to embeb...@googlegroups.com, Eric Pernia, CIAA-Firmware
Buenisimo!!!!! Felicitaciones y gracias a todos los que trabajaron!!


--
-- Recibiste este mensaje porque estás suscripto al Grupo Google Embebidos32. Para postear en este grupo, escribe un email a embeb...@googlegroups.com. Para des-suscribirte, envía un email a embebidos32+unsubscribe@googlegroups.com. Para más opciones, visita el sitio del grupo en https://groups.google.com/d/forum/embebidos32?hl=es
---
Has recibido este mensaje porque estás suscrito al grupo "Embebidos32" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a embebidos32+unsubscribe@googlegroups.com.

Pablo Gomez

unread,
Feb 13, 2018, 8:39:43 PM2/13/18
to Eduardo Filomena, embebidos32@, Eric Pernia, CIAA-Firmware
Excelente Eric!!!

Abrazos!

Carlos Pantelides

unread,
Feb 25, 2018, 11:12:27 AM2/25/18
to CIAA-Firmware
Éric

1) Antes que nada, gracias y felicitaciones.

2) Luego, he recompilado usando este nuevo tag para unas cosas que estoy jugando y reporto que serial y lcd del poncho plc siguen funcionando ok.

3) Casi último, la pregunta que hice en "Consulta caracteres extra en uart entre dos edu-ciaa-nxp" sigue vigente, pues el error persiste.

4) Finalmente, una duda:

He seguido los pasos del documento que estábamos confeccionando (no publicado aún) de cómo hacer pull requests, enganchando en esta parte con que en el repo oficial hay un cambio, que quiero que llegue a mi fork y a mi copia local.

Entiendo que hay que hacer en mi copia local

    git pull -r upstream master



y luego

    git push para que le pegue a mi clon en github

pero aunque en el primer paso algo hizo [1] y se pueden ver los pull request recientes[2], no se ha manifestado el tag v0.2.0

Entonces probé

$> git pull -r upstream
From https://github.com/ciaa/firmware_v2
 * [new branch]      develop    -> upstream/develop
 * [new tag]         r0.2.0     -> r0.2.0
You asked to pull from the remote 'upstream', but did not specify
a branch. Because this is not the default configured remote
for your current branch, you must specify a branch on the command line.

y a continuación

$> git pull -r upstream r0.2.0

ok, me apareció localmente y pude hacer las pruebas reportadas.

¿Cómo hago para que me llegué a mi clon en github?

¿Hay que hacer pull -r upstream para cada branch?

Gracias y saludos

[1] git pull -r upstream master

remote: Counting objects: 65, done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 65 (delta 39), reused 39 (delta 39), pack-reused 23
Unpacking objects: 100% (65/65), done.
From https://github.com/ciaa/firmware_v2
 * branch            master     -> FETCH_HEAD
   e3af670..6c49e34  master     -> upstream/master
First, rewinding head to replay your work on top of it...
Fast-forwarded master to 6c49e34473ce2c88020f82cc02ceef1fdd7c026c.

[2] git lola



*   6c49e34 (HEAD -> master, upstream/master) Merge pull request #49 from pridolfi/master
|\ 
| * 6a166ba update freertos to v10.0.1
* |   e76be63 Merge pull request #48 from cpantel/master
|\ \ 
| |/ 
|/|  
| *   84a062f (origin/master, origin/HEAD) Merge branch 'master' of https://github.com/cpantel/Firmware_v2
| |\ 
| | * 366a0ea fixed arm toolchain download link
| * | 11b0c1f fixed arm toolchain download link
* | | 6df5418 remove fv2 warnings
|/ / 
* |   e3af670 Merge pull request #47 from JuanManuelCruz/master


Carlos Pantelides

unread,
Feb 28, 2018, 4:30:26 AM2/28/18
to martin ribelotta, CIAA-Firmware
Excelente, muchas gracias Martín



2018-02-27 13:26 GMT-03:00 martin ribelotta <martinr...@gmail.com>:
Hola Carlos, para subir los tags tenes que hacer:

git push --tags

Que solo pushea los tags. Luego (o antes, como mas te guste) pusheas los datos con:;
git push --all


--
Has recibido este mensaje porque estás suscrito al grupo "CIAA-Firmware" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a ciaa-firmware+unsubscribe@googlegroups.com.
Visita este grupo en https://groups.google.com/group/ciaa-firmware.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

Eric Pernia

unread,
Feb 28, 2018, 6:17:30 AM2/28/18
to Carlos Pantelides, CIAA-Firmware
Buen día Carlos, contesto entre líneas:


El 25 de febrero de 2018, 13:12, Carlos Pantelides <carlos.p...@gmail.com> escribió:
Éric

1) Antes que nada, gracias y felicitaciones.

Gracias! 

2) Luego, he recompilado usando este nuevo tag para unas cosas que estoy jugando y reporto que serial y lcd del poncho plc siguen funcionando ok.

Genial! 

3) Casi último, la pregunta que hice en "Consulta caracteres extra en uart entre dos edu-ciaa-nxp" sigue vigente, pues el error persiste.

La seguimos en ese hilo.
 

4) Finalmente, una duda:

Lo que contesto Martin :P
Reply all
Reply to author
Forward
0 new messages