Capítulo 1. Introducción
1.1 Contexto
1.2 Motivación
1.3 Objetivo
1.4 Estructura de la tesina
1.4.1 Sección teórica
1.4.2 Sección práctica
1.4.3 Alcance
Capítulo 2. Entendiendo lo que es la comunicación
2.1 Definición y breve historia de las comunicaciones
2.1.1 Partes de la comunicación
2.2.1 Protocolos
2.2 Protocolos en sistemas embebidos
2.2.1 Protocolos Paralelos
2.2.2 Protocolos Seriales
2.3 Resumen del capítulo
Capítulo 3. Protocolo CANBUS
3.1 Características
3.1.1 Valores del bus
3.2 Descripción
3.3 Tipos de implementación
3.3.1 Basic CAN
3.3.2 Full CAN
3.3.3 Serial Linked I/O
3.4 Componentes de la capa física
3.4.1 Medio físico (cable)
3.4.2 Elemento de cierre o terminador
3.4.3 Controlador
3.4.4 Transmisor / Receptor
3.4.5 Niveles lógicos
3.4.6 Sincronización
3.5 Capa de enlace al medio. Tramas
3.5.1 Tramas estándar CAN 2.0A
3.5.2 Bit can y rellenado de bits
3.5.3 Trama de datos (Data Frame)
3.5.4. Trama de datos extendida
3.5.5 Trama de solicitud (Remote frame)
3.5.6 Error Frame (Trama de error)
3.5.7 Trama de sobrecarga
3.5.8 Trama de separación (interframe)
3.6. Proceso de arbitraje
3.7. Tratamiento de errores
3.8 Resumen del capítulo
Capítulo 4. Caso de estudio. Uso del protocolo CANBUS con la plataforma
TWR-K70F120M-KIT
4.1 La plataforma TWR-K70F120M-KIT
4.1.1 Placa TWR-K70F120M
4.1.2 Kit TWR-ELEV
4.1.3 TWR-SER – Tower System Serial Module
4.2 Descripción del microcontrolador
4.3 Módulos que se utilizaran para hacer los ejemplos
4.3.1 Módulo UART
4.3.2 Módulo FlexCAN
4.3.3 GPIO
4.3.4 Módulo ADC (Analog to Digital converter)
4.3.5 Modulo TSS (Touch Sensing Software)
4.4 Ejemplos propuestos
4.5 Resumen del capítulo
Capítulo 5. Hola Mundo CANBUS
5.1 La herramienta Kinetis Studio
5.1.1 Creación del proyecto
5.1.2 Configuración de los módulos
5.1.3 Generación del código
5.2 Estructura del programa
5.3 Funcionamiento del programa
5.6.1 Componentes y eventos de los componentes
5.6.2 Estructuras de datos utilizadas por el programa
5.6.3 Inicialización de los componentes
5.6.4 Interrupciones
5.6.5 Bucle principal
5.7 Ejecución del programa
5.5.1 Linux
5.5.2 Windows
5.8 Resumen del capítulo
Capítulo 6. Emisor y receptor CANBUS
6.1 Descripción del ejemplo
6.1.1 Emisor
6.1.2 Receptor
6.2 Uso del ejemplo
6.3 Resumen del capítulo
Capítulo 7. Panel de control CAN
7.1 Descripción del Emisor
7.1.1 Configuración de los componentes
7.1.2 Estructura del programa
7.1.3 Resumen del desarrollo del emisor
7.2 Dispositivo Receptor. Display con Arduino UNO
7.2.1 Introducción a Arduino UNO
7.2.2 El entorno de Arduino
7.2.3 Shields
7.2.4 Librerías de soporte
7.2.5 Estructura del programa
7.2.6 Resumen del desarrollo del receptor
7.3 Dispositivo receptor. Controlador PWM para motor DC
7.3.1. Introducción a la placa KE06Z
7.3.2 Breve descripción de PWM
7.3.3 Componente PWM
7.3.4 Descripción del programa
7.4 Resumen del capítulo
Capítulo 8. Análisis de los tiempos CAN
8.1. Modelo propuesto por Tindell
8.1.1 Modelo de los mensajes
8.1.2 Buscando el peor tiempo de transmisión
8.1.3 Analizando el tiempo de ventana
8.1.4 Extendiendo el modelo
8.2. Ejemplo de aplicación sobre el benchmark SAE
8.2.1 Estableciendo prioridades
8.2.2 Trabajando con la tabla
8.3. Mejorando la utilización del Bus. Piggybacking
8.4. Resumen
Capítulo 9. Práctica sobre los tiempos CAN
9.1 Señales y lote de datos
9.2 Hardware utilizado en el benchmark
9.2.1. Emisor de eventos
9.2.2. Receptor de los eventos
9.2.3. Receptor de mensajes CAN
9.3. Descripción de la prueba realizada
9.4. Análisis de los datos obtenidos
9.5 Resumen del capítulo
Capítulo 10. Conclusiones y trabajos a futuro
Trabajos futuros
Bibliografía