Skip to content

Commit 12ab0ad

Browse files
committed
refactor: enhance debug log
1 parent e8c8886 commit 12ab0ad

File tree

15 files changed

+55
-67
lines changed

15 files changed

+55
-67
lines changed

.clang-format

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
BasedOnStyle: Google
22
IndentWidth: 4
3-
ColumnLimit: 100
3+
ColumnLimit: 200
44
AllowShortFunctionsOnASingleLine: Empty
55
BreakBeforeBraces: Attach

CONTRIBUTING.md

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
- **スペース**: `if`, `while`, `for` のキーワードの直後にスペースを入れる
2323
- OK: `if (condition)`
2424
- NG: `if(condition)`
25-
- **行の長さ**: 最大 100 文字
25+
- **行の長さ**: 最大 200 文字
2626

2727
## 3. ハードウェア定義 (Hardware Definitions)
2828

@@ -43,15 +43,4 @@
4343
## 5. フォーマッタ (Formatter)
4444
4545
本プロジェクトでは `clang-format` を使用します。設定ファイル (`.clang-format`) がリポジトリに含まれています。
46-
47-
### 設定内容
48-
49-
```yaml
50-
BasedOnStyle: Google
51-
IndentWidth: 4
52-
ColumnLimit: 100
53-
AllowShortFunctionsOnASingleLine: Empty
54-
BreakBeforeBraces: Attach
55-
```
56-
5746
コミット前にフォーマットを適用することを推奨します。

src/Config.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@
55
#define DEBUG_MODE
66

