## πŸ“ Project Name **DBC Converter** ![Project Logo](icon/icon.png) ## πŸ“‘Table of Contents - [πŸ“‚ Introduction](#introduction) - [🎭 Features](#features) - [πŸ’» Code Structure](#code-structure) - [🎒 Development](#development) * [Prerequisites](#prerequisites) - [βš™ How to use](#How-to-use) ## πŸ“‚Introduction `DBC Converter`λŠ” DBC (Database CAN) νŒŒμΌμ„ C μ½”λ“œλ‘œ λ³€ν™˜ν•˜λŠ” λ„κ΅¬μž…λ‹ˆλ‹€. 이 λ„κ΅¬λŠ” μ°¨λŸ‰ λ„€νŠΈμ›Œν¬μ—μ„œ μ‚¬μš©λ˜λŠ” CAN (Controller Area Network) λ©”μ‹œμ§€μ™€ μ‹ ν˜Έλ₯Ό μ •μ˜ν•˜λŠ” DBC νŒŒμΌμ„ νŒŒμ‹±ν•˜μ—¬, 이λ₯Ό C μ½”λ“œλ‘œ λ³€ν™˜ν•˜μ—¬ μž„λ² λ””λ“œ μ‹œμŠ€ν…œμ—μ„œ μ‚¬μš©ν•  수 μžˆλ„λ‘ ν•©λ‹ˆλ‹€. ## 🎭Features - **DBC 파일 νŒŒμ‹±**: DBC νŒŒμΌμ„ 읽고 νŒŒμ‹±ν•˜μ—¬ CAN λ©”μ‹œμ§€μ™€ μ‹ ν˜Έ 정보λ₯Ό μΆ”μΆœν•©λ‹ˆλ‹€. - **C μ½”λ“œ 생성**: νŒŒμ‹±λœ 정보λ₯Ό 기반으둜 CAN λ©”μ‹œμ§€μ™€ μ‹ ν˜Έλ₯Ό μ²˜λ¦¬ν•˜λŠ” C μ½”λ“œλ₯Ό μƒμ„±ν•©λ‹ˆλ‹€. - **GUI 지원**: μ‚¬μš©μžκ°€ μ‰½κ²Œ νŒŒμΌμ„ μΆ”κ°€, μ‚­μ œ 및 경둜λ₯Ό μ„€μ •ν•  수 μžˆλŠ” κ·Έλž˜ν”½ μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€(GUI)λ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€. - **λ³€ν™˜ μƒνƒœ ν‘œμ‹œ**: 파일 λ³€ν™˜ μƒνƒœ 및 μ§„ν–‰λ₯ μ„ μ‹€μ‹œκ°„μœΌλ‘œ ν‘œμ‹œν•©λ‹ˆλ‹€. - **채널 선택 및 μ„€μ •**: λ‹€μ–‘ν•œ CAN 채널을 μ„ νƒν•˜κ³  μ„€μ •ν•  수 μžˆλŠ” κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€. ## πŸ’»Code Structure ```bash README.md DBC_Converter β”œβ”€β”€ DBC_Converter.py β”œβ”€β”€ DBC_Converter_Data_Parsing.py β”œβ”€β”€ DBC_Converter_Common.py β”œβ”€β”€ DBC_Converter_TX.py └── DBC_Converter_RX.py icon └── icon.png img β”œβ”€β”€ add_file.png β”œβ”€β”€ add_folder.png β”œβ”€β”€ converter.png β”œβ”€β”€ delete_all.png β”œβ”€β”€ delete_description.png └── delete_file.png ``` ## 🎒Development ### Prerequisites - **Python 3.6+**: Python μ„€μΉ˜κ°€ ν•„μš”ν•©λ‹ˆλ‹€. - **PyQt5**: GUIλ₯Ό μœ„ν•œ PyQt5 λΌμ΄λΈŒλŸ¬λ¦¬κ°€ ν•„μš”ν•©λ‹ˆλ‹€. - **Git**: 버전 관리λ₯Ό μœ„ν•œ Git이 ν•„μš”ν•©λ‹ˆλ‹€. ## βš™How to Use 1. **파일 μΆ”κ°€** - GUIμ—μ„œ "파일 μΆ”κ°€" λ²„νŠΌμ„ ν΄λ¦­ν•˜μ—¬ λ³€ν™˜ν•  DBC νŒŒμΌμ„ μΆ”κ°€ν•©λ‹ˆλ‹€. 2. **파일 μ‚­μ œ** - GUIμ—μ„œ "파일 μ‚­μ œ" λ²„νŠΌμ„ ν΄λ¦­ν•˜μ—¬ μ„ νƒν•œ DBC νŒŒμΌμ„ μ‚­μ œν•©λ‹ˆλ‹€. 3. **μ €μž₯ 경둜 μ„€μ •** - GUIμ—μ„œ "경둜 μ„€μ •" λ²„νŠΌμ„ ν΄λ¦­ν•˜μ—¬ λ³€ν™˜λœ C νŒŒμΌμ„ μ €μž₯ν•  경둜λ₯Ό μ„€μ •ν•©λ‹ˆλ‹€. 4. **채널 선택 및 μ„€μ •** - GUIμ—μ„œ λ‹€μ–‘ν•œ CAN 채널을 μ„ νƒν•˜κ³  μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 5. **λ³€ν™˜ μ‹œμž‘** - GUIμ—μ„œ "λ³€ν™˜ μ‹œμž‘" λ²„νŠΌμ„ ν΄λ¦­ν•˜μ—¬ DBC νŒŒμΌμ„ C 파일둜 λ³€ν™˜ν•©λ‹ˆλ‹€. 6. **λ³€ν™˜ μƒνƒœ 확인** - GUIμ—μ„œ λ³€ν™˜ μƒνƒœ 및 μ§„ν–‰λ₯ μ„ μ‹€μ‹œκ°„μœΌλ‘œ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.