Giter VIP home page Giter VIP logo

lmtreser / edu-ciaa-nxp-micropython Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 104.98 MB

Desarrollos en MicroPython con la placa EDU-CIAA-NXP, basada en el LPC4337 (dual core ARM Cortex-M4F y Cortex-M0)

License: MIT License

HTML 0.26% G-code 3.10% Python 1.71% Makefile 0.19% C 91.06% Shell 0.04% Assembly 0.14% OpenEdge ABL 3.13% C++ 0.33% Batchfile 0.02%
arm armcortexm0 armcortexm4 edu-ciaa-nxp micropython proyecto-ciaa lpc4337

edu-ciaa-nxp-micropython's Introduction

MicroPython y la EDU-CIAA-NXP

Desarrollos en MicroPython con la placa EDU-CIAA-NXP, basada en el LPC4337 (dual core ARM Cortex-M4F y Cortex-M0).

El repositorio es una colección de recursos extraídos del sitio oficial del Proyecto CIAA, excepto el directorio /scripts/ejemplos que contiene diversos scripts de ejemplo.


EDU-CIAA-NXP

La EDU-CIAA-NXP es una versión de bajo costo de la CIAA-NXP pensada para la enseñanza universitaria, terciaria y secundaria.

Bloques funcionales

La EDU-CIAA está basada en la CIAA-NXP, por ser la primera versión de la CIAA que se encuentra disponible. Por lo tanto su microcontrolador es también el LPC4337 (dual core ARM Cortex-M4F y Cortex-M0).

Sin embargo, con el objetivo de abaratar costos y reducir su complejidad la EDU-CIAA incorpora sólo algunas de las funcionalidades de la CIAA. A su vez, con el fin de permitir el desarrollo de algunas prácticas sencillas sin que sea necesario recurrir a hardware adicional, incluye además algunos recursos que no están presentes en la CIAA.

Diagrama en bloques de la plataforma

En la siguiente figura se observa un diagrama en bloques de la EDU-CIAA basada en LPC4337:

La EDU-CIAA cuenta con los siguientes módulos:

  • 2 puertos micro-USB (uno para aplicaciones y debugging, otro para alimentación).
  • 4 salidas digitales implementadas con leds RGB.
  • 4 entradas digitales con pulsadores.
  • 1 puerto de comunicaciones RS 485 con bornera.
  • 2 conectores de expansión:
    • P1:

      • 3 entradas analógicas (ADC0_1,2y3),
      • 1 salida analógica (DAC0),
      • 1 puerto I2C,
      • 1 puerto asincrónico full duplex (para RS-232).
      • 1 puerto CAN,
      • 1 conexión para un teclado de 3x4,
    • P2:

      • 1 puerto Ethernet,
      • 1 puerto SPI,
      • 1 puerto para Display LCD con 4 bits de datos, Enable y RS.
      • 9 pines genéricos de I/O.

Consultar la asignación de pines de la EDU-CIAA-NXP en PDF, con información del uso de los mismos en el microcontrolador: Asignación de pines.

Propósito, alcance, objetivos y requerimientos de la EDU-CIAA-NXP

Propósito

Los propósitos de la EDU-CIAA son:

  • Proveer una plataforma de desarrollo moderna y económica basada en la CIAA que sirva a docentes y a estudiantes en los cursos de sistemas embebidos.
  • Lograr una amplia inserción en el sistema educativo argentino.
  • Realizar un aporte eficaz al desarrollo de vocaciones tempranas en electrónica, computación e informática.
  • Demostrar que las universidades argentina son capaces de realizar un desarrollo colaborativo exitoso en el área de los sistemas embebidos, cumpliendo con requerimientos de tiempo y forma.

Alcance

El alcance del desarrollo de esta primera etapa de la EDU-CIAA es el siguiente:

  • Diseño, fabricación y validación de una primera versión del hardware de la plataforma, basado en el diseño de la CIAA-NXP, pero con menores prestaciones que la CIAA, con el fin de reducir su costo y complejidad.
  • Diseño, implementación y validación de una primera versión de un entorno de desarrollo integrado (IDE) específico, pensado para que sea accesible a estudiantes que abordan por primera vez este tipo de plataformas.

Objetivos