77
namespace Config {
8+
namespace Debug {
9+
constexpr bool ENABLE_BUTTON_LOG = true;
10+
} // namespace Debug
11+
812
namespace Pin {
913
// ボタン
1014
constexpr int BTN_A = PIN_D00;

src/drivers/Button.cpp

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,34 @@
11
#include "Button.h"
22

3+
#include "../system/Logger.h"
4+
35
Button::Button(int pin) : pinNumber(pin) {}
46

57
void Button::begin() {
68
pinMode(pinNumber, INPUT_PULLUP);
79
stablePinLevel = digitalRead(pinNumber);
810
lastPinLevel = stablePinLevel;
911
lastDebounceTime = millis();
12+
LOG_DEBUG_IF(Config::Debug::ENABLE_BUTTON_LOG, "Button initialized on pin %d. Initial state: %s", pinNumber, stablePinLevel == HIGH ? "HIGH" : "LOW");
1013
}
1114

1215
bool Button::isPressed() {
1316
bool rawPinLevel = digitalRead(pinNumber);
1417
bool pressed = false;
1518

16-
if (rawPinLevel != lastPinLevel) resetDebounceTimer();
19+
if (rawPinLevel != lastPinLevel) {
20+
resetDebounceTimer();
21+
LOG_DEBUG_IF(Config::Debug::ENABLE_BUTTON_LOG, "Pin %d raw change: %d -> %d", pinNumber, lastPinLevel, rawPinLevel);
22+
}
1723

1824
if (hasDebounceTimePassed()) {
1925
if (stablePinLevel != rawPinLevel) {
20-
if (rawPinLevel == LOW) pressed = true;
26+
if (rawPinLevel == LOW) {
27+
pressed = true;
28+
LOG_DEBUG_IF(Config::Debug::ENABLE_BUTTON_LOG, "Button on pin %d PRESSED (stable)", pinNumber);
29+
} else {
30+
LOG_DEBUG_IF(Config::Debug::ENABLE_BUTTON_LOG, "Button on pin %d RELEASED (stable)", pinNumber);
31+
}
2132
stablePinLevel = rawPinLevel;
2233
}
2334
}

src/drivers/Button.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#pragma once
22

3-
#include "Arduino.h"
43
#include "../Config.h"
4+
#include "Arduino.h"
55

66
class Button {
77
private:

src/drivers/GPSWrapper.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ void GPSWrapper::update() {
1919

2020
float GPSWrapper::getSpeedKmh() const {
2121
if (!(navData.posFixMode == Fix2D || navData.posFixMode == Fix3D)) return 0.0f;
22-
if (navData.velocity < 0.1f) return 0.0f; // 測位誤差対策
22+
if (navData.velocity < 0.1f) return 0.0f; // 測位誤差対策
2323
return navData.velocity * 3.6f;
2424
}
2525

src/drivers/OLEDDriver.cpp

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ bool OLEDDriver::begin() {
1919
display.display();
2020
display.setTextColor(SSD1306_WHITE);
2121
display.setTextSize(1);
22-
22+
2323
currentValue = "";
2424
return true;
2525
}
@@ -39,7 +39,7 @@ void OLEDDriver::drawTitle(const String& title) {
3939

4040
void OLEDDriver::drawUnit(const String& unit) {
4141
if (unit.length() <= 0) return;
42-
42+
4343
int16_t x1, y1;
4444
uint16_t w, h;
4545
display.setTextSize(1);
@@ -50,8 +50,10 @@ void OLEDDriver::drawUnit(const String& unit) {
5050

5151
void OLEDDriver::drawValue(const String& value) {
5252
int len = value.length();
53-
if (len < 5) display.setTextSize(3);
54-
else display.setTextSize(2);
53+
if (len < 5)
54+
display.setTextSize(3);
55+
else
56+
display.setTextSize(2);
5557

5658
int16_t x1, y1;
5759
uint16_t w, h;

src/system/CycleComputer.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,7 @@ void CycleComputer::handleInput() {
5050
void CycleComputer::updateDisplay() {
5151
unsigned long currentMillis = millis();
5252

53-
if (!forceUpdate && (currentMillis - lastDisplayUpdate < Config::DISPLAY_UPDATE_INTERVAL_MS))
54-
return;
53+
if (!forceUpdate && (currentMillis - lastDisplayUpdate < Config::DISPLAY_UPDATE_INTERVAL_MS)) return;
5554

5655
lastDisplayUpdate = currentMillis;
5756
forceUpdate = false;

src/system/Logger.h

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,7 @@
44

55
#include "../Config.h"
66

7-
enum class LogLevel {
8-
DEBUG,
9-
INFO,
10-
WARN,
11-
ERROR,
12-
NONE
13-
};
7+
enum class LogLevel { DEBUG, INFO, WARN, ERROR, NONE };
148

159
extern LogLevel currentLogLevel;
1610

@@ -24,13 +18,20 @@ class Logger {
2418
};
2519

2620
#ifdef DEBUG_MODE
27-
#define LOG_DEBUG(fmt, ...) Logger::log(LogLevel::DEBUG, __FILE__, __LINE__, __func__, fmt, ##__VA_ARGS__)
28-
#define LOG_INFO(fmt, ...) Logger::log(LogLevel::INFO, __FILE__, __LINE__, __func__, fmt, ##__VA_ARGS__)
29-
#define LOG_WARN(fmt, ...) Logger::log(LogLevel::WARN, __FILE__, __LINE__, __func__, fmt, ##__VA_ARGS__)
30-
#define LOG_ERROR(fmt, ...) Logger::log(LogLevel::ERROR, __FILE__, __LINE__, __func__, fmt, ##__VA_ARGS__)
21+
#define LOG_DEBUG(fmt, ...) Logger::log(LogLevel::DEBUG, __FILE__, __LINE__, __func__, fmt, ##__VA_ARGS__)
22+
#define LOG_INFO(fmt, ...) Logger::log(LogLevel::INFO, __FILE__, __LINE__, __func__, fmt, ##__VA_ARGS__)
23+
#define LOG_WARN(fmt, ...) Logger::log(LogLevel::WARN, __FILE__, __LINE__, __func__, fmt, ##__VA_ARGS__)
24+
#define LOG_ERROR(fmt, ...) Logger::log(LogLevel::ERROR, __FILE__, __LINE__, __func__, fmt, ##__VA_ARGS__)
25+
26+
// Conditional Logging
27+
#define LOG_DEBUG_IF(cond, fmt, ...) \
28+
do { \
29+
if (cond) LOG_DEBUG(fmt, ##__VA_ARGS__); \
30+
} while (0)
3131
#else
32-
#define LOG_DEBUG(fmt, ...) ((void)0)
33-
#define LOG_INFO(fmt, ...) ((void)0)
34-
#define LOG_WARN(fmt, ...) ((void)0)
35-
#define LOG_ERROR(fmt, ...) ((void)0)
32+
#define LOG_DEBUG(fmt, ...) ((void)0)
33+
#define LOG_INFO(fmt, ...) ((void)0)
34+
#define LOG_WARN(fmt, ...) ((void)0)
35+
#define LOG_ERROR(fmt, ...) ((void)0)
36+
#define LOG_DEBUG_IF(cond, fmt, ...) ((void)0)
3637
#endif

src/system/ModeManager.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
#include "ModeManager.h"
22

33
void ModeManager::nextMode() {
4-
currentMode = static_cast<Mode>((static_cast<int>(currentMode) + 1) %
5-
static_cast<int>(Mode::TOTAL_MODES));
4+
currentMode = static_cast<Mode>((static_cast<int>(currentMode) + 1) % static_cast<int>(Mode::TOTAL_MODES));
65
}
76

87
Mode ModeManager::getMode() {

0 commit comments

Comments
 (0)