Revisión final integrada

¡Revisar no puede ser mejor! ! ! !

 

 (Muerte rápida pronto!!!)

Capítulo 1 Definición de Embebido:

PCB es una computadora de uso general, y el sistema integrado es un "sistema de aplicación de computadora de propósito especial". Tiene la característica común de la composición general de la computadora y también se compone de hardware y software. Los sistemas embebidos generalmente consisten en microprocesadores embebidos, partes de E/S y almacenamiento, periféricos y partes de ejecución, software embebido, etc.

Consta de cuatro partes.

La base de un microprocesador

El microprocesador integrado tiene las ventajas de un tamaño pequeño, peso ligero, bajo costo y alta confiabilidad

3. Describa brevemente el proceso de diseño y desarrollo de productos de sistemas integrados.

Respuesta: ① En el proceso de desarrollo de sistemas integrados, el método general es programar primero en el entorno de desarrollo integrado en una PC de propósito general; Código binario; ③ Luego, a través del sistema de depuración integrado para depurar correctamente; ④ Finalmente, descargue el programa a la plataforma de destino para ejecutar

2 componentes principales de integrado:

La composición del sistema integrado consiste principalmente en: sistema de hardware integrado, sistema de software integrado.

(1) Los sistemas de hardware integrado incluyen principalmente: procesadores integrados, memorias, circuitos analógicos, fuentes de alimentación, controladores de interfaz, conectores, etc.

1) Procesador integrado: Es el núcleo del sistema integrado. La mayor diferencia entre los procesadores integrados y los procesadores de uso general es que la mayoría de las CPU integradas funcionan en sistemas diseñados para grupos de usuarios específicos.

2) Memoria: memoria estática volátil (RAM, SRAM), memoria dinámica (DRAM, SDRAM), memoria no volátil (ROM, EPROM, EEPROM, Flash).

3) Dispositivos de hardware periféricos integrados: puerto serie, interfaz Ethernet, USB, interfaz de audio, pantalla LCD, cámara, etc.

(2) Los sistemas de software integrados incluyen principalmente: controladores subyacentes, sistemas operativos y aplicaciones

1) Controlador inferior: realice la interfaz entre el hardware y el software del sistema integrado.

2) Sistema operativo: OS para abreviar. Realice la programación de procesos y el procesamiento de tareas del sistema. El núcleo del sistema operativo es el procesador integrado.

3) Programa de aplicación: la aplicación que realiza la función del sistema.

3 Clasificación de los Sistemas Embebidos:

Uno: estructura del cuerpo de Harvard: el espacio de datos de la estructura de Harvard y el espacio de direcciones están separados.

1. Arquitectura Von Neumann: La característica más notable de las computadoras tipo Von Neumann (VON-NEUMANN) es que las instrucciones y los datos comparten memoria, bus de instrucciones y bus de datos. La búsqueda de instrucciones y la búsqueda de datos se realizan a través del mismo bus. La CPU no puede obtener instrucciones y obtener datos al mismo tiempo.

Diferencia : la principal diferencia entre los dos es si el espacio de datos y el espacio del programa están separados. El método de edición del espacio de direcciones es diferente. Haval es un bus de datos, y las direcciones de instrucciones están separadas. Se recorren por separado y se accede a ellas de forma independiente, lo que mejora la velocidad de funcionamiento del procesador (CPU). Es conveniente tomar la dirección y tomar los datos.

En la serie de procesadores ARM, ARM7 adopta la arquitectura VON NEUMANN, mientras que ARM9 y superiores adoptan la arquitectura HARVARD.

RISC es un acrónimo de Computadora con conjunto de instrucciones reducido, y su objetivo es diseñar un conjunto de instrucciones simple y efectivo que se pueda ejecutar en un solo ciclo a una frecuencia de reloj alta. El núcleo ARM adopta la arquitectura RISC, por lo que tiene las características estructurales de RISC:

Tiene una gran cantidad de registros de propósito general;

Estructuras únicas de carga/guardado (carga-almacenamiento) (ldr, str, ldm, stm);

Modos de direccionamiento simples;

Formato de instrucción uniforme y de longitud fija.

Clasificación de los núcleos de sistemas integrados :

1 Arquitectura ARM y características técnicas de implementación VLSI La combinación de hardware simple y conjuntos de instrucciones es la base del pensamiento RISC; pero aún conserva algunas características CISC y, por lo tanto, logra una densidad de código más alta que RISC puro, lo que hace que ARM obtenga su eficiencia energética y un área central pequeña. Tecnología de implementación VLSI

concepto de brazo (cuatro) 1 nombre de la empresa 2. arquitectura basada en arquitectura rise 3 producto de brazo ip core 4 dispositivo producido por brazo

Capítulo 2 Núcleo de la serie ARM

2.1 ¿Qué es ARM? ARM es una empresa que solo hace diseño de CPU y opera vendiendo IP, es un fabricante de semiconductores, ARM también es una arquitectura, un sistema estructural, y lo último es la arquitectura ARM Cortex.

Características de la arquitectura ARM

Tamaño pequeño, bajo consumo de energía, bajo costo, alto rendimiento

Admite conjuntos de instrucciones duales Thumb (16 bits) y ARM (32 bits), con buena compatibilidad.

Se utiliza una gran cantidad de registros, la velocidad de ejecución es rápida y las operaciones de datos se completan en registros.

Un total de 37 registros con 7 modos de procesamiento diferentes

El modo de direccionamiento es flexible y simple, la longitud de la instrucción es fija y la eficiencia de ejecución es alta.

2.2 Conjunto de instrucciones ARM y conjunto de instrucciones Thumb

Características del conjunto de instrucciones ARM:

Es un conjunto de instrucciones reducido típico. Ancho de instrucción fijo de 32 bits, la estructura de instrucción es muy regular, conveniente para el almacenamiento, transmisión, análisis y ejecución. El conjunto de instrucciones Thumb se ha agregado desde ARM7.

Características del conjunto de instrucciones de pulgar:

El conjunto de instrucciones Thumb es un conjunto de instrucciones reducido de 16 bits. Solo puede completar la mayoría de las funciones del ARM estándar de 32 bits, pero su diseño de 16 bits puede reducir efectivamente el tamaño del código binario, reducir los requisitos de capacidad de memoria y reducir los costos. Pero hace que toda la CPU esté más cargada, especialmente los desarrolladores deben manejar con cuidado el cambio de los dos tipos de modos de conjunto de instrucciones.

Corter: A : Introducción al procesador CortexTM-A8: este procesador es el primer procesador de nivel de aplicación basado en la arquitectura ARMv7 desarrollado por ARM. Se caracteriza por el uso de tecnologías que pueden aumentar la densidad del código y mejorar el rendimiento, y puede admitir multimedia y Tecnología NEONTM para capacidades de procesamiento de señales y tecnología Jazelle@RTC que admite compilación anticipada y justo a tiempo de Java y otros lenguajes de código de texto. Muchas tecnologías avanzadas lo hacen adecuado para varios campos de aplicaciones de alto nivel, como los electrodomésticos y las industrias electrónicas.

R : Introducción al procesador CortexTM-R4: este procesador es el primer procesador integrado avanzado basado en la arquitectura ARMv7, y su objetivo principal son los sistemas de aplicaciones integradas avanzadas de gran volumen, como discos duros, impresoras de inyección de tinta y sistemas de seguridad para automóviles, etc.

Introducción al procesador CortexTM-R4F : este procesador agrega tecnología de corrección de código de error (ECC), unidad de punto flotante (FPU) y capacidades de configuración integradas aDMA sobre la base del procesador CortexTM-R4, que mejora la protección de la memoria de las celdas del procesador, cachés, memoria estrechamente acoplada, acceso DMA y capacidades de depuración.

