NVIC : Nested Vectored Interrupt Controller

Tamaño: px
Comenzar la demostración a partir de la página:

Download "NVIC : Nested Vectored Interrupt Controller"

Transcripción

1 NVIC : Nested Vectored Interrupt Controller Laboratorio de Microprocesadores 03/09/2015 Laboratorio de Microprocesadores Ing. Daniel Jacoby1

2 NVIC Nested Vector Interrupt Controller La arquitectura Cortex M4 tiene un control avanzado de interrupciones y excepciones. El NVIC recibe excepciones del sistema así como interrupciones externas. MK64F12.h 03/09/2015 Laboratorio de Microprocesadores 2

3 NVIC Nested Vector Interrupt Controller ARM CORE System Exceptions 03/09/2015 Laboratorio de Microprocesadores 3

4 NVIC Nested Vector Interrupt Controller External Interrupts El NVIC puede aceptar hasta 240 Interrupciones externas La cantidad efectiva depende del fabricante. 03/09/2015 Laboratorio de Microprocesadores 4

5 NVIC Nested Vector Interrupt Controller K64F Core Interrupts 03/09/2015 Laboratorio de Microprocesadores 5

6 NVIC Nested Vector Interrupt Controller K64F External Interrupts 03/09/2015 Laboratorio de Microprocesadores 6

7 NVIC Nested Vector Interrupt Controller K64F External Interrupts (Ultimas) IRQn = Vector Nr /09/2015 Laboratorio de Microprocesadores 7

8 InterruptVector Numbers MK64FN1M0VLL12 MK64F12.h /** Interrupt Number Definitions */ #define NUMBER_OF_INT_VECTORS 102 /**< Number of interrupts in the Vector table */ typedef enum IRQn { /* Auxiliary constants */ NotAvail_IRQn = -128, /**< Not available device specific interrupt */ /* Core interrupts */ NonMaskableInt_IRQn = -14, /**< Non Maskable Interrupt */ HardFault_IRQn = -13, /**< Cortex-M4 SV Hard Fault Interrupt */ MemoryManagement_IRQn = -12, /**< Cortex-M4 Memory Management Interrupt */ BusFault_IRQn = -11, /**< Cortex-M4 Bus Fault Interrupt */ UsageFault_IRQn = -10, /**< Cortex-M4 Usage Fault Interrupt */ SVCall_IRQn = -5, /**< Cortex-M4 SV Call Interrupt */ DebugMonitor_IRQn = -4, /**< Cortex-M4 Debug Monitor Interrupt */ PendSV_IRQn = -2, /**< Cortex-M4 Pend SV Interrupt */ SysTick_IRQn = -1, /**< Cortex-M4 System Tick Interrupt */ 03/09/2015 Laboratorio de Microprocesadores 8

9 InterruptVector Numbers MK64FN1M0VLL12 MK64F12.h /* Device specific interrupts */ DMA0_IRQn = 0, /**< DMA Channel 0 Transfer Complete */ DMA1_IRQn = 1, /**< DMA Channel 1 Transfer Complete */ DMA2_IRQn = 2, /**< DMA Channel 2 Transfer Complete */ DMA3_IRQn = 3, /**< DMA Channel 3 Transfer Complete */ DMA4_IRQn = 4, /**< DMA Channel 4 Transfer Complete */ DMA5_IRQn = 5, /**< DMA Channel 5 Transfer Complete */ DMA6_IRQn = 6, /**< DMA Channel 6 Transfer Complete */ DMA7_IRQn = 7, /**< DMA Channel 7 Transfer Complete */ DMA8_IRQn = 8, /**< DMA Channel 8 Transfer Complete */ DMA9_IRQn = 9, /**< DMA Channel 9 Transfer Complete */ DMA10_IRQn = 10, /**< DMA Channel 10 Transfer Complete */ DMA11_IRQn = 11, /**< DMA Channel 11 Transfer Complete */ DMA12_IRQn = 12, /**< DMA Channel 12 Transfer Complete */ DMA13_IRQn = 13, /**< DMA Channel 13 Transfer Complete */ DMA14_IRQn = 14, /**< DMA Channel 14 Transfer Complete */ DMA15_IRQn = 15, /**< DMA Channel 15 Transfer Complete */ DMA_Error_IRQn = 16, /**< DMA Error Interrupt */ MCM_IRQn = 17, /**< Normal Interrupt */ FTFE_IRQn = 18, /**< FTFE Command complete interrupt */ Read_Collision_IRQn = 19, /**< Read Collision Interrupt */ LVD_LVW_IRQn = 20, /**< Low Voltage Detect, Low Voltage Warning */ LLWU_IRQn = 21, /**< Low Leakage Wakeup Unit */ WDOG_EWM_IRQn = 22, /**< WDOG Interrupt */ RNG_IRQn = 23, /**< RNG Interrupt */ I2C0_IRQn = 24, /**< I2C0 interrupt */ I2C1_IRQn = 25, /**< I2C1 interrupt */ 03/09/2015 Laboratorio de Microprocesadores 9

10 InterruptVector Numbers MK64FN1M0VLL12 MK64F12.h /* Device specific interrupts (cont) */ SPI0_IRQn = 26, /**< SPI0 Interrupt */ SPI1_IRQn = 27, /**< SPI1 Interrupt */ I2S0_Tx_IRQn = 28, /**< I2S0 transmit interrupt */ I2S0_Rx_IRQn = 29, /**< I2S0 receive interrupt */ UART0_LON_IRQn = 30, /**< UART0 LON interrupt */ UART0_RX_TX_IRQn = 31, /**< UART0 Receive/Transmit interrupt */ UART0_ERR_IRQn = 32, /**< UART0 Error interrupt */ UART1_RX_TX_IRQn = 33, /**< UART1 Receive/Transmit interrupt */ UART1_ERR_IRQn = 34, /**< UART1 Error interrupt */ UART2_RX_TX_IRQn = 35, /**< UART2 Receive/Transmit interrupt */ UART2_ERR_IRQn = 36, /**< UART2 Error interrupt */ UART3_RX_TX_IRQn = 37, /**< UART3 Receive/Transmit interrupt */ UART3_ERR_IRQn = 38, /**< UART3 Error interrupt */ ADC0_IRQn = 39, /**< ADC0 interrupt */ CMP0_IRQn = 40, /**< CMP0 interrupt */ CMP1_IRQn = 41, /**< CMP1 interrupt */ FTM0_IRQn = 42, /**< FTM0 fault, overflow and channels interrupt */ FTM1_IRQn = 43, /**< FTM1 fault, overflow and channels interrupt */ FTM2_IRQn = 44, /**< FTM2 fault, overflow and channels interrupt */ CMT_IRQn = 45, /**< CMT interrupt */ RTC_IRQn = 46, /**< RTC interrupt */ RTC_Seconds_IRQn = 47, /**< RTC seconds interrupt */ PIT0_IRQn = 48, /**< PIT timer channel 0 interrupt */ PIT1_IRQn = 49, /**< PIT timer channel 1 interrupt */ PIT2_IRQn = 50, /**< PIT timer channel 2 interrupt */ PIT3_IRQn = 51, /**< PIT timer channel 3 interrupt */ PDB0_IRQn = 52, /**< PDB0 Interrupt */ USB0_IRQn = 53, /**< USB0 interrupt */ USBDCD_IRQn = 54, /**< USBDCD Interrupt */ Reserved71_IRQn = 55, /**< Reserved interrupt 71 */ 03/09/2015 Laboratorio de Microprocesadores 10