Los siguientes son los objetivos propuestos para la EDU-CIAA:

  • Implementar una versión de bajo costo de la CIAA pensada para la enseñanza Universitaria, Terciaria y Secundaria.
  • Realizar el desarrollo en forma colaborativa entre los docentes universitarios miembros de la Red RUSE.
  • Lograr que el costo final sea menor a los 50 dólares por unidad en lotes de fabricación de 100 unidades, considerando los componentes y el circuito impreso.
  • Desarrollar el circuito impreso en dos capas y en un tamaño igual o menor al de la CIAA.
  • Contar con 20 prototipos operativos para la fecha de realización del SASE2014 (13/08/2014).
  • Realizar 10 talleres de formación sobre la EDU-CIAA durante el segundo semestre de 2014.
  • Alcanzar a 100 docentes de la Red RUSE y a 50 docentes terciarios y secundarios con actividades de capacitación durante el segundo semestre de 2014.
  • Lograr que la EDU-CIAA se utilice para dar clases universitarias en 30 unidades académicas, 20 escuelas secundarias y 5 escuelas terciarias durante el primer semestre de 2015.

Requerimientos

Los siguientes son los requerimientos adoptados para la EDU-CIAA:

  • El sistema debe soportar el mismo firmware que la CIAA.
  • La entorno de desarrollo integrado (IDE) debe ser una versión de más fácil manejo que el IDE de la CIAA.
  • El sistema debe tener un pulsador de reset.
  • El sistema debe tener el mismo microcontrolador que alguna de las versiones de la CIAA.
  • El sistema debe tener un tamaño igual o menor al de la CIAA y estar diseñado en un PCB de dos capas.
  • El sistema debe poder alimentarse mediante un puerto USB estándar.
  • El sistema debe poseer un conector USB para programación y depuración desde una PC.
  • El sistema debe tener conectividad mediante interfaz RS-485.
  • El sistema debe poseer conectores de expansión que incluyan los siguientes elementos del microcontrolador:
  • i) interfaz RMII Ethernet
  • ii) Interfaz USB
  • iii) Interfaz CAN
  • iv)interfaz SPI
  • v) interfaz I2C
  • vi) salida D/A
  • vii) entradas A/D
  • El sistema debe tener cuatro Leds (RGB) que sean activados por el microcontrolador.
  • El sistema debe tener cuatro pulsadores conectados al microcontrolador.
  • El sistema debe tener un display de siete segmentos que sea controlado por el microcontrolador.

Definición de módulos a incluir en la plataforma

Aquí se encuentra una tabla detallando las razones por las cuáles se agregaron o quitaron a la EDU-CIAA módulos originalmente disponibles en la CIAA:

Módulo ¿Se incluye? ¿Por qué? Observaciones
FUENTE Es mandatorio Se alimentará a través de USB
CPU (LPC4337) Es mandatorio
JTAG Para debugging Componentes montaje opcional
SDRAM (8MB) No Uso poco frecuente
FLASH (4MB) No Uso poco frecuente
EEPROM No Uso poco frecuente
Entradas Analóg. Uso habitual Sin front-end - pines en CON1
Salidas Analóg. Uso habitual Sin front-end - pines en CON1
Entradas Optoac. No Elevado costo Pines disponibles en CON1
Salidas Op.Drain No Elevado costo Pines disponibles en CON1
Salidas Relay No Elevado costo Pines disponibles en CON1
RS485 Interconexionado Muy simple para armar redes
USB Habitual en PCs
Ethernet "Ní" Elevado costo Pines disponibles en CON1
RS232 "Ní" Obsoleto en PCs Pines disponibles en CON1
CAN "Ní" Uso poco frecuente Pines disponibles en CON1
microSD No Ausente en LPC4337
Expansión SPI Conectividad al uC Pines disponibles en CON1
Expansión I2C Conectividad al uC Pines disponibles en CON1
Expansión GPIO Conectividad al uC Pines disponibles en CON1
LEDs RGB x4 P/práctica básica
Pulsadores x4 P/práctica básica
Int. Vaux 3.3V Uso habitual Tensión regulada del sistema
Int. Vaux 5V Uso habitual Tensión de entrada al sistema
Int. Vaux 24V No Ausencia de 24V

edu-ciaa-nxp-micropython's People

Contributors

lmtreser avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.