42 lines
1.5 KiB
Plaintext
42 lines
1.5 KiB
Plaintext
Title: Button demo
|
|
|
|
Description:
|
|
|
|
A simple button demo showcasing the use of GPIO input with interrupts.
|
|
|
|
The demo assumes that a push button is connected to one of GPIO
|
|
lines. The sample code is configured to work on Nucleo-64 F103RB
|
|
board with button B1 providing the input.
|
|
|
|
After startup, the program looks up a predefined GPIO device (GPIOC),
|
|
and configures pin 13 in input mode, enabling interrupt generation on
|
|
falling edge. During each iteration of the main loop, the state of
|
|
GPIO line is monitored and printed to the serial console. When the
|
|
input button gets pressed, the interrupt handler will print an
|
|
information about this event along with its timestamp.
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
Building and Running Project:
|
|
|
|
It can be built for a nucleo_f103rb board as follows:
|
|
|
|
make
|
|
|
|
The code may need adaption before running the code on another board.
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
Troubleshooting:
|
|
|
|
Problems caused by out-dated project information can be addressed by
|
|
issuing one of the following commands then rebuilding the project:
|
|
|
|
make clean # discard results of previous builds
|
|
# but keep existing configuration info
|
|
or
|
|
make pristine # discard results of previous builds
|
|
# and restore pre-defined configuration info
|
|
|
|
--------------------------------------------------------------------------------
|