0
0
Embedded Cprogramming~10 mins

Writing HIGH and LOW to output pins in Embedded C - Step-by-Step Execution

Choose your learning style9 modes available
Concept Flow - Writing HIGH and LOW to output pins
Setup pin as OUTPUT
Write HIGH to pin
Pin voltage set to HIGH
Write LOW to pin
Pin voltage set to LOW
End
First, configure the pin as an output. Then write HIGH or LOW to set the pin voltage accordingly.
Execution Sample
Embedded C
pinMode(13, OUTPUT);
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
Set pin 13 as output, turn it ON (HIGH), wait 1 second, then turn it OFF (LOW).
Execution Table
StepActionPin ModePin StateOutput Voltage
1pinMode(13, OUTPUT)OUTPUTLOW (default)0V (LOW)
2digitalWrite(13, HIGH)OUTPUTHIGH5V (HIGH)
3delay(1000)OUTPUTHIGH5V (HIGH)
4digitalWrite(13, LOW)OUTPUTLOW0V (LOW)
5End of codeOUTPUTLOW0V (LOW)
💡 Code ends after setting pin 13 LOW.
Variable Tracker
VariableStartAfter Step 1After Step 2After Step 3After Step 4Final
Pin 13 ModeINPUT (default)OUTPUTOUTPUTOUTPUTOUTPUTOUTPUT
Pin 13 StateLOW (default)LOWHIGHHIGHLOWLOW
Pin 13 Voltage0V (LOW)0V (LOW)5V (HIGH)5V (HIGH)0V (LOW)0V (LOW)
Key Moments - 3 Insights
Why do we need to set the pin mode to OUTPUT before writing HIGH or LOW?
Because the pin must be configured as OUTPUT to control voltage levels; otherwise, writing HIGH or LOW won't change the pin voltage (see Step 1 in execution_table).
Does writing HIGH immediately change the pin voltage?
Yes, writing HIGH sets the pin voltage to 5V right away (Step 2 shows pin state changes to HIGH and voltage to 5V).
What happens if we write LOW after writing HIGH?
The pin voltage changes back to 0V (LOW), turning the output off (Step 4 shows this change).
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, what is the pin state after Step 2?
ALOW
BHIGH
CINPUT
DUNKNOWN
💡 Hint
Check the 'Pin State' column at Step 2 in the execution_table.
At which step does the pin voltage become 0V after being HIGH?
AStep 1
BStep 2
CStep 4
DStep 3
💡 Hint
Look at the 'Pin 13 Voltage' in variable_tracker after Step 4.
If we skip setting pinMode to OUTPUT, what will happen when writing HIGH?
APin voltage stays LOW
BPin voltage changes to HIGH
CPin mode automatically changes to OUTPUT
DProgram crashes
💡 Hint
Refer to key_moments about why pinMode must be set before writing.
Concept Snapshot
pinMode(pin, OUTPUT) sets pin as output
Use digitalWrite(pin, HIGH) to set voltage HIGH (5V)
Use digitalWrite(pin, LOW) to set voltage LOW (0V)
Must set pinMode before writing
Writing changes pin voltage immediately
Delay can keep state before changing
Full Transcript
This example shows how to control an output pin in embedded C. First, the pin is set as OUTPUT using pinMode. Then digitalWrite sets the pin voltage HIGH or LOW. The execution table tracks each step: setting mode, writing HIGH, waiting, then writing LOW. Variables track pin mode, state, and voltage changes. Key moments clarify why setting pin mode is necessary and how writing changes voltage immediately. The visual quiz tests understanding of pin state and voltage changes at each step. The snapshot summarizes the commands and rules for writing HIGH and LOW to output pins.