Embedded · 1 phút đọc
Xin chào: blog về Embedded, AI và Robotics
Bài mở đầu, giới thiệu blog và thử các tính năng: code, công thức, sơ đồ.
🌐 Read in EnglishChào bạn! Đây là nơi mình ghi chép lại các dự án và kiến thức về embedded, AI và robotics.
Highlight code C
#include "stm32f4xx_hal.h"
int main(void) {
HAL_Init();
__HAL_RCC_GPIOA_CLK_ENABLE();
GPIO_InitTypeDef gpio = { .Pin = GPIO_PIN_5, .Mode = GPIO_MODE_OUTPUT_PP };
HAL_GPIO_Init(GPIOA, &gpio);
while (1) {
HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_5);
HAL_Delay(500);
}
}
Công thức toán
Bộ điều khiển PID rời rạc:
Công thức inline: (định lý Nyquist).
Sơ đồ
flowchart LR
S[Cảm biến IMU] -->|I2C| M[MCU]
M -->|UART| P[Raspberry Pi]
P --> AI[Mô hình AI]
AI -->|lệnh| M
M --> D[Động cơ]
Python
import numpy as np
def moving_average(x: np.ndarray, n: int = 5) -> np.ndarray:
return np.convolve(x, np.ones(n) / n, mode="valid")