STM32 W5500 Learn Autosar
It’s a communication and control gateway based on the STM32F103C8T6.
Project Overview
This project is designed for learning or implementing AUTOSAR (Automotive Open System Architecture) using the STM32F103 microcontroller.
It integrates various peripherals including CAN, Ethernet (W5500), UART, I2C, ADC, Timer, and Watchdog, enabling stable and flexible data communication between field devices and upper-level systems.
Autosar?
AUTOSAR (Automotive Open System Architecture) is an international standard architecture that defines a standardized software framework for automotive electronic control units (ECUs).
이 프로젝트는 STM32F103을 사용해 자동차 ECU용 운영체제 표준인 AUTOSAR를 학습 또는 구현을 목적으로 한 프로젝트입니다.
CAN, Ethernet(W5500), UART, I2C, ADC, 타이머, 워치독 등 다양한 주변장치를 통합하여, 현장 장치(Field Device)와 상위 시스템 간의 안정적이고 유연한 데이터 통신을 제공합니다.Autosar?
자동차용 전자제어장치(ECU, Electronic Control Unit) 소프트웨어의 표준화된 구조를 정의한 국제 표준 아키텍처입니다.
Purpose
The system functions as a Field Controller or Gateway Controller, serving as a communication bridge between different industrial networks.
Main Functions:
- Transmit data collected from the CAN bus to upper systems via Ethernet (UDP) or UART(Modbus)
- Deliver external commands from Ethernet or UART to field nodes (CAN devices) for control actions
이 시스템은 현장 제어기(Field Controller) 또는 **통신 게이트웨이(Gateway Controller)**로 동작하며, 서로 다른 산업 네트워크 간의 데이터 교환을 중계하는 역할을 수행합니다.
주요 기능:
- CAN 버스에서 수집한 데이터를 Ethernet(UDP) 또는 UART(Modbus)를 통해 상위 시스템으로 전송
- Ethernet 또는 UART를 통해 수신된 외부 명령을 **현장 노드(CAN 장치)**로 전달하여 제어 명령 수행
System Architecture
The software architecture is inspired by AUTOSAR principles, emphasizing:
- Layered design for scalability and maintainability
- Modularization of functional blocks (communication, control, system services)
- Communication abstraction for flexible protocol integration
소프트웨어 구조는 AUTOSAR 아키텍처에 따라 설계되었습니다.
핵심 설계 개념은 다음과 같습니다:
- 계층화(Layered Design) : 유지보수성과 확장성을 고려한 구조적 설계
- 모듈화(Modularization) : 통신, 제어, 시스템 서비스 기능의 독립적 구성
- 통신 추상화(Communication Abstraction) : 다양한 프로토콜을 유연하게 통합할 수 있는 구조
Key Features
| Feature | Description |
|---|---|
| CAN Communication | Operates at 500 kbps, supports filter configuration and interrupt-based message reception
|
| Ethernet (W5500) | Connected via SPI, supports UDP protocols
|
| UART Communication | Supports Modbus RTU, firmware update, debugging, and logging
|
| I2C Communication | Interfaces with RTC modules (e.g., DS3231/DS1307) for time management
|
| ADC | Single-channel analog input for voltage, temperature, and sensor monitoring
|
| Timer Framework | Manages periodic tasks (1 ms / 10 ms / 1 s) using
|
| Watchdog | Detects system faults and performs automatic reset (1-second timeout)
|
| Firmware Update | Firmware replacement managed via
|
| LED Heartbeat | 1 Hz toggle signal for system health monitoring
|
Significance
This project demonstrates a lightweight implementation of AUTOSAR architectural principles on a small MCU (STM32F103C8T6).
It provides an excellent foundation for industrial and automotive embedded system developers to learn and experiment with standardized, layered software architectures.
Typical Applications:
- CAN ↔ Ethernet (Modbus) Gateway
- Field Data Logger
- AUTOSAR-based ECU Learning Project
- Multi-protocol Communication Controller on Small MCUs
이 프로젝트는 AUTOSAR의 구조적 설계를 소형 MCU(STM32F103C8T6) 에 경량화해서 구현한 사례로,
산업용 및 자동차용 임베디드 시스템 개발자에게 표준화된 계층 구조 설계 방법론을 학습하고 실험할 수 있는 좋은 기반이 됩니다.응용 예시:
- CAN ↔ Ethernet or UART 게이트웨이
- 현장 데이터 수집기(Field Data Logger)
- 자동차 ECU 학습용 AUTOSAR 구조 실습 프로젝트
- 소형 MCU 기반 멀티프로토콜 통신 컨트롤러 개발