M : Introducción al procesador CortexTM-M3: este procesador es el primer procesador basado en la arquitectura ARMv7-M. Adopta el método de ejecución de instrucciones Thumb2 puras y tiene una potencia informática extremadamente alta y capacidad de respuesta a interrupciones. Cortex-M3 se utiliza principalmente en aplicaciones integradas que son sensibles al consumo de energía y al costo, como sistemas de carrocería de automóviles, sistemas de control industrial y redes inalámbricas. El microcontrolador ARM más barato basado en este núcleo actualmente se vende por $1.

El segundo capítulo corter-M3 modo de trabajo y estado de trabajo :

Modo de trabajo: 1 Modo de procesamiento: excepción, interrupción. Solo hay un código y permiso de ejecución.

Modo de 2 hilos: modo de ejecución normal. Los permisos de código y ejecución tienen niveles privilegiados y no privilegiados, predeterminado: modo de subproceso privilegiado

Dos tipos de punteros de pila y registros son diferentes FSP\PSP

Modo de subproceso: proceso de pila FSP\PSP

Modo de procesamiento: Pila principal PSP

 

Estado de funcionamiento: estado de 1 pulgar, estado de ejecución normal, estado de depuración de 2 apagados

cuantos registros hay en total

(1) Grupo de registro de propósito general (16): 

 

(2) Registros de funciones especiales:

① Grupo de registro de estado del programa (PSR o xPSR):

El registro de estado del programa se divide en tres registros de subestado (registro tres en uno):

Programa de aplicación PSR (APSR), número de interrupción PSR (IPSR), ejecución PSR (EPSR)

¿Por qué es necesario el Registro de Estatus Ejecutivo EPSR?

Las instrucciones LDM, STM y If-then son instrucciones de ciclos múltiples. Si ocurre una excepción durante la ejecución de las instrucciones de ciclos múltiples anteriores, el procesador detendrá temporalmente la operación de las instrucciones anteriores e ingresará una excepción. En este momento, el el sitio necesita ser protegido.

②Grupo de registro de máscara de interrupción (PRIMASK, FAULTMASK, BASEPRI):

Se utiliza para controlar la habilitación y deshabilitación de excepciones, el acceso solo se permite en el nivel privilegiado

③Registro de control (CONTROL):

Se utiliza para la selección de modo privilegiado y la selección de puntero de pila

8. Arquitectura del procesador Cortex-M3

Procesador jerárquico que integra el núcleo y los periféricos del sistema avanzado

Núcleo Cortex-M3: arquitectura Harvard, tubería de tres etapas con función de predicción de bifurcación, conjunto de instrucciones ThumbR-2 y conjunto de instrucciones Thumb tradicional, ALU con división de hardware y multiplicación de ciclo de señal única.

Procesador Cortex-M3: núcleo Cortex-M3, controlador de interrupción configurable, matriz de bus, componentes de depuración avanzada MPU y ETM opcionales

Características del conjunto de instrucciones Thumb2:

Thumb2 logra un equilibrio entre los dos primeros y tiene las ventajas de ambos. Cuando una operación se puede completar con una instrucción de 32 bits, utiliza una instrucción de 32 bits para acelerar la operación, y cuando una operación solo necesita una Instrucciones de 16 bits Cuando se completa una instrucción de bits, se utiliza una instrucción de 16 bits para ahorrar espacio de almacenamiento.

La matriz de bus se utiliza para conectar el procesador y la interfaz de depuración con el bus externo. La matriz de bus está conectada a los siguientes buses externos:

El bus I-Code, que se utiliza para obtener instrucciones y vectores del espacio del código, es un bus AHB-Lite de 32 bits.

El bus D-Code, que se utiliza para la carga/almacenamiento de datos y el acceso de depuración al espacio del código, es un bus AHB-Lite de 32 bits.

