Conventional Alarm Clock
Conventional Alarm Clock
Behavioral Description:
Conventional Alarm Clock
flowchart LR
A[Wait 1s]
B["seconds = seconds + 1"]
C{seconds ≥ 59?}
C1["seconds = 0"]
D["minutes = minutes + 1"]
E{minutes ≥ 59?}
E1["minutes = 0"]
F["hours = hours + 1"]
G{hours ≥ 23?}
G1["hours = 0"]
A --> B
B --> C
C -->|No| A
C -->|Yes| C1
C1 --> D
D --> E
E -->|No| A
E -->|Yes| E1
E1 --> F
F --> G
G -->|No| A
G -->|Yes| G1
G1 --> A
class B,C1,D,E1,F,G1 smallerText
classDef smallerText font-size:5px
Conventional Alarm Clock
flowchart LR
A[Wait 1s]
A1[BUZZ = 0]
B{minutes == alarm_minutes?}
C{hours == alarm_hours?}
D{ALARM_EN == 0?}
E[BUZZ = 1]
A --> B
B -->|Yes| C
B -->|No| A1
C --> |Yes| D
C --> |No| A1
D -->|Yes| E
D -->|No| A1
E --> A
A1 --> A
Conventional Alarm Clock
flowchart LR
A{SETUP_TIME == 1?}
A1{SETUP_ALARM == 1?}
A2{SETUP_ALARM == 1?}
B{MIN_ADV ⎽⎽/⎺⎺ ?}
B1{MIN_ADV ⎽⎽/⎺⎺ ?}
C["minutes = minutes + 1"]
C1["alarm_minutes = alarm_minutes + 1"]
D{HR_ADV ⎽⎽/⎺⎺ ?}
D1{HR_ADV ⎽⎽/⎺⎺ ?}
E["hours = hours + 1"]
E1["alarm_hours = alarm_hours + 1"]
A -->|No| A1
A -->|Yes| A2
subgraph alarm [setting alarm]
A1 -->|Yes| B1 & D1
A1 -->|No| G["Do Nothing"]
B1 --> C1
D1 --> E1
end
subgraph time [setting time]
A2 -->|No| B & D
A2 -->|Yes| F["Not possible"]
B -->|No| C
D -->|No| E
end
time & alarm -->|After Operation| A
French Republican Alarm Clock
French Republican Alarm Clock
French Republican Alarm Clock
Behavioral Description
Implementation of a Clock
French Republican Calendar
French Republican Calendar
Behavioral Description
French Republican Calendar
Handling complementary days
year mod 4 = 3
French Republican Calendar
Hint