11 InterruptVector Numbers MK64FN1M0VLL12 MK64F12.h /* Device specific interrupts (cont) */ DAC0_IRQn = 56, /**< DAC0 interrupt */ MCG_IRQn = 57, /**< MCG Interrupt */ LPTMR0_IRQn = 58, /**< LPTimer interrupt */ PORTA_IRQn = 59, /**< Port A interrupt */ PORTB_IRQn = 60, /**< Port B interrupt */ PORTC_IRQn = 61, /**< Port C interrupt */ PORTD_IRQn = 62, /**< Port D interrupt */ PORTE_IRQn = 63, /**< Port E interrupt */ SWI_IRQn = 64, /**< Software interrupt */ SPI2_IRQn = 65, /**< SPI2 Interrupt */ UART4_RX_TX_IRQn = 66, /**< UART4 Receive/Transmit interrupt */ UART4_ERR_IRQn = 67, /**< UART4 Error interrupt */ UART5_RX_TX_IRQn = 68, /**< UART5 Receive/Transmit interrupt */ UART5_ERR_IRQn = 69, /**< UART5 Error interrupt */ CMP2_IRQn = 70, /**< CMP2 interrupt */ FTM3_IRQn = 71, /**< FTM3 fault, overflow and channels interrupt */ DAC1_IRQn = 72, /**< DAC1 interrupt */ ADC1_IRQn = 73, /**< ADC1 interrupt */ I2C2_IRQn = 74, /**< I2C2 interrupt */ CAN0_ORed_Message_buffer_IRQn = 75, /**< CAN0 OR'd message buffers interrupt */ CAN0_Bus_Off_IRQn = 76, /**< CAN0 bus off interrupt */ CAN0_Error_IRQn = 77, /**< CAN0 error interrupt */ CAN0_Tx_Warning_IRQn = 78, /**< CAN0 Tx warning interrupt */ CAN0_Rx_Warning_IRQn = 79, /**< CAN0 Rx warning interrupt */ CAN0_Wake_Up_IRQn = 80, /**< CAN0 wake up interrupt */ SDHC_IRQn = 81, /**< SDHC interrupt */ ENET_1588_Timer_IRQn = 82, /**< Ethernet MAC IEEE 1588 Timer Interrupt */ ENET_Transmit_IRQn = 83, /**< Ethernet MAC Transmit Interrupt */ ENET_Receive_IRQn = 84, /**< Ethernet MAC Receive Interrupt */ ENET_Error_IRQn = 85 /**< Ethernet MAC Error and miscelaneous Interrupt */ } IRQn_Type; /* end of group Interrupt_vector_ numbers */ 03/09/2015 Laboratorio de Microprocesadores 11

12 InterruptVectors File: startup_mk64f12.s MK64FN1M0VLL12 Purpose: CMSIS Cortex-M4 Core Device Startup File Location: KDSWorkspace\Project_Name\Project_Settings\Startup_Code /* Core interrupts Vectors*/ _isr_vector:.long StackTop /* Top of Stack */.long Reset_Handler /* Reset Handler */.long NMI_Handler /* NMI Handler*/.long HardFault_Handler /* Hard Fault Handler*/.long MemManage_Handler /* MPU Fault Handler*/.long BusFault_Handler /* Bus Fault Handler*/.long UsageFault_Handler /* Usage Fault Handler*/.long 0 /* Reserved*/.long 0 /* Reserved*/.long 0 /* Reserved*/.long 0 /* Reserved*/.long SVC_Handler /* SVCall Handler*/.long DebugMon_Handler /* Debug Monitor Handler*/.long 0 /* Reserved*/.long PendSV_Handler /* PendSV Handler*/.long SysTick_Handler /* SysTick Handler*/ 03/09/2015 Laboratorio de Microprocesadores 12

13 File: startup_mk64f12.s InterruptVectors /* Device specific interrupts Vectors*/.long DMA0_IRQHandler /* DMA Channel 0 Transfer Complete*/.long DMA1_IRQHandler /* DMA Channel 1 Transfer Complete*/.long DMA2_IRQHandler /* DMA Channel 2 Transfer Complete*/.long DMA3_IRQHandler /* DMA Channel 3 Transfer Complete*/.long DMA4_IRQHandler /* DMA Channel 4 Transfer Complete*/.long DMA5_IRQHandler /* DMA Channel 5 Transfer Complete*/.long DMA6_IRQHandler /* DMA Channel 6 Transfer Complete*/.long DMA7_IRQHandler /* DMA Channel 7 Transfer Complete*/.long DMA8_IRQHandler /* DMA Channel 8 Transfer Complete*/.long DMA9_IRQHandler /* DMA Channel 9 Transfer Complete*/.long DMA10_IRQHandler /* DMA Channel 10 Transfer Complete*/.long DMA11_IRQHandler /* DMA Channel 11 Transfer Complete*/.long DMA12_IRQHandler /* DMA Channel 12 Transfer Complete*/.long DMA13_IRQHandler /* DMA Channel 13 Transfer Complete*/.long DMA14_IRQHandler /* DMA Channel 14 Transfer Complete*/.long DMA15_IRQHandler /* DMA Channel 15 Transfer Complete*/.long DMA_Error_IRQHandler /* DMA Error Interrupt*/.long MCM_IRQHandler /* Normal Interrupt*/.long FTFE_IRQHandler /* FTFE Command complete interrupt*/.long Read_Collision_IRQHandler /* Read Collision Interrupt*/.long LVD_LVW_IRQHandler /* Low Voltage Detect, Low Voltage Warning*/.long LLWU_IRQHandler /* Low Leakage Wakeup Unit*/.long WDOG_EWM_IRQHandler /* WDOG Interrupt*/.long RNG_IRQHandler /* RNG Interrupt*/.long I2C0_IRQHandler /* I2C0 interrupt*/.long I2C1_IRQHandler /* I2C1 interrupt*/.long SPI0_IRQHandler /* SPI0 Interrupt*/.long SPI1_IRQHandler /* SPI1 Interrupt*/.long I2S0_Tx_IRQHandler /* I2S0 transmit interrupt*/.long I2S0_Rx_IRQHandler /* I2S0 receive interrupt*/ 03/09/2015 Laboratorio de Microprocesadores 13

14 File: startup_mk64f12.s InterruptVectors /* Device specific interrupts Vectors (cont)*/.long UART0_LON_IRQHandler /* UART0 LON interrupt*/.long UART0_RX_TX_IRQHandler /* UART0 Receive/Transmit interrupt*/.long UART0_ERR_IRQHandler /* UART0 Error interrupt*/.long UART1_RX_TX_IRQHandler /* UART1 Receive/Transmit interrupt*/.long UART1_ERR_IRQHandler /* UART1 Error interrupt*/.long UART2_RX_TX_IRQHandler /* UART2 Receive/Transmit interrupt*/.long UART2_ERR_IRQHandler /* UART2 Error interrupt*/.long UART3_RX_TX_IRQHandler /* UART3 Receive/Transmit interrupt*/.long UART3_ERR_IRQHandler /* UART3 Error interrupt*/.long ADC0_IRQHandler /* ADC0 interrupt*/.long CMP0_IRQHandler /* CMP0 interrupt*/.long CMP1_IRQHandler /* CMP1 interrupt*/.long FTM0_IRQHandler /* FTM0 fault, overflow and channels interrupt*/.long FTM1_IRQHandler /* FTM1 fault, overflow and channels interrupt*/.long FTM2_IRQHandler /* FTM2 fault, overflow and channels interrupt*/.long CMT_IRQHandler /* CMT interrupt*/.long RTC_IRQHandler /* RTC interrupt*/.long RTC_Seconds_IRQHandler /* RTC seconds interrupt*/.long PIT0_IRQHandler /* PIT timer channel 0 interrupt*/.long PIT1_IRQHandler /* PIT timer channel 1 interrupt*/.long PIT2_IRQHandler /* PIT timer channel 2 interrupt*/.long PIT3_IRQHandler /* PIT timer channel 3 interrupt*/.long PDB0_IRQHandler /* PDB0 Interrupt*/.long USB0_IRQHandler /* USB0 interrupt*/.long USBDCD_IRQHandler /* USBDCD Interrupt*/.long Reserved71_IRQHandler /* Reserved interrupt 71*/.long DAC0_IRQHandler /* DAC0 interrupt*/.long MCG_IRQHandler /* MCG Interrupt*/.long LPTMR0_IRQHandler /* LPTimer interrupt*/ 03/09/2015 Laboratorio de Microprocesadores 14