El bus del sistema, que se utiliza para realizar búsquedas y vectores de instrucciones, carga/almacenamiento de datos y acceso de depuración al espacio del sistema, es un bus AHB-Lite de 32 bits.

El bus PPB (bus periférico privado externo), que se utiliza para la carga/almacenamiento de datos y el acceso de depuración al espacio PPB, es un bus APB de 32 bits (v3.0).

La matriz de bus también controla los siguientes aspectos : 1 acceso no alineado. La matriz de bus convierte los accesos al procesador no alineados en accesos alineados. 2 Operación de banda de bits de banda de bits. La matriz de bus traduce accesos de alias de banda de bits en accesos a regiones de banda de bits. 3 amortiguadores. La matriz de bus contiene un búfer de escritura de entrada única que aísla el núcleo del procesador de la latencia del bus.

formato de memoria little-endian alta amplificación

El Cortex-M3 generalmente accede al código en formato little-endian, que es el formato de memoria predeterminado para los procesadores ARM.

El área que admite operaciones de banda de bits es el área de banda de bits .

El área de alias de banda de bits sirve al área de banda de bits, y las operaciones en el área de alias de banda de bits eventualmente se reflejarán en el área de banda de bits.Cuando operamos el área de alias de banda de bits, es equivalente a operar la dirección de la banda de bits área.

¿Por qué utilizar operaciones de banda de bits? Una es por el acceso rápido y la otra por la seguridad.

La estructura central de Cortex-M3:

Es un núcleo de procesador de 32 bits, adopta la estructura de Harvard, tiene un bus de instrucciones y un bus de datos independientes, se puede acceder en paralelo y las direcciones se asignan y direccionan de manera uniforme. Utiliza una canalización de 3 etapas : buscar, decodificar y ejecutar

     Durante el funcionamiento normal, se ejecuta una instrucción mientras se decodifica la siguiente (segunda) instrucción y se recupera una tercera instrucción de la memoria.

 

 

La única forma de pasar del nivel de usuario al nivel privilegiado es a través de excepciones

Prioridad de excepción:

El software tiene prioridad sobre el hardware

Rol de prioridad preventiva: interrumpir el anidamiento

Diagrama de bloques de recursos internos

 

 

Capítulo 3 Sistema de reloj

3 modos de bajo consumo de energía: 1 en espera mínimo 2 parada 3 dormir

Nota: Los pasos generales para configurar el reloj: ① habilitar (incluido el no anulado) ② esperar a que esté listo ③ cambiar al reloj de destino (el valor predeterminado es HSI)

Reloj del sistema:

Describa brevemente los tipos de relojes STM32.

Respuesta: STM32 proporciona tres fuentes de reloj diferentes, todas las cuales se pueden usar para impulsar el reloj del sistema SYSCLK. Estas tres fuentes de reloj son respectivamente

1 reloj oscilador HSI: la señal de reloj HSI es generada por el oscilador RC interno de 8 MHz , que se puede usar como reloj del sistema directamente o como entrada PLL después de dividir por 2. El oscilador HSI RC puede proporcionar el reloj del sistema sin ningún componente externo. Su tiempo de inicio es más corto que el oscilador de cristal HSE. Sin embargo, su precisión de frecuencia de reloj es baja incluso después de la calibración .

 2 Reloj oscilador HSE: resonador externo de cristal/cerámica HSE de alta precisión. Reloj externo de usuario HSE:

 3 Reloj PLL: si necesita usar la interfaz USB en la aplicación, el PLL debe configurarse para generar un reloj de 48 o 72 MHz para proporcionar un reloj USBCLK de 48 MHz.

Reloj externo: reloj LSE El cristal LSE es un resonador cerámico o de cristal externo de baja velocidad de 32,768 kHz. Proporciona una fuente de reloj precisa y de baja potencia para un reloj en tiempo real u otras funciones de temporización. El cristal LSE está habilitado y deshabilitado por el bit LSEON en el Registro de control de dominio de respaldo (RCC_BDCR).

