MindMap Gallery STM32Linux system QT architecture
This is a mind map about the QT architecture of the STM32Linux system. The main contents include: hardware resources and configuration, software resources and development environment, cloud server construction steps, risk analysis and avoidance measures.
Edited at 2025-02-27 12:44:33Rumi: 10 dimensions of spiritual awakening. When you stop looking for yourself, you will find the entire universe because what you are looking for is also looking for you. Anything you do persevere every day can open a door to the depths of your spirit. In silence, I slipped into the secret realm, and I enjoyed everything to observe the magic around me, and didn't make any noise. Why do you like to crawl when you are born with wings? The soul has its own ears and can hear things that the mind cannot understand. Seek inward for the answer to everything, everything in the universe is in you. Lovers do not end up meeting somewhere, and there is no parting in this world. A wound is where light enters your heart.
Chronic heart failure is not just a problem of the speed of heart rate! It is caused by the decrease in myocardial contraction and diastolic function, which leads to insufficient cardiac output, which in turn causes congestion in the pulmonary circulation and congestion in the systemic circulation. From causes, inducement to compensation mechanisms, the pathophysiological processes of heart failure are complex and diverse. By controlling edema, reducing the heart's front and afterload, improving cardiac comfort function, and preventing and treating basic causes, we can effectively respond to this challenge. Only by understanding the mechanisms and clinical manifestations of heart failure and mastering prevention and treatment strategies can we better protect heart health.
Ischemia-reperfusion injury is a phenomenon that cellular function and metabolic disorders and structural damage will worsen after organs or tissues restore blood supply. Its main mechanisms include increased free radical generation, calcium overload, and the role of microvascular and leukocytes. The heart and brain are common damaged organs, manifested as changes in myocardial metabolism and ultrastructural changes, decreased cardiac function, etc. Prevention and control measures include removing free radicals, reducing calcium overload, improving metabolism and controlling reperfusion conditions, such as low sodium, low temperature, low pressure, etc. Understanding these mechanisms can help develop effective treatment options and alleviate ischemic injury.
Rumi: 10 dimensions of spiritual awakening. When you stop looking for yourself, you will find the entire universe because what you are looking for is also looking for you. Anything you do persevere every day can open a door to the depths of your spirit. In silence, I slipped into the secret realm, and I enjoyed everything to observe the magic around me, and didn't make any noise. Why do you like to crawl when you are born with wings? The soul has its own ears and can hear things that the mind cannot understand. Seek inward for the answer to everything, everything in the universe is in you. Lovers do not end up meeting somewhere, and there is no parting in this world. A wound is where light enters your heart.
Chronic heart failure is not just a problem of the speed of heart rate! It is caused by the decrease in myocardial contraction and diastolic function, which leads to insufficient cardiac output, which in turn causes congestion in the pulmonary circulation and congestion in the systemic circulation. From causes, inducement to compensation mechanisms, the pathophysiological processes of heart failure are complex and diverse. By controlling edema, reducing the heart's front and afterload, improving cardiac comfort function, and preventing and treating basic causes, we can effectively respond to this challenge. Only by understanding the mechanisms and clinical manifestations of heart failure and mastering prevention and treatment strategies can we better protect heart health.
Ischemia-reperfusion injury is a phenomenon that cellular function and metabolic disorders and structural damage will worsen after organs or tissues restore blood supply. Its main mechanisms include increased free radical generation, calcium overload, and the role of microvascular and leukocytes. The heart and brain are common damaged organs, manifested as changes in myocardial metabolism and ultrastructural changes, decreased cardiac function, etc. Prevention and control measures include removing free radicals, reducing calcium overload, improving metabolism and controlling reperfusion conditions, such as low sodium, low temperature, low pressure, etc. Understanding these mechanisms can help develop effective treatment options and alleviate ischemic injury.
STM32 Linux system QT architecture
Hardware resources and configuration
STM32 microcontroller
Model: STM32MP1 series (Dual-core Cortex-A7 Cortex-M4)
A core (Linux system): run QT applications and network communication
M-core (real-time task): handles ADC sampling, GPIO control
Peripheral configuration:
ADC channel: 15 channels (M core control, communication with A core through OpenAMP)
GPIO input: 19 channels (M verification time detection)
GPIO output: 16 channels (M core control, A core can issue instructions)
Communication interface:
Ethernet/USB (A core network communication)
UART/SPI (M core interacts with sensors)
Memory requirements:
Core A: ≥512MB RAM (Linux system QT application)
M core: ≥128KB RAM (real-time task)
Storage requirements:
eMMC/SD card: ≥4GB (storage Linux system images, QT applications, logs)
LCD display
Driver support: Linux Framebuffer or DRM driver
Resolution: ≥800×480 (adapted to QT interface)
Touch function: Capacitor/resistive (requires support for Linux kernel driver)
Communication module
Network solution: Ethernet (built-in PHY chip) Wi-Fi module (USB interface, such as RTL8812AU) Protocol support: MQTT/HTTP (direct implementation of A core)
Sensor module
M-core control: Read sensor data through SPI/I2C Data Sharing: Pass to core A using shared memory or RPMSG (OpenAMP)
Power Management
Dual-core power supply separation: Core A: 1.2V core voltage M core: 3.3V peripheral voltage Low-power design: Dynamically adjust the A-core frequency (CPUFreq)
Software resources and development environment
Embedded Linux system
System construction:
Customize Linux images with Buildroot or Yocto
Kernel configuration: enable LCD driver, touch driver, Ethernet/Wi-Fi support
Key Components:
Device Tree (DTS): Define hardware peripherals (ADC, GPIO, LCD)
OpenAMP framework: realize communication between A core and M core (RPMSG)
Human-computer interactive interface (HMI)
Solution A: LVGL (STM32 local)
Development Tools: LVGL Simulator (PC-side prototyping)
Functional implementation:
Real-time data display (16 outputs)
Log scrolling display (support time filtering)
Touch interaction (calibration, button response)
Solution B: QT host computer (PC/cloud)
Development Tools: QT Creator (C/QML)
Communication method: Serial port/TCP (interaction with STM32)
Cloud development
Database: MySQL
Web Services: Nginx Flask/Django
Front-end: Vue.js/React
M Verification Time Task (based on STM32CubeMX)
Development Tools: STM32CubeIDE (Configure M-core peripherals)
Functional implementation:
ADC multi-channel sampling (DMA timer triggered)
GPIO state machine (switch quantity detection and output control)
Communication with A core: transfer data through RPMSG
QT application development
Development environment:
QT Creator (Linux version)
Cross-compilation toolchain (gcc-arm-linux-gnueabihf)
Display driver:
Configure QT to use Framebuffer (-platform linuxfb)
Touch calibration: Optimize touch response using tslib library
Functional implementation:
Real-time data display (read M-core data through shared memory)
Local log storage (SQLite database or file system)
Network communication: MQTT client uploads data to the cloud
Cloud server construction steps
Server selection
Cloud service provider: AWS/Aliyun (recommended ECS instance, minimum configuration of 1 core and 2GB)
Self-built server: Ubuntu 22.04 LTS (long-term support version)
Database deployment
Install MySQL: apt install mysql-server
Security configuration: Set root password, disable remote root login
Table creation script: Define device data table and user permission table
Web Service Deployment
Install Nginx: apt install nginx
Configure SSL certificate (HTTPS encryption, recommend Let’s Encrypt)
Backend API:
Use Flask to write a data receiving interface (POST /api/sensor-data)
Data verification: Anti-SQL injection and frequency limit mechanism (prevent DDoS)
Front-end deployment
Static resource hosting: Nginx directly serves HTML/CSS/JS
Dynamic interaction: Axios calls backend API (CORS needs to be configured for cross-domain issues)
Risk analysis and avoidance measures
Hardware selection risk
Risk: Insufficient STM32MP1 resources lead to QT stuttering
avoid: Choose a high-performance model of MP1 (such as STM32MP157C-DK2) Limit the complexity of QT interface (avoid 3D rendering)
Linux system stability
Risk: Kernel crash or driver incompatible
avoid: Use the official Linux LTS version (such as 5.10.y) Verify LCD and touch drivers in advance
Dual-core communication delay
Risk: The A-core and M-core data are not synchronized in time
avoid: Using shared memory Interrupt notification mechanism Optimize OpenAMP message queue size
QT performance bottleneck
Risk: Low interface refresh rate or slow touch response
avoid: Enable hardware acceleration options for QT (such as EGLFS) Use QML instead of QWidget to improve rendering efficiency
Storage Reliability
Risk: EMMC/SD card frequently reads and writes, resulting in damage
avoid: Enable EXT4 log file system Log storage is replaced with RAM Disk timed backup