InicioCiencia EducacionTe enseño a configurar la placa Nucleo64 STM32F446RE(certif

Te enseño a configurar la placa Nucleo64 STM32F446RE(certif

Ciencia Educacion10/16/2018



Hola taringueros hoy veremos como configurar la placa Nucleo 64 STM32F446RET6 con el ide de arduino, probaremos tres sensores para verificar su correcto funcionamiento. Vamos ha usar un un sensor Pir, un sensor de llama, y también un sensor efecto Hall, todo en el mismo código.

Acerce del STM32F446RE
Línea de base de alto rendimiento, núcleo ARM Cortex-M4 con DSP y FPU, 512 Kbytes Flash, CPU de 180 MHz, acelerador ART, QSPI doble

Los dispositivos STM32F446xC / E se basan en el brazo de alto rendimiento ® núcleo RISC Cortex®-M4 de 32 bits que funciona a una frecuencia de hasta 180 MHz. El núcleo Cortex-M4 cuenta con una unidad de punto flotante (FPU) de precisión única que admite todas las instrucciones de procesamiento de datos de precisión simple y los tipos de datos de ARM®. También implementa un conjunto completo de instrucciones DSP y una unidad de protección de memoria (MPU) que mejora la seguridad de la aplicación.

Los dispositivos STM32F446xC / E incorporan memorias incrustadas de alta velocidad (memoria Flash de hasta 512 Kbyte, hasta 128 Kbyte de SRAM), hasta 4 Kbytes de SRAM de respaldo y una amplia gama de E / S mejoradas y periféricos conectados a dos APB Buses, dos buses AHB y una matriz de bus multi-AHB de 32 bits.

Todos los dispositivos ofrecen tres ADC de 12 bits, dos DAC, un RTC de baja potencia, doce temporizadores de propósito general de 16 bits que incluyen dos temporizadores PWM para control de motores, dos temporizadores de propósito general de 32 bits.

También cuentan con interfaces de comunicación estándar y avanzadas.

Características clave

Núcleo: CPU ARM® Cortex®-M4 de 32 bits con FPU, acelerador adaptable en tiempo real (ART Accelerator ™) que permite la ejecución del estado de espera 0 desde la memoria Fl ash, frecuencia hasta 180 MHz, MPU, 225 DMIPS / 1.25 DMIPS / MHz (Dhrystone 2.1), e instrucciones DSP
Recuerdos
512 kB de memoria flash
128 KB de SRAM
Controlador de memoria externo flexible con bus de datos de hasta 16 bits: SRAM, PSRAM, SDRAM / LPSDR SDRAM, memorias Flash NOR / NAND
Interfaz Quad SPI de modo dual
Interfaz LCD paralela, modos 8080/6800
Gestión del reloj, reinicio y suministro.
Suministro de aplicaciones de 1.7 V a 3.6 V y E / S
POR, PDR, PVD y BOR
Oscilador de cristal de 4 a 26 MHz
Control interno de fábrica de 16 MHz (1% de precisión)
Oscilador de 32 kHz para RTC con calibración
RC interno de 32 kHz con calibracion
Baja potencia
Modos Sleep, Stop y Standby.
Suministro V BAT para RTC, registros de respaldo de 20 × 32 bits + SRAM de respaldo opcional de 4 KB
3 × 12 bits, 2.4 MSPS ADC: hasta 24 canales y 7.2 MSPS en modo de triple entrelazado
Convertidores D / A 2 × 12 bits
DMA de propósito general: controlador DMA de 16 secuencias con FIFO y soporte de ráfaga
Hasta 17 temporizadores: 2x watchdog, 1x SysTick timer y hasta doce temporizadores de 16 bits y dos de 32 bits hasta 180 MHz, cada uno con hasta 4 IC / OC / PWM o contador de impulsos
Modo de depuración
Interfaces SWD y JTAG
Cortex®-M4 Trace Macrocell ™
Hasta 114 puertos de E / S con capacidad de interrupción
Hasta 111 I / Os rápidos hasta 90 MHz
Hasta 112 5 I / Os tolerantes a V
Hasta 20 interfaces de comunicación.
SPDIF-Rx
Hasta 4 × I 2 interfaces C (SMBus / PMBus)
Hasta 4 USARTs / 2 UARTs (11.25 Mbit / s, interfaz ISO7816, LIN, IrDA, control de módem)
Hasta 4 SPIs (45 Mbits / s), 3 con I 2 S muxed para una precisión de clase de audio a través de PLL de audio interno o reloj externo
2 x SAI (interfaz de audio en serie)
2 × CAN (2.0B activo)
Interfaz SDIO
Control de electrónica de consumo (CEC) I / F
Conectividad avanzada
Dispositivo USB 2.0 de velocidad completa / host / controlador OTG con PHY en el chip
Dispositivo USB 2.0 de alta velocidad / velocidad completa / host / controlador OTG con DMA dedicado, PHY de velocidad completa en el chip y ULPI
Riel de alimentación USB dedicado que permite el funcionamiento de PHY en chip en toda la gama de fuentes de alimentación de MCU
Interfaz de cámara paralela de 8 a 14 bits de hasta 54 Mbytes / s
Unidad de cálculo CRC
RTC: precisión subsecundaria, calendario de hardware
ID única de 96 bits

DIAGRAMA DE STM32F446RE

Te enseño a configurar la placa Nucleo64 STM32F446RE(certif

PinOut

nucleo 64

STM32F446RE

Hoja de datos
Descargar –> http://rogerbit.com/wprb/wp-content/uploads/2018/10/stm32f446re.pdf

Para agregar nuestras placas STM32 – nucleo al ide de arduino, tenemos que seguir los siguientes pasos.

Vamos a Archivos – Preferencias – y buscamos al cuadro en “gestor de URL adicionales de tarjetas”.
rogerbit

ide de arduino

Y pegamos la siguiente url

https://raw.githubusercontent.com/stm32duino/BoardManagerFiles/master/STM32/package_stm_index.json

carlosvolt

Nos dirigimos ha herramientas – placa y abrimos Gestor de tarjetas
tutoriales

Y escribimos STM32 CORE y seleccionamos STM32 Cores by st-microeletronics
Te enseño a configurar la placa Nucleo64 STM32F446RE(certif

Click en instalar
nucleo 64

Ahora hay que esperar a que descargue las herramientas, esto va a demorar dependiendo de la velocidad de internet y de tu computadora. STM32F446RE

Vamos otra vez a herramientas – placa y buscamos si aparece las placas stm32 rogerbit

En el administrador de dispositivos, al enchufar nuestra placa, veremos que aparece un nuevo puerto com, y una unidad de disco que son los datos que nos servirán más adelante.
ide de arduino

Volvemos al ide y seleccionamos la placa Nucleo 64.
carlosvolt

En herramientas, nuevamente, vamos a “board part numbre” y elegimos nuestra placa – en mi caso “Nucleo F446RE”
tutoriales

En serial interface dejamos la primera opción


En “USB Interface” que quede en “Ninguno”


En upload method debe quedar en “Mass Store”
STM32F446RE

En “Optimise” no modificamos nada
rogerbit

En “Puerto” elegimos el puerto com que nos apareció nuevo en el administrador de dispositivos.


Ahora ya podemos cargar algún ejemplo para probar


Código Fuente
Con este código fuente vamos a monitorear tres sensores, un sensor Pir, para detectar movimiento, un sensor de llama, en el caso de que se produzca un incendio, y también un sensor efecto Hall o sensor magnético, para detectar la apertura de una puerta o ventana, y de esta forma hacer sistema de seguridad muy simple.

//variables
int tiempo=0;
int val0=0;
int SensorPir = 4;// Pin4 para el sensor PIR
int valorPir = 0;// variable para almacenar el valor del sensor PIR
int valorSensorLlama = 0; // variable para almacenar el valor proveniente del sensor de llama
int sensorHall=9;//Pin 9 para el sensor Hall
int valorHall=0;
int buzzer = 11; // Pin 11 para el buzzer
int Led13=13;//Led onboard
void setup()
{
Serial.begin(9600);//Velocidad del puerto serial
pinMode(buzzer, OUTPUT);//pin 11 donde va el buzzer como salida
pinMode(SensorPir, INPUT);//Pin 4 condigurado como entrada para el sensor pir
pinMode(sensorHall, INPUT);//Pin 9 como entrada
pinMode(Led13, OUTPUT);//Pin 13 como salida led onboard
}
void loop()
{
valorPir = digitalRead(SensorPir); //Leemos el valor que entrega el sensor pir
valorSensorLlama = analogRead(A0);//Leemos el valor que entrega el sensor de llama
valorHall = digitalRead (sensorHall) ; //Leemos el valor del sensor Hall
Serial.print("Pir: "tutoriales;
Serial.println(valorPir);
Serial.print("Llama: "Te enseño a configurar la placa Nucleo64 STM32F446RE(certif;
Serial.println(valorSensorLlama);
Serial.print("Hall: "nucleo 64;
Serial.println(valorHall);
//Comprobamos si el sensor pir entrega un valor alto
if (valorPir == HIGH) {
alarma(25);//Llama a la función "alarma" y le pasa el parametro 25
}
//Comparamos el valor entregado porel sensor de llama si es menor a 500 se cumple la condición
if (valorSensorLlama < 500){
alarma(50);//Activa el buzzer según el parámetro recivido
}
if (valorHall == LOW) //Si el sensor Hall detecta un campo magnético
{
alarma(75);//Activa el buzzer según el parámetro recivido
}
}
void alarma(int tiempo){//Función alarma
//Activa el buzzer
digitalWrite(buzzer, HIGH);
digitalWrite (Led13, HIGH);
delay(tiempo);//Activa el buzzer según el parámetro recivido
//Desactiva el buzzer
digitalWrite(buzzer, LOW);
digitalWrite (Led13, LOW);
delay(tiempo); //Desactiva el buzzer según el parámetro recivido
}


Otros post que te pueden interesar

https://www.taringa.net/posts/ciencia-educacion/20254623/Te-enseno-a-armar-kit-de-bobina-tesla-musical-Certificada.html


Te enseño como hacer un motor casero con un corcho(certific)


Sistema de alerta de incendios forestales gps con sim808


Como hacer una alarma láser casera, muy fácil


Interruptor remoto c/celular sin gastar un sope(certificada)


Hice un robot controlado por wifi y te enseño hacerlo


Hice un detector de fuga de gas con llamador telefónico


Controlá tu casa con mensajes de texto(código fuente inclu.)


Hace que tu nokia 1100 te llame si entran a robar tu casa


STM32F446RE


rogerbit

ide de arduino

La información es de mi autoría

Te dejo mi canal de youtube https://www.youtube.com/user/Carlosvolt/videos
Datos archivados del Taringa! original
195puntos
196visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
3visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

c
carlosvolt🇦🇷
Usuario
Puntos0
Posts55
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.