Академический Документы
Профессиональный Документы
Культура Документы
Tema 2
Herramientas de desarrollo
Julio Martos
Herramientas de desarrollo
Proyecto
q Una empresa de
servicios
energé1cos nos
encarga diseñar y
construir un
nuevo sistema de
ges1ón para un
edificio Zero
Energy.
Herramientas de desarrollo
Proyecto
Proyecto
El sistema deberá:
q Monitorizar las condiciones ambientales:
q Temperatura, humedad, iluminación, ocupación,..
q Externas e internas
q Monitorizar y ges1onar los sistemas
energé1cos:
q Estado, energía disponible,…
q Determinar necesidades de clima1zación
q Ac1var los elementos de clima1zación
Herramientas de desarrollo
Proyecto
1ª aproximación:
q Sistema “complejo”:
q Muchos elementos a monitorizar y ges1onar
q Múl1ples ubicaciones dispersas
q Fuertes restricciones: sa1sfacción del usuario y Zero Energy
q Muchas tecnologías en el sistema:
q Fotovoltaicas, térmicas, pasivas,..
q Necesario trabajo en equipo mul1disciplinar
q …….
Herramientas de desarrollo
Proyecto
Proyecto
Proyecto
Índice
q Metodología de diseño
q Herramientas IDE (Entorno Desarrollo Integrado)
q Lenguajes
q Síntesis
q Depuración
q Herramientas IDE: ejemplos de uso en
aplicaciones basadas en microcontroladores
Herramientas de desarrollo
Metodología de diseño
Ball, cap. 1
Herramientas de desarrollo
Metodología de diseño
Def. Producto
Par3ción Hw/Sw
Def. Funcionalidades
Diseño Hw Diseño Sw
Selecc. Procesador
OK? NO OK?
SÍ SÍ
Especificaciones Hw/Sw
Integración Hw/Sw
NO SÍ
Eval. Sist.? NO SÍ
Verific.?
Retornar Éxito
Ball, cap. 1
Herramientas de desarrollo
Metodología de diseño
Def. Producto
q Definición
requerimientos:
q Produce un Def. Funcionalidades
documento que
describe el Selecc. Procesador
producto que se
desea construir
Implica a: Especificaciones Hw/Sw
q Dpto. marke1ng
NO SÍ
q Dpto. I+D+i Eval. Sist.?
Herramientas de desarrollo
Metodología de diseño
q Desarrollo:
Par3ción Hw/Sw
q Posible división entre
especialistas en Hw/Sw
q U1lización de Diseño Hw Diseño Sw
herramientas adecuadas:
q Hw (captura esquemas,
simuladores, diseño PCB, OK? OK?
proto1pado, etc. ) NO
q Sw: SÍ SÍ
q Proyecto Integración Hw/Sw
q Codificación
q Simulación
q Kit evaluación/desarrollo NO SÍ
q Monitores Verific.?
Retornar Éxito
q Emulación
Herramientas de desarrollo
Herramientas IDE
Herramientas IDE
Herramientas de desarrollo
Herramientas IDE
q Fases de desarrollo:
q Crear proyecto: selección del
disposi1vo y configuración
q Edición ficheros fuente: C/C++ o
ensamblador
q Construir la aplicación
q Depuración y op1mización
q Descarga del código en “ROM”
Herramientas de desarrollo
Herramientas IDE
q Otros:
q MPLAB de Microchip q CubeSuite+ de Renesas
q CCS de Texas Instruments q Simplicity Studio de Silicon
q HI-TECH Labs
q IAR Embedded WB
q CodeWarrior de Freescale
q PSoC Creator de Cypress
Herramientas de desarrollo
Herramientas IDE
Herramientas de desarrollo
Herramientas IDE
Herramientas IDE
Herramientas IDE
Herramientas IDE
Herramientas IDE
Se selecciona el
disposi1vo a
u1lizar en el
proyecto
Herramientas de desarrollo
Herramientas IDE
Escribir el código
en el editor.
¡No está vinculado
al proyecto!
aún
Herramientas de desarrollo
Herramientas IDE
Herramientas IDE
q C) Síntesis:
q Project -> Build…
O
q Botón Build
Se realiza la
compilación,
enlazado y
código ejecutable
Herramientas de desarrollo
Herramientas IDE
q D) Depuración:
q Debug -> Start/Stop…
O
q Botón debug
Se cambia a modo
depuración:
q Simulación
q Hw
Herramientas de desarrollo
Herramientas IDE
q D) Depuración:
ejecución del
programa
visualizando los
cambios que se
realizan
Herramientas de desarrollo
Lenguaje C
q ¿Qué hacen?
#include <stdio.h>
int main(){
double x,y,z;
//Lectura de datos
printf("Escribe el primer número");
#include <stdio.h> scanf("%lf",&x);
int main(){ printf("Escribe el segundo número");
const int TAMANIO=15; scanf("%lf",&y);
int i,j; printf("Escribe el tercer número");
scanf("%lf",&z);
for(i=1;i<=15;i++){ if(x>y && x>z) { //El mayor es x
for(j=1;j<=15;j++){ if(y>z) printf("\t%lf\t%lf\t%lf", x, y, z);
printf("%4d",i*j); else printf("\t%lf\t%lf\t%lf", x, z, y);
} }
printf("\n"); else if (y>x && y>z) { //El mayor es y
} if (x>z) printf("\t%lf\t%lf\t%lf", y, x, z);
} else printf("\t%lf\t%lf\t%lf", y, z, x);
}
else { //El mayor es z
if (x>y) printf("\t%lf\t%lf\t%lf", z, x, y);
else printf("\t%lf\t%lf\t%lf", z, y, x);
}
}
Referencias a C:
hqp://fsande.webs.ull.es/talf/cursoc/index.htm
hqp://jorgesanchez.net/programacion/ejerciciosc/sencillos.html
Herramientas de desarrollo
Lenguaje C
Lenguaje C
Lenguaje C
Lenguaje C
Lenguaje C
Lenguaje C
Lenguaje C
Lenguaje C
Lenguaje C
Lenguaje C
Ejemplos
Ejemplos
Ejemplos
Referencias
q Keil (hqp://www.keil.com) q IAR (hqp://www.iar.com)
q Microchip (hqp://www.microchip.com)
q HI-TECH (hqp://www.htsok.com)
q Texas Instruments (hqp://www.1.com)
q Arduino (hqp://www.arduino.cc)
q NXP (hqps://www.nxp.com )
q Cypress (hqp://www.cypress.com)
q Renesas (hqp://www.renesas.eu)
Herramientas de desarrollo
Referencias
SED - II
Tema 2
Herramientas de desarrollo
Julio Martos