15 File: startup_mk64f12.s InterruptVectors /* Device specific interrupts Vectors (cont)*/.long PORTA_IRQHandler /* Port A interrupt*/.long PORTB_IRQHandler /* Port B interrupt*/.long PORTC_IRQHandler /* Port C interrupt*/.long PORTD_IRQHandler /* Port D interrupt*/.long PORTE_IRQHandler /* Port E interrupt*/.long SWI_IRQHandler /* Software interrupt*/.long SPI2_IRQHandler /* SPI2 Interrupt*/.long UART4_RX_TX_IRQHandler /* UART4 Receive/Transmit interrupt*/.long UART4_ERR_IRQHandler /* UART4 Error interrupt*/.long UART5_RX_TX_IRQHandler /* UART5 Receive/Transmit interrupt*/.long UART5_ERR_IRQHandler /* UART5 Error interrupt*/.long CMP2_IRQHandler /* CMP2 interrupt*/.long FTM3_IRQHandler /* FTM3 fault, overflow and channels interrupt*/.long DAC1_IRQHandler /* DAC1 interrupt*/.long ADC1_IRQHandler /* ADC1 interrupt*/.long I2C2_IRQHandler /* I2C2 interrupt*/.long CAN0_ORed_Message_buffer_ IRQHandler /* CAN0 OR'd message buffers interrupt*/.long CAN0_Bus_Off_IRQHandler /* CAN0 bus off interrupt*/.long CAN0_Error_IRQHandler /* CAN0 error interrupt*/.long CAN0_Tx_Warning_IRQHandler /* CAN0 Tx warning interrupt*/.long CAN0_Rx_Warning_IRQHandler /* CAN0 Rx warning interrupt*/.long CAN0_Wake_Up_IRQHandler /* CAN0 wake up interrupt*/.long SDHC_IRQHandler /* SDHC interrupt*/.long ENET_1588_Timer_IRQHandler /* Ethernet MAC IEEE 1588 Timer Interrupt*/.long ENET_Transmit_IRQHandler /* Ethernet MAC Transmit Interrupt*/.long ENET_Receive_IRQHandler /* Ethernet MAC Receive Interrupt*/.long ENET_Error_IRQHandler /* Ethernet MAC Error and miscelaneous Interrupt*/ 03/09/2015 Laboratorio de Microprocesadores 15

16 NVIC Nested Vector Interrupt Controller NVIC Registers 03/09/2015 Laboratorio de Microprocesadores 16

17 NVIC Nested Vector Interrupt Controller NVIC Registers 8X32=256 i.e.irq n=0-255 Ej: ISER[INT[IRQn/32]] 03/09/2015 Laboratorio de Microprocesadores 17

18 NVIC Nested Vector Interrupt Controller NVIC Registers: NVIC_ISER0-NVIC_ISER7 03/09/2015 Laboratorio de Microprocesadores 18

19 NVIC Nested Vector Interrupt Controller NVIC Registers: NVIC_ICER0-NVIC_ICER7 03/09/2015 Laboratorio de Microprocesadores 19

20 NVIC Nested Vector Interrupt Controller NVIC Registers: NVIC_ISPR0-NVIC_ISPR7 03/09/2015 Laboratorio de Microprocesadores 20

21 NVIC Nested Vector Interrupt Controller NVIC Registers: NVIC_ICPR0-NVIC_ICPR7 03/09/2015 Laboratorio de Microprocesadores 21

22 NVIC Nested Vector Interrupt Controller NVIC Registers: NVIC_IABR0-NVIC_IABR7 03/09/2015 Laboratorio de Microprocesadores 22

23 NVIC Nested Vector Interrupt Controller NVIC Registers: NVIC_IPR0-NVIC_IPR59 03/09/2015 Laboratorio de Microprocesadores 23

24 NVIC Nested Vector Interrupt Controller K64F NVIC_IPR0-NVIC_IPR59 Una exception de mayor prioridad (nivel de prioridad mas bajo) puede interrumpir (preempt) a una excepción de menor prioridad (nivel de prioridad mas alto) La posicion del bit para el IPR es: 8 * (IRQn mod 4) /09/2015 Laboratorio de Microprocesadores 24

25 NVIC Nested Vector Interrupt Controller IPR Numero de niveles Se han usado los bits mas significativos en lugar de los menos significativos para simplificar la migracion del software de un procesador a otro. Si los bits no implementados son los mas significativos se produce una inversion de la prioridad al portar de un procesador a otro. En el siguiente ejemplo podemos ver que al eliminar el MSB (b2) se invierte la prioridad bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 IRQn / pri No Implementado IRQ0 - No Implementado IRQ1 + 03/09/2015 Laboratorio de Microprocesadores 25

26 NVIC Nested Vector Interrupt Controller Ej:Determinacion de la posicion del registro para un periferico (LPTMR Low Power Timer) Vector=74 IRQn=Vector-16=58 NVIC Non-IPR Register location = INT[IRQn/32]= INT[58/32]=1 NVIC IPR Register location = INT[IRQn/4]= INT[58/4]=14 Los registros involucrados son: ISER1, ICER1,ISPR1,ICPR1,IABR1,IP14 La posicion del bit para los Non IPR es: IRQn mod 32 = 58-32*1=26 03/09/2015 Laboratorio de Microprocesadores 26

27 NVIC Nested Vector Interrupt Controller Ej:Determinacion de la posicion del registro para un periferico (LPTMR Low Power Timer) La posicion del bit para el IPR es: 8 * (IRQn mod 4) + 4 = 8*(58 mod 4)+4 = 8*(58-14*4) +4=20 => IP14[23:20] IRQ59 IRQ58 IRQ57 IRQ56 IPR14 03/09/2015 Laboratorio de Microprocesadores 27

28 CMSIS Cortex Microcontroller Software Interface Standard 03/09/2015 Laboratorio de Microprocesadores 28

29 CMSIS Cortex Microcontroller Software Interface Standard Enable External Interrupt : The function enables a device-specific interrupt in the NVIC interrupt controller. Param [in]:irqn En core_cm4.h External interrupt number. Value cannot be negative. STATIC_INLINE void NVIC_EnableIRQ(IRQn_Type IRQn) { INT[IRQn/32]] /* enable interrupt */ NVIC->ISER[(uint32_t)((int32_t)IRQn) >> 5] = (uint32_t)(1 << ((uint32_t)((int32_t)irqn) & (uint32_t)0x1f)); } Ejemplo: NVIC_EnableIRQ(PORTA_IRQn); IRQn mod 32 03/09/2015 Laboratorio de Microprocesadores 29

30 Ejemplo de interrupcion Ejemplo (cont) : ISR PORTA_IRQHandler (void) { // Clear port IRQ flag PORT_ClearInterruptFlag (PORTA, PIN);.. } PORTA_IRQn NVIC_EnableIRQ(PORTA_IRQn); PortA PIN void PORT_ClearInterruptFlag (PORT_t port, PORTBit_t bit) { port->pcr[bit] = PORT_PCR_ISF_MASK; } PORT_PCR_ISF_MASK =0x u 03/09/2015 Laboratorio de Microprocesadores 30

31 SystickTimer El Systick timer es un contador descendente de 24 bits que esta integrado al NVIC y puede ser usado para generar una excepción (#15). En muchos sistemas operativos el timer es usado para administrar las tareas. Por ejemplo para permitir que múltiples tareas sean ejecutadas en diferentes momentos y evitar así que ninguna tarea bloquee al sistema. Estructura Interna 03/09/2015 Laboratorio de Microprocesadores 31

32 SystickTimer Control and Status Register Reload Value Register 03/09/2015 Laboratorio de Microprocesadores 32

33 SystickTimer Current Value Register Reload Value Register 03/09/2015 Laboratorio de Microprocesadores 33

34 SystickTimer El contador genera una interrupción cuando pasa de 1 a 0 y se recarga en el próximo flanco ascendente del clock. 04/09/2015 Laboratorio de Microprocesadores 34

35 SystickTimer Notas: Si se desea generar una interrupción periodicade N pulsos de clock el valor de recarga debe ser N -1!! Si se desea generar un retardo de N pulsos de clock el valor de inicial debe ser N!!. No es necesario borrar ningún flag al entrar a la interrupción del Systick dado que se trata de una excepción del propio core. 04/09/2015 Laboratorio de Microprocesadores 35

36 SystickTimer Secuencia de inicialización 1. Desabilitar el timer 0 Systick Status and control register 2. Escribir el nuevo valor en el Systick Reload Register 3. Escribir el Current Value register para ponerlo en 0 4. Escribir el Systick Status and control Register para arrancar el Systick void SysTick_Init (void) { SysTick->CTRL = 0x00; SysTick->LOAD = L - 1; // 100MHz SysTick->VAL = 0x00; SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk SysTick_CTRL_TICKINT_Msk SysTick_CTRL_ENABLE_Msk; } _ISR SysTick_Handler (void) { // Your code Here } 03/09/2015 Laboratorio de Microprocesadores 36

37 END Interrupts 03/09/2015 Laboratorio de Microprocesadores 37

I2C. Ing. Pablo Martín Gomez pgomez@fi.uba.ar

I2C. Ing. Pablo Martín Gomez pgomez@fi.uba.ar I2C Ing. Pablo Martín Gomez pgomez@fi.uba.ar 1 Comunicaciones en un bus serie 2 Comunicaciones en un bus serie 3 I²C Velocidad 4 UART Universal Asynchronous Receiver Transmitter Estándar de comunicación

Más detalles

RESETS & INTERRUPCIONES

RESETS & INTERRUPCIONES RESETS & INTERRUPCIONES EN EL CPU08 Resets & Interrupciones Los Resets inicializan al CPU a un estado conocido!!!!. Todos los resets son manejados por medio del System Integration Module (S.I.M ) Tipos

Más detalles

Ensamblador. Interrupciones. Dentro de una computadora existen dos clases de interrupciones:

Ensamblador. Interrupciones. Dentro de una computadora existen dos clases de interrupciones: Ensamblador Interrupciones Definición: Una interrupción es el rompimiento en la secuencia de un programa para ejecutar un programa especial llamando una rutina de servicio cuya característica principal

Más detalles

Entradas y Salidas. Componentes básicos de una PC

Entradas y Salidas. Componentes básicos de una PC Entradas y Salidas a) Con periféricos de mediana velocidad conviene trabajar por FLAG (control por programa). b) Con periféricos rápidos utilizando el esquema de la línea READY. c) Con periféricos de Actuación

Más detalles

Winide y Kit EVALQTY CDM 2011

Winide y Kit EVALQTY CDM 2011 Winide y Kit EVALQTY CDM 2011 Seteo de jumpers jumpers JUMPER : JP1 Selección de la Tensión de Alimentación al MCU. JP1 en posición 1-2 VDD = 5Vdc JP1 en posición 2-3 VDD = 3Vdc (MCU alimentado con 3Vdc)

Más detalles

INTERRUPCIONES. Existen 256 interrupciones En el modo real cada una tiene un vector asociado Vectores de 4 bytes: segmento + offset 32 F0 50 8A

INTERRUPCIONES. Existen 256 interrupciones En el modo real cada una tiene un vector asociado Vectores de 4 bytes: segmento + offset 32 F0 50 8A Tres tipos de interrupciones: Internas (TRAPS) Externas (HARDWARE) Software Existen 256 interrupciones En el modo real cada una tiene un vector asociado Vectores de 4 bytes: segmento + offset... 0000:0008

Más detalles

Herramientas para Cortex CMSIS. Requerimientos. Respuesta - CMSIS 30/06/2011. Cortex MicrocontrollerSoftware Interface Standard

Herramientas para Cortex CMSIS. Requerimientos. Respuesta - CMSIS 30/06/2011. Cortex MicrocontrollerSoftware Interface Standard Herramientas para Cortex CMSIS Cortex MicrocontrollerSoftware Interface Standard 1 2 Requerimientos Respuesta - CMSIS Mejorar la portabilidad y la reutilización del software. Permitirle a los proveedores

Más detalles

SISTEMAS ELECTRÓNICOS AVANZADOS. ING. TÉC. INDUSTRIAL ELECTRÓNICO

SISTEMAS ELECTRÓNICOS AVANZADOS. ING. TÉC. INDUSTRIAL ELECTRÓNICO INTERRUPCIONES Interrumpen la ejecución de un programa y pasan a la rutina de servicio del evento que provoca la interrupción. El vector de interrupción se encuentra en la dirección 04H de la memoria de

Más detalles

Contenido TEMA 2 ENTRADA / SALIDA. Interfaz HW: buses del sistema. Interfaz HW de E/S

Contenido TEMA 2 ENTRADA / SALIDA. Interfaz HW: buses del sistema. Interfaz HW de E/S Contenido TEMA ENTRADA / SALIDA Sergio Romero Montiel Depto Arquitectura de Computadores El concepto de interfaz de E/S Direccionamiento de interfaces de E/S Mapa de memoria Organización Mapeada y no mapeada

Más detalles

TEMA III - Interrupciones en Sistemas en Tiempo Real

TEMA III - Interrupciones en Sistemas en Tiempo Real 1 TEMA III - Interrupciones en Sistemas en Tiempo Real 3.1. Introducción Definición. Objetivo. Mecanismo básico. Ejemplo. Muestreo o polling. 3.2. Interrupciones Simples Componentes. Mecanismo. Ejemplo.

Más detalles

UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA Diseño con Microcontroladores

UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA Diseño con Microcontroladores WATCHDOG TIMER El watchdog timer es un temporizador de 16 bit que puede ser usado como watchdog o por intervalos de tiempo. Al iniciarse un programa, el watchdog timer está activo y configurado por defecto

Más detalles

Microprocesadores, Tema 6:

Microprocesadores, Tema 6: Microprocesadores, Tema 6: Módulos CCP (Capturar / Comparar / PWM) Guillermo Carpintero Marta Ruiz Universidad Carlos III de Madrid Objetivos Estudiar los diferentes modos de funcionamiento de los módulos

Más detalles

PROGRAMA ANALÍTICO DEPARTAMENTO: ELECTRICIDAD Y ELECTRONICA CARRERA: INGENIERIA ELECTRICISTA ASIGNATURA: SISTEMAS ELECTRÓNICOS DIGITALES CÓDIGO: 0468

PROGRAMA ANALÍTICO DEPARTAMENTO: ELECTRICIDAD Y ELECTRONICA CARRERA: INGENIERIA ELECTRICISTA ASIGNATURA: SISTEMAS ELECTRÓNICOS DIGITALES CÓDIGO: 0468 PROGRAMA ANALÍTICO DEPARTAMENTO: ELECTRICIDAD Y ELECTRONICA CARRERA: INGENIERIA ELECTRICISTA ASIGNATURA: SISTEMAS ELECTRÓNICOS DIGITALES CÓDIGO: 0468 AÑO ACADÉMICO: 2013 PLAN DE ESTUDIO: 2004 UBICACIÓN

Más detalles

BIT-BAND Una Solución eficiente para modificar bits

BIT-BAND Una Solución eficiente para modificar bits BIT-BAND Una Solución eficiente para modificar bits Introducción Una CPU no puede modificar bits individuales de una posición de memoria (o de un registro).la CPU solo puede modificar bytes o words completos

Más detalles

INTERRUPCIONES. La comunicación asíncrona de los sistemas periféricos con la CPU, en ambos sentidos, se puede establecer de dos maneras fundamentales:

INTERRUPCIONES. La comunicación asíncrona de los sistemas periféricos con la CPU, en ambos sentidos, se puede establecer de dos maneras fundamentales: INTERRUPCIONES La comunicación asíncrona de los sistemas periféricos con la CPU, en ambos sentidos, se puede establecer de dos maneras fundamentales: a)consultas (POLLING): Se comprueban cíclicamente,

Más detalles

Microprocesadores, Tema 8:

Microprocesadores, Tema 8: Microprocesadores, Tema 8: Periféricos de Comunicación Síncronos Guillermo Carpintero Marta Ruiz Universidad Carlos III de Madrid Standard de Comunicación Protocolos Standard de Comunicación Serie Síncrona

Más detalles

USO DEL SOFTWARE PROVIEW 32

USO DEL SOFTWARE PROVIEW 32 USO DEL SOFTWARE PROVIEW 32 Como primera parte se hace la instalación del software Proview 32, observando: Se da clic en el ejecutable y se inicia la instalación. La clave de software viene en el archivo