Reloj interno: Reloj LSI El LSI RC actúa como una fuente de reloj de bajo consumo que puede seguir funcionando en los modos de apagado y espera, cronometrando las unidades independientes de vigilancia y activación automática . La frecuencia del reloj LSI es de unos 40 kHz (entre 30 kHz y 60 kHz). El LSI RC se puede habilitar o deshabilitar mediante el bit LSION en el registro de control/estado (RCC_CSR).

Tres reinicios:

1 Restablecimiento del sistema 2 Restablecimiento de encendido 3 Restablecimiento del área de respaldo

Capítulo 4: Reglas de nomenclatura de las funciones de la biblioteca de control

sin variable de cadena

Capítulo 5: Ocho modos de trabajo de GPIO: entrada flotante ─ entrada pull-up ─ entrada pull-down ─ entrada analógica ─ salida de drenaje abierto ─ salida push-pull ─ función de multiplexación push-pull ─ función de multiplexación de drenaje abierto. cuatro entradas cuatro salidas

22. ¿Cuáles son los modos de configuración de GPIO de STM32? ¿Cómo configurar el modo de configuración? 8 tipos

1. Entrada analógica GPIO_Mode_AIN 2. Entrada flotante GPIO_Mode_IN_FLOATING 3. Entrada desplegable GPIO_Mode_IPD

4. Entrada pull-up GPIO_Mode_IPU 5. Salida de drenaje abierto GPIO_Mode_Out_OD 6. Salida push-pull GPIO_Mode_Out_PP

7. Salida de drenaje abierto multiplexada GPIO_Mode_AF_OD 8. Salida push-pull multiplexada GPIO_Mode_AF_PP

Funciones de siete registros GPIO: Registro bajo de configuración de 1 puerto (GPIOx_CRL) (x=A..E). Registro alto de configuración de 2 puertos (GPIOx_CRH) (x=A..E). Registro de datos de entrada de 3 puertos (GPIOx_IDR) (x=A..E). Registro de datos de salida de 4 puertos (GPIOx_ODR) (x=A..E). 5 Bit de puerto establecer/borrar registro (GPIOx_BSRR) (x=A..E). Registro de borrado de bits de 6 puertos (GPIOx_BRR) (x=A..E). Registro de bloqueo de configuración de 7 puertos (GPIOx_LCKR) (x=A..E)

Estos siete requieren accesos por suscripción que no permiten accesos byte por byte.

Capítulo 7 Puerto serie

Trama de datos de comunicación en serie asíncrona: cuatro partes de la estructura de la trama: bit de inicio, bit de paridad de bits de datos, bit de parada

 

 

Tasa de bits = tasa de baudios × dígitos binarios correspondientes a un solo estado de modulación

Si está utilizando una tasa de baudios de 9600, la tasa de bits del puerto serie es

9600 bps × 1 bit = 9600 bps

Enviar en modo consulta, recibir interrupción

capitulo ocho:

Describa brevemente las características funcionales de TIM en STM32. STM32 proporciona temporizador de control avanzado TIM1/8, temporizador general TIM2~5, temporizador básico TIM6/7. Estos temporizadores están compuestos por contadores de recarga automática de 16 bits controlados por un preescalador programable. Todos pueden hacer algunos tiempos básicos y también pueden hacer salida PWM o captura de entrada. Además, el temporizador de control avanzado tiene funciones de entrada de freno, salida complementaria y contador de repeticiones, y el temporizador básico tiene la función de activar el circuito de sincronización DAC.

Tipos de temporizadores:  hay 11 temporizadores en STM32, que incluyen 2 temporizadores de control avanzado 18, 4 temporizadores ordinarios 2345 y 2 temporizadores básicos 67, así como 2 temporizadores de vigilancia y 1 sistema tick Timer SysTick. Todas las resoluciones de conteo de 16 bits pueden generar DMA. Coeficiente de preescalador 1~65535. El tipo de conteo del temporizador:

Temporizador básico: solo temporización

Temporizador de control avanzado, temporizador general: 1 temporización arriba/abajo (temporizador de alineación central) 2 arriba, 3 abajo;

Temporizador de control avanzado, temporizador de propósito general: cuatro canales más: captura/compara el canal 4

Temporizador de control avanzado: con salida complementaria

6. El contador de 16 bits del temporizador de uso general TIM STM32 puede funcionar de tres maneras, a saber, modo de conteo ascendente, modo de conteo regresivo y modo de conteo ascendente y descendente.

Cálculo del tiempo de cronometraje

1. PSC = 72-1, frecuencia del temporizador = 72M/(PSC+1)=1MHZ

2. ARR = 1000-1, contando de 0 a 999, contando 1000 veces

3. Periodo de interrupción T = 1000 *1/1000000 = 1mS

5. El NVIC de STM32 administra las interrupciones, incluidas las excepciones del núcleo Cortex-M3. Está estrechamente conectado a la interfaz del núcleo del procesador ARM, que puede realizar el procesamiento de interrupciones  retrasadas   y manejar de manera efectiva   las interrupciones posteriores   .

Capítulo 10 Principio de funcionamiento de ADC

El ADC de 12 bits es un convertidor analógico a digital de aproximación sucesiva. 12 dígitos binarios, precisión y resolución. 2,4 ~ 3,6 V

Modo de funcionamiento: el reloj de entrada del ADC no debe exceder los 14MHz

Características principales del ADC: ● Resolución de 12 bits ● Interrupción al final de la conversión, inyección al final de la conversión y eventos de vigilancia analógica ● Modos de conversión simple y continuo ● Modo de escaneo automático del canal 0 al canal n ● Autocalibración ● En banda Alineación de datos con consistencia de datos integrados ● El intervalo de muestreo se puede programar individualmente por canal ● Opción de disparo externo para conversiones regulares e inyectadas ● Modo de ráfaga ● Modo dual (dispositivos con 2 o más ADC) ● Tiempo de conversión de ADC: ─ STM32F103xx mejorado Tipo de productos: 1 μs cuando el reloj es de 56 MHz (1,17 μs cuando el reloj es de 72 MHz) ● Requisitos de fuente de alimentación de ADC: 2,4 V a 3,6 V ● Rango de entrada de ADC: VREF- ≤ VIN ≤ VREF+ ● Las solicitudes de DMA se generan durante la conversión de canal regular.

Hay 16 canales multiplex. Las transformaciones se pueden organizar en dos grupos: grupos de reglas y grupos de inyección. Una serie de conversiones en cualquier orden en cualquier cantidad de canales constituye una conversión agrupada. escaneo de paquetes

●El grupo de reglas consta de hasta 16 conversiones (16 canales). Los canales regulares y su orden de conversión se seleccionan en los registros ADC_SQRx. El número total de conversiones en el grupo de reglas debe escribirse en los bits L[3:0] del registro ADC_SQR1.  

● Los grupos de inyección constan de hasta 4 transiciones. Los canales inyectados y su orden de conversión se seleccionan en el registro ADC_JSQR. El número total de conversiones inyectadas en el grupo debe escribirse en los bits L[1:0] del registro ADC_JSQR.

Modo de conversión: 1 modo de conversión simple 2 modo de conversión continua 3 conversión intermitente (adecuada para conversión de secuencia corta) 4 conversión de escaneo

Cada ADC tiene 18 canales, incluidos 16 canales externos, 2 canales internos, un sensor de temperatura interno y un canal de fuente de voltaje de referencia interna

Admite métodos alineados a la izquierda o a la derecha e inyecta la posición de calibración

Supongo que te gusta

Origin blog.csdn.net/weixin_56316833/article/details/131117711
Recomendado
Clasificación