Más detalles

Sistemas Operativos. Tema 1. Arquitectura Básica de los Computadores

Sistemas Operativos. Tema 1. Arquitectura Básica de los Computadores Sistemas Operativos. Tema 1 Arquitectura Básica de los Computadores http://www.ditec.um.es/so Departamento de Ingeniería y Tecnología de Computadores Universidad de Murcia Sistemas Operativos. Tema 1 Arquitectura

Más detalles

INTRODUCCIÓN. Interrupciones.

INTRODUCCIÓN. Interrupciones. Interrupciones. INTRODUCCIÓN Una interrupción es la ocurrencia de un evento o condición la cuál causa una suspensión temporal del programa mientras la condición es atendida por otro subprograma. Una interrupción

Más detalles

Buceando en el HC908...

Buceando en el HC908... COMENTARIO TÉCNICO Buceando en el HC908... Por Ing. Daniel Di Lella Dedicated Field Application Engineer www.edudevices.com.ar dilella@arnet.com.ar Practicando con el CodeWarrior 5.1/6.x y el sistema R(S)_POD...

Más detalles

PROGRAMA ANALÍTICO DEPARTAMENTO: ELECTRICIDAD Y ELECTRONICA CARRERA: INGENIERÍA EN TELECOMUNICACIONES

PROGRAMA ANALÍTICO DEPARTAMENTO: ELECTRICIDAD Y ELECTRONICA CARRERA: INGENIERÍA EN TELECOMUNICACIONES PROGRAMA ANALÍTICO DEPARTAMENTO: ELECTRICIDAD Y ELECTRONICA CARRERA: INGENIERÍA EN TELECOMUNICACIONES ASIGNATURA: MICROCONTROLADORES Y SUS APLICACIONES CÓDIGO: 0071 AÑO ACADÉMICO: 2013 PLAN DE ESTUDIO:

Más detalles

MC. Christian Aldaco González. Microcontroladores

MC. Christian Aldaco González. Microcontroladores MC. Christian Aldaco González Microcontroladores La familia M68HC08 M68HC08 Central Processor Unit(CPU08) Features include: High-performance M68HC08 CPU core Fully upward-compatible object code with M68HC05

Más detalles

Máster universitario en automatización de procesos industriales

Máster universitario en automatización de procesos industriales DEPARTAMENTO DE ELECTRÓNICA Máster universitario en automatización de procesos industriales Departamento de Electrónica Universidad de Alcalá DEPARTAMENTO DE ELECTRÓNICA AUTÓMATAS DE OMRON Estructura de

Más detalles

CMSIS y Drivers para periféricos

CMSIS y Drivers para periféricos CMSIS y Drivers para periféricos Alan Kharsansky Abril - 2011 Alan Kharsansky CMSIS y Drivers para periféricos 1 / 34 Índice CMSIS y Drivers 1 CMSIS y Drivers Introducción Estructura Utilización Ejemplo

Más detalles

Soluciones de Seguridad de Freescale 1ª parte: VKSP (Variable Key Security Protocol)

Soluciones de Seguridad de Freescale 1ª parte: VKSP (Variable Key Security Protocol) Soluciones de Seguridad de Freescale 1ª parte: VKSP (Variable Key Security Protocol) Por Luis Casado Luis Casado Freescale Semiconductor www.freescale.com Freescale Semiconductor ofrece distintos niveles

Más detalles

Guía de práctica. Dispositivo

Guía de práctica. Dispositivo Guía de práctica Que queremos hacer? Vamos a hacer el Hello World del mundo de la electrónica que no es más que prender y apagar un LED a intervalos regulares. PROYECTO LAPEGÜE 1 = Prende Dispositivo 0

Más detalles

Microcontroladores PIC de Microchip: generalidades

Microcontroladores PIC de Microchip: generalidades Microcontroladores PIC de Microchip: generalidades PIC significa Peripheral Interface Controller Los fabrica ARIZONA MICROCHIP TECHNOLOGY. Fábrica principal: Chandler (Arizona). Otras en Tender (Arizona),

Más detalles

CAN-101, HT6P20x2 Encoder para aplicaciones remotas de control

CAN-101, HT6P20x2 Encoder para aplicaciones remotas de control Nota de Aplicación: CAN-101 Título: HT6P20x2 Encoder para aplicaciones remotas de control Autor: Ing Iván C Sierra Revisiones Fecha Comentarios 0 28/01/13 En esta oportunidad le presentamos un nuevo encoder,

Más detalles

Capítulo 2. Conociendo ARM

Capítulo 2. Conociendo ARM Capítulo 2. Conociendo ARM 2.1 Introducción En 1983 Acorn Computers comenzó el desarrollo de la arquitectura ARM. El propósito original para la creación de ARM era el desarrollo de un procesador avanzado,

Más detalles

Laboratorio de Sistemas Embebidos Conceptos generales (2009)

Laboratorio de Sistemas Embebidos Conceptos generales (2009) Laboratorio de Sistemas Embebidos Conceptos generales (2009) Índice Introducción a los PIC Conceptos generales sobre el dspic30f Reloj del sistema Entrada/salida con puertos paralelos Timers Interrupciones

Más detalles

Programación de IDAS Trunking

Programación de IDAS Trunking Programación de IDAS Trunking Repetidor Digital IDAS Configuración de la tarjeta UC-FR5000 Programación de la Tarjeta UC-FR5000 La tarjeta de control es programada usando su propio software de programación

Más detalles

Técnicas Digitales III

Técnicas Digitales III Universidad Tecnológica Nacional Facultad Regional San Nicolás Técnicas Digitales III Familia 56800 DSP56F801 1 DSP56F801 Nombre funcional Nº Pines Power (V DD ) 5 Ground (V SS ) 6 Supply Cap. 2 PLL y

Más detalles

GUIA GENERAL PARA LA PROGRAMACIÓN DEL SISTEMA EVOLUPIC Bootloader 16F88 BOOTLOADER: AN1310 DE MICROCHIP INDICE

GUIA GENERAL PARA LA PROGRAMACIÓN DEL SISTEMA EVOLUPIC Bootloader 16F88 BOOTLOADER: AN1310 DE MICROCHIP INDICE 1 GUIA GENERAL PARA LA PROGRAMACIÓN DEL SISTEMA EVOLUPIC Bootloader 16F88 BOOTLOADER: AN1310 DE MICROCHIP INDICE 1. Información general sobre el programa Bootloader para el sistema EVOLUPIC-16F88. Auto-programador

Más detalles

Lo que definimos como CPU (Central Process Unit) o Unidad Central de Proceso, está estructurado por tres unidades operativamente diferentes:

Lo que definimos como CPU (Central Process Unit) o Unidad Central de Proceso, está estructurado por tres unidades operativamente diferentes: Facultad de Ciencias Exactas y Naturales y Agrimensura Departamento de Ingeniería Cátedra : Proyecto Final Apuntes : Microprocesadores Tema 6-1 : Esquema de un µp. La CPU Lo que definimos como CPU (Central

Más detalles

De D sarrollo d e a plicaciones c on Cortex M

De D sarrollo d e a plicaciones c on Cortex M Desarrollo de aplicaciones con Cortex M ATMEL Arquitectura ARM Agenda Productos ARM de ATMEL ATMEL STUDIO 6 Hands on 1: Conociendo el entorno ATMEL Software Framework Hands on 2: Manejo de GPIO Hands on

Más detalles

GUIA GENERAL PARA LA PROGRAMACIÓN DEL SISTEMA EB88 BOOTLOADER: TINY INDICE

GUIA GENERAL PARA LA PROGRAMACIÓN DEL SISTEMA EB88 BOOTLOADER: TINY INDICE 1 GUIA GENERAL PARA LA PROGRAMACIÓN DEL SISTEMA EB88 BOOTLOADER: TINY INDICE 1. Información general sobre el programa Bootloader para el sistema EB88. Auto-programador (Self programming) a través del puerto

Más detalles

Reemplazar el core module por uno de mayor capacidad Aplicación TCP/IP sobre Ethernet? Conectar el patch-cord Comenzar a desarrollar la aplicación

Reemplazar el core module por uno de mayor capacidad Aplicación TCP/IP sobre Ethernet? Conectar el patch-cord Comenzar a desarrollar la aplicación Core Modules Módulos pre-armados: microprocesador + RAM + flash [ + Ethernet ] [ +... ] Recurso probado en ambientes conflictivos Económicos (no DIY MAC) De fácil implementación: pueden soldarse o conectarse

Más detalles

GUIA GENERAL PARA LA PROGRAMACIÓN DEL SISTEMA PICCITO 16F88 INDICE

GUIA GENERAL PARA LA PROGRAMACIÓN DEL SISTEMA PICCITO 16F88 INDICE 1 GUIA GENERAL PARA LA PROGRAMACIÓN DEL SISTEMA PICCITO 16F88 INDICE 1. Información general sobre el programa Bootloader para el sistema PICCITO 16F88. Auto-programador (Self programming) a través del

Más detalles

Introducción a la Entrada/Salida

Introducción a la Entrada/Salida Introducción a la Entrada/Salida Organización de entrada/salida La familia de procesadores 80x86, presente en el IBM PC, utiliza la arquitectura Von Neumann, que puede verse en la figura 1. El denominado

Más detalles

Temporización mediante el temporizador del sistema SysTick en microcontroladores ARM Cortex-M

Temporización mediante el temporizador del sistema SysTick en microcontroladores ARM Cortex-M Temporización mediante el temporizador del sistema SysTick en microcontroladores ARM Cortex-M Apellidos, nombre Departamento Centro Capella Hernández, Juan Vicente (jcapella@disca.upv.es) Departamento

Más detalles

MONITOR ROM MODULE (MON08)

MONITOR ROM MODULE (MON08) ROM MODULE (MON08) Que es el Monitor ROM?? Es un módulo exclusivo de la familia HC908 FLASH de Freescale, que permite forzar al MCU a un estado especial de comunicación con el mundo exterior. Este modo

Más detalles

Buceando en los MCUs Freescale...

Buceando en los MCUs Freescale... COMENTARIO TÉCNICO Buceando en los MCUs Freescale... Por Ing. Daniel Di Lella Dedicated Field Application Engineer www.edudevices.com.ar dilella@arnet.com.ar Serie Flexis...... Como migrar de 8 a 32 Bits

Más detalles

Periféricos Interfaces y Buses

Periféricos Interfaces y Buses Periféricos Interfaces y Buses I. Arquitectura de E/S II. Programación de E/S III. Interfaces de E/S de datos IV. Dispositivos de E/S de datos V. Buses Buses de E/S (PCI, PC104, AGP). Sistemas de interconexión

Más detalles

REPORTE DE LECTURA SECUENCIA DE ARRANQUE DEL ROUTER

REPORTE DE LECTURA SECUENCIA DE ARRANQUE DEL ROUTER REPORTE DE LECTURA SECUENCIA DE ARRANQUE DEL ROUTER Cuando un router se enciende, realiza una serie de pasos llamados secuencia de arranque, para probar el hardware y cargar el software necesario. La secuencia

Más detalles

Informática Industrial (II)

Informática Industrial (II) Informática Industrial (II) 3º Ingeniería Técnica Industrial (Especialidad en Electrónica). E. U. Politécnica. Universidad de Sevilla. 3-mayo Práctica STR2: Entorno de desarrollo para un SOTR (Sistema

Más detalles

Señal de petición de Interrupción

Señal de petición de Interrupción Consideren una tarea que require tomar caracteres desde un teclado y mostrarlos en la pantalla de un monitor. La tasa de transferencia desde un teclado a un computador está limitado por la velocidad del

Más detalles

Vdd MIC29302. Vss PF.0 CS DI DAT CLK PE.7 PD.4 PD.5 PB.0. CAN-054, Utilización de tarjetas MMC en bajo nivel

Vdd MIC29302. Vss PF.0 CS DI DAT CLK PE.7 PD.4 PD.5 PB.0. CAN-054, Utilización de tarjetas MMC en bajo nivel Nota de Aplicación: CAN-054 Título: Utilización de tarjetas MMC en bajo nivel Autor: Sergio R. Caprile, Senior Engineer, colaboración IT&T (distr. Cika en Mendoza) Revisiones Fecha Comentarios 0 02/09/06

Más detalles

Tema 14. Interrupciones. Las. C. F. G.S. D.P.E. Módulo de Proyectos 1

Tema 14. Interrupciones. Las. C. F. G.S. D.P.E. Módulo de Proyectos 1 Tema 14 Las Interrupciones C. F. G.S. D.P.E. Módulo de Proyectos 1 Los PIC de la familia 16F8X poseen 4 fuentes de interrupción: Interrupción externa a través del pin RB0/INT Interrupción por overflow

Más detalles

BUS I2C. IES Los Viveros Sevilla Dpto. Electrónica. 1

BUS I2C. IES Los Viveros Sevilla Dpto. Electrónica. 1 BUS I2C Se trata de un protocolo serie desarrollado por Philips Semiconductors usado por muchos integrados para comunicarse entre ellos, para su funcionamiento requiere sólo dos líneas, una de reloj (SCL)

Más detalles

Diseño de un sistema de adquisición de datos de un micrófono utilizando una FPGA

Diseño de un sistema de adquisición de datos de un micrófono utilizando una FPGA Diseño de un sistema de adquisición de datos de un micrófono utilizando una FPGA Experimental III: Introducción a la Microfabricación y FPGA - Instituto Balseiro Mauricio Tosi Diciembre de 2013 Resumen

Más detalles

Temporizadores y contadores en tiempo real: El módulo Timer0 y el prescaler del PIC

Temporizadores y contadores en tiempo real: El módulo Timer0 y el prescaler del PIC Temporizadores y contadores en tiempo real: El módulo Timer0 y el aler del PIC 1. Introducción...1 2. Estructura del Timer0...1 3. Funcionamiento del Timer0...2 3.1. Entrada de reloj del modulo Timer0...

Más detalles

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Capítulo 8.- Inter Integrated Circuit Interface I2C MMIIC

Más detalles

SASE MARZO 2010 - PRELIMINAR. TDP Inertial Reference Unit

SASE MARZO 2010 - PRELIMINAR. TDP Inertial Reference Unit SASE MARZO 2010 - PRELIMINAR TDP Inertial Reference Unit SBC695 HARDWARE Introducción. Diagrama en Bloques. SBC21020 SBC695 CPU SBC21020. Diagrama Características Generales. Características Rad Hard. Canales

Más detalles

I NTRODUCCIÓN 1. ORDENADOR E INFORMÁTICA

I NTRODUCCIÓN 1. ORDENADOR E INFORMÁTICA I. INTRODUCCIÓN 1. ORDENADOR E INFORMÁTICA 1.1. Informática Informática (Información Automática) es la ciencia y la técnica del tratamiento automatizado de la información mediante el uso de ordenadores.

Más detalles

MICROCONTROLADORES: MIGRACIÓN A ARQUITECTURAS DE 32 BITS.

MICROCONTROLADORES: MIGRACIÓN A ARQUITECTURAS DE 32 BITS. MICROCONTROLADORES: MIGRACIÓN A ARQUITECTURAS DE 32 BITS. EVOLUCION DE LOS MICROPROCESADORES Entre 1946 y 1952, John Von Neumann y sus colegas del "Institute of Advanced Studies", desarrollaron el primer

Más detalles

Resumen del Manejo de Interrupciones en el LPC1768. Sistemas Electrónicos Digitales

Resumen del Manejo de Interrupciones en el LPC1768. Sistemas Electrónicos Digitales Resumen del Manejo de Interrupciones en el LPC1768 Versión 5.1 Sistemas Electrónicos Digitales Departamento de Electrónica 1 Introducción al documento Este documento presenta un resumen del sistema de

Más detalles

Microcontroladores. Sistemas embebidos para tiempo real

Microcontroladores. Sistemas embebidos para tiempo real Microcontroladores Objetivos Describir los conceptos y bloques básicos de microcontroladores CPU, ISA, arquitectura Comprender la importancia de conocer el uc Utilizar e interpretar manuales de usuario

Más detalles

Entrada salida y comunicación

Entrada salida y comunicación Entrada salida y comunicación E/S de los computadores Introducción: Variedad de dispositivos. Modo de transfer. Tipo de información. Diferencias de velocidades (tasas de transferencias). Ejemplos de periféricos:

Más detalles

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Capítulo 8.- Inter Integrated Circuit Interface I2C MMIIC

Más detalles

Tema. Módulo Captura Comparación Modulación n de Achura de Pulsos. C. F. G.S. D.P.E. Módulo de Proyectos 1

Tema. Módulo Captura Comparación Modulación n de Achura de Pulsos. C. F. G.S. D.P.E. Módulo de Proyectos 1 Tema Módulo Captura Comparación Modulación n de Achura de Pulsos C. F. G.S. D.P.E. Módulo de Proyectos 1 Módulo de Captura/ aptura/comparación/ n/pwm Los microcontroladores de la familia 16F87X disponen

Más detalles

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Capítulo 6.- Módulo Serial Asincrónico de Comunicación

Más detalles

Actividad 4: Comunicación entre PLC s vía Ethernet

Actividad 4: Comunicación entre PLC s vía Ethernet Actividad 4: Comunicación entre PLC s vía Ethernet 1.- Listado de materiales: PC con Tarjeta de red 3com o similar. 2 PLC Omrom CJ1M CPU11 ETN Estos autómatas llevan integrada la tarjeta de comunicaciones

Más detalles

Es un software de simulación que ejecuta programas en lenguaje de ensamblador para procesadores con arquitectura MIPS32.

Es un software de simulación que ejecuta programas en lenguaje de ensamblador para procesadores con arquitectura MIPS32. Arquitectura de Computadoras Jose Luis Tecpanecatl Xihuitl, Ph.D. Es un software de simulación que ejecuta programas en lenguaje de ensamblador para procesadores con arquitectura MIPS32. SPIM lee e inmediatamente

Más detalles

Control Digital en PC con MS-DOS

Control Digital en PC con MS-DOS Control Digital en PC con MS-DOS Abel Alberto Cuadrado Vega 19 de abril de 2006 1. Introducción Un PC puede ser utilizado para realizar un sistema de control digital. Para ello necesita lo siguiente: tarjeta

Más detalles

Introducción a los Sistemas Operativos

Introducción a los Sistemas Operativos Introducción a los Sistemas Operativos 2º Ingeniero de Telecomunicación (Sonido e Imagen) Departamento de Ingeniería Telemática Universidad Carlos III de Madrid 2 Qué vamos a ver hoy? Qué es un sistema

Más detalles

Procesadores Digitales de Señal (DSP)

Procesadores Digitales de Señal (DSP) UNIDAD II Procesadores Digitales de Señal (DSP) 22/05/02 EL-523063 Sistemas de Procesamiento Digital de Señales Luis Tarazona 150 II. Procesadores digitales de señal (DSP) Arquitectura de un DSP específico.

Más detalles

Usando los Codificadores Cuadráticos

Usando los Codificadores Cuadráticos Usando los Codificadores Cuadráticos Autor: Ing. Carlos Narváez Universidad de Oriente email: cnarvaez@udo.edu.ve Introducción El presente trabajo es una introducción a los denominados codificadores cuadráticos,

Más detalles

MÓDULO DE COMUNICACIÓN IP IPS 100 REG

MÓDULO DE COMUNICACIÓN IP IPS 100 REG MÓDULO DE COMUNICACIÓN IP IPS 100 REG Interface IP IPS 100 REG INDICE 1. DESCRIPCIÓN DE SU FUNCIÓN... 3 2. ESQUEMA DEL APARATO, CONEXIONADO Y ALIMENTACIÓN:... 4 3. CARACTERÍSTICAS TÉCNICAS:... 7 4. APLICACIÓN:...

Más detalles

Práctica 1. Introducción al SIEMENS 80C167

Práctica 1. Introducción al SIEMENS 80C167 Práctica 1 Introducción al SIEMENS 80C167 1 Objetivos Toma de contacto con los recursos de la tarjeta PHY80C167 basada en el microcontrolador SIEMENS 80C167 Familiarizarse con la herramienta de desarrollo

Más detalles

Introducción RecetatorUSB

Introducción RecetatorUSB Introducción RecetatorUSB El recetario USB. Todo lo que necesita para sus recetas en su pen drive. Es como tener el recetario en su memoria USB. Sin instalaciones. Sin descargas. Sin dejar sus recetas

Más detalles

Pines de entrada/salida (I/O) de propósito general. Mediante ellos, el micro PIC puede monitorizar y controlar otros dispositivos.

Pines de entrada/salida (I/O) de propósito general. Mediante ellos, el micro PIC puede monitorizar y controlar otros dispositivos. 1 Pines de entrada/salida (I/O) de propósito general Mediante ellos, el micro PIC puede monitorizar y controlar otros dispositivos. Para añadir flexibilidad al micro, muchos de sus pines de entrada/salida

Más detalles

Ángel Castillo Jordán TFC EPSC 25

Ángel Castillo Jordán TFC EPSC 25 OBJETIVO: Usar la pantalla LCD USER MODULE LCD con sus APIS de dibujo para realizar un mini juego con dos barras horizontales que crecen. Una barra controlada por PSoC (velocidad constante) y la otra barra

Más detalles

DESARROLLO DE UN COLECTOR DE DATOS PORTÁTIL

DESARROLLO DE UN COLECTOR DE DATOS PORTÁTIL DESARROLLO DE UN COLECTOR DE DATOS PORTÁTIL H. Nelson Acosta, Marcelo A. Tosini y José A. Marone { nacosta, mtosini, jmarone }@exa.unicen.edu.ar Facultad de Ciencias Exactas UNICEN / Redimec S.R.L. Tandil

Más detalles

INTRODUCCIÓN A LOS MICROPROCESADORES

INTRODUCCIÓN A LOS MICROPROCESADORES INTRODUCCIÓN A LOS MICROPROCESADORES Por Manuel Rico Secades Tecnología Electrónica Universidad de Oviedo BUSCANDO FALLOS EN EL ESQUEMA DE UN MICROPROCESADOR Chipworks Inc Canada El Microprocesador es

Más detalles

Modos de ahorro de energía a en los chips CMOS

Modos de ahorro de energía a en los chips CMOS Modos de ahorro de energía a en los chips CMOS MODOS DE OPERACIÓN N DE AHORRO DE ENERGÍA Para aplicaciones donde el consumo de potencia es crítico las versiones CMOS proporcionan modos de operación de

Más detalles

http://www.statum.biz http://www.statum.info http://www.statum.org

http://www.statum.biz http://www.statum.info http://www.statum.org ApiaMonitor Monitor de Infraestructura BPMS Por: Ing. Manuel Cabanelas Product Manager de Apia Manuel.Cabanelas@statum.biz http://www.statum.biz http://www.statum.info http://www.statum.org Abstract A

Más detalles

MC68HC908GP32 Diagrama en Bloques INTERNAL BUS

MC68HC908GP32 Diagrama en Bloques INTERNAL BUS Puertos de entrada / salida ( I/O PORTS ) DDRE DDRB CPU REGISTERS M68HC08 CPU ARITHMETIC/LOGIC UNIT (ALU) MC68HC908GP32 Diagrama en Bloques INTERNAL BUS COMPUTER OPERATING PROPERLY DDRA PORTA PTA7 / PTA0

Más detalles

Conmutación de Tareas

Conmutación de Tareas Conmutación de Tareas Conmutación de tareas Expira el tiempo de ejecución asignado por el procesador a la tarea N El procesador almacena en memoria el estado de máquina (contexto) de la tarea N. El procesador

Más detalles

Entorno de codiseño y cosimulación hardware-software basado en FPGA para la plataforma Arduino

Entorno de codiseño y cosimulación hardware-software basado en FPGA para la plataforma Arduino Entorno de codiseño y cosimulación hardware-software basado en FPGA para la plataforma Arduino J. M. Alcérreca, J. Castillo, J. I. Martínez josemaria@alcerreca.com, {javier.castillo, joseignacio.martinez}@urjc.es

Más detalles

Contenido. Sistemas de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida

Contenido. Sistemas de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida Contenido Sistemas de Categorias de los Dispositivos de En qué se diferencian los dispositivos de? Técnicas para realizar la E/S Interrupciones Interfaces involucradas en E/S Buffering Categorias de los

Más detalles

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Capítulo 7.- Módulo Serial Sincrónico de Comunicaciones

Más detalles

Introducción. Monitorización y operación de la aplicación del NS utilizando un navegador Web. LAN, Internet

Introducción. Monitorización y operación de la aplicación del NS utilizando un navegador Web. LAN, Internet NS WEB Interface Introducción Cómo conectar Funciones del Interface WEB del NS Configuración del Interface WEB del NS Conexión al interface WEB a través de Internet Introducción Qué es y qué permite el

Más detalles

Comunicación Serie IIC: Inter-Integrated Circuit

Comunicación Serie IIC: Inter-Integrated Circuit Comunicación Serie IIC: Inter-Integrated Circuit IIC: Inter-Integrated Circuit I2C es un bus serial, multi-master, de baja velocidad (de 10 a 400kbps), creado por Philips. El objetivo es facilitar la conexión

Más detalles

Microcontroladores. Sistemas embebidos para tiempo real

Microcontroladores. Sistemas embebidos para tiempo real Microcontroladores Sistemas embebidos para tiempo real Objetivos Describir los conceptos y bloques básicos de microcontroladores CPU, ISA, arquitectura Comprender la importancia de conocer el uc Utilizar

Más detalles

PRACTICA #1. Aprender a programar una interrupción software empleando C y/o Ensamblador.

PRACTICA #1. Aprender a programar una interrupción software empleando C y/o Ensamblador. PRACTICA #1 Aprender a programar una interrupción software empleando C y/o Ensamblador. Aprender a manipular dispositivos externos (8253, 8255) desde C y/o ensamblador. PROCEDIMIENTO: Vamos a programar

Más detalles

Especificaciones técnicas. Power, Inputs and Outputs. Operating Voltage Input Voltage (recommended) Input Voltage (limits) Analog Input Pins

Especificaciones técnicas. Power, Inputs and Outputs. Operating Voltage Input Voltage (recommended) Input Voltage (limits) Analog Input Pins Especificaciones técnicas Microcontroller Operating Voltage Input Voltage (recommended) Input Voltage (limits) Digital I/O Pins Analog Input Pins DC Current for I/O Pin DC Current for 3.3V Pin Flash Memory

Más detalles

SISTEMAS DE ENTRADA/SALIDA

SISTEMAS DE ENTRADA/SALIDA 1. Introducción. 2. Módulos de Entrada/Salida: comunicación CPU - Periféricos. 3. Mapa de Entrada/Salida: común y separada. 4. Introducción a los métodos de programación de E/S. SISTEMAS DE ENTRADA/SALIDA

Más detalles

GRADO EN INGENIERÍA ELECTRÓNICA Y AUTOMÁTICA INDUSTRIAL

GRADO EN INGENIERÍA ELECTRÓNICA Y AUTOMÁTICA INDUSTRIAL Sistemas Electrónicos Digitales Avanzados GRADO EN INGENIERÍA ELECTRÓNICA Y AUTOMÁTICA INDUSTRIAL PRÁCTICA FINAL GENERADOR AVANZADO DE FORMAS DE ONDA Dpto. Electrónica Curso 2013/2014 1. Introducción La

Más detalles

Cartilla para Microcontrolador PIC16F877. 28/40 Pin 8-Bit CMOS FLASH.

Cartilla para Microcontrolador PIC16F877. 28/40 Pin 8-Bit CMOS FLASH. Cartilla para Microcontrolador PIC16F877 28/40 Pin 8-Bit CMOS FLASH. Características principales CPU RISC de alta performance Set de35 instrucciones Todas las instrucciones son de un ciclo salvo aquellas

Más detalles

Temporizadores y contadores en tiempo real: El módulo Timer0 del PIC.

Temporizadores y contadores en tiempo real: El módulo Timer0 del PIC. Temporizadores y contadores en tiempo real: El módulo Timer0 del PIC. 1. Introducción... 1 2. Funcionamiento del Timer0... 1 2.1. Estructura general del Timer0...2 2.2. Entrada de reloj del modulo Timer0...2

Más detalles

Tema 3. Buses. Arquitectura de computadores. Plan 96. Curso 2010-2011. Jerarquía de buses

Tema 3. Buses. Arquitectura de computadores. Plan 96. Curso 2010-2011. Jerarquía de buses Tema 3. Buses 1. Introducción Jerarquía de buses Clasificación Fases de una transacción 2. Transferencia de datos 3. Temporización Bus síncrono Bus asíncrono Bus semisíncrono 4. Arbitraje del bus Centralizado

Más detalles

LA NORMA IEEE 488.1. Pin-out del bus GPIB

LA NORMA IEEE 488.1. Pin-out del bus GPIB LA NORMA IEEE 488.1 Pin-out del bus GPIB 8 líneas de datos bidireccionales: DIO7...DIO0 3 líneas de control de transferencia (handshaking) entre talker-listener 5 líneas de administración de la interface

Más detalles

SPI. Teoría y Aplicaciones. INGENIERIA EN MICROCONTROLADORES Protocolo SPI( Serial Peripherical Interface) Protocolo

SPI. Teoría y Aplicaciones. INGENIERIA EN MICROCONTROLADORES Protocolo SPI( Serial Peripherical Interface) Protocolo Protocolo SPI INGENIERIA EN MICROCONTROLADORES Protocolo SPI( Serial Peripherical Interface) Teoría y Aplicaciones INGENIERÍA EN MICROCONTROLADORES Curso de Redes de Microcontroladores PIC (Protocolo SPI)

Más detalles

CLOCK GENERATION MODULE (CGM) Módulo de Generación de Clock

CLOCK GENERATION MODULE (CGM) Módulo de Generación de Clock CLOCK GENERATION MODULE (CGM) Módulo de Generación de Clock Clock Generation Module Clock Generation Module (CGM) System Integration Module (SIM) LVI COP IRQ BREAK RESET 68HC08 CPU Timer Interface Module

Más detalles

CAS-2700-44 Gateway para el Protocolo SEC (Serial) para los UPS Mitsubishi

CAS-2700-44 Gateway para el Protocolo SEC (Serial) para los UPS Mitsubishi CAS-2700-44 Gateway para el Protocolo SEC (Serial) para los UPS Mitsubishi Hacia Modbus (RTU y TCP) y BACnet y HTML Descripción El protocolo SEC se puede utilizar para conectarse a UPS s apropiadamente

Más detalles

El módulo LCD Ejemplos de funcionamiento

El módulo LCD Ejemplos de funcionamiento SISTEMAS ELECTRÓNICOS Y AUTOMÁTICOS PRACTICAS DE MICROCONTROLADORES PIC PRÁCTICA 7: El módulo LCD El módulo LCD Ejemplos de funcionamiento - 1 - 1. Objetivos: - Conocer el funcionamiento y programación

Más detalles

Como sacarle mayor provecho a las herramientas disponibles para la familia HC908

Como sacarle mayor provecho a las herramientas disponibles para la familia HC908 COMENTARIO TECNICO Hablemos de MCU s... Por Ing. Daniel Di Lella Dedicated Field Application Engineer Responsable Area Educación Elko / Arrow www.elkonet.com ddilella@elkonet.com dilella@arnet.com.ar Como

Más detalles

El TIMER 0. (c) Domingo Llorente 2010 1

El TIMER 0. (c) Domingo Llorente 2010 1 El TIMER 0 (c) Domingo Llorente 2010 1 Características Se trata de un registro de 8 bits. (SFR: 01h, 101h) Puede trabajar como contador o temporizador. Se puede leer o escribir en él. Dispone de un preescaler

Más detalles

NINO PICKIT2 PIC PROGRAMMER

NINO PICKIT2 PIC PROGRAMMER NINO PICKIT2 PIC PROGRAMMER El programador PicKit2, es una herramienta de programación para desarrollo de bajo costo. Es capaz de programar la mayoría de los microcontroladores y memorias seriales EEPROM

Más detalles