Universal LED Blink
The on-board LED on the original Pico corresponds with GPIO pin 25, but this was changed to be connected to one of the GPIO pins from the wireless chip (CYW43439) on the Pico W. The examples used in the Raspberry Pi Pico Tips and Tricks book use code suitable for the Pico W and to adapt any of that code for the Pico we need to change ‘LED’ for 25 in the following code example;
from
machine
import
Pin
led
=
Pin
(
'LED'
,
Pin
.
OUT
)
led
.
value
(
1
)
However, as responsible engineers with an eye to the foibles of uncertain hardware changes, it might be useful if we had some code that would allow us to illuminate the LED independent of which board we were using. Well good news, we can utilise the board
class of functions that will allow us to determine just which type of Pico we are using and this will let us set the LED pin appropriately. The following code demonstrates this;
from
machine
import
Pin
from
board
import
Board
import
time
BOARD_TYPE
=
Board
()
.
type
print
(
"Board type: "
+
BOARD_TYPE
)
if
BOARD_TYPE
==
Board
.
BoardType
.
PICO_W
:
led
=
Pin
(
"LED"
,
Pin
.
OUT
)
elif
BOARD_TYPE
==
Board
.
BoardType
.
PICO
:
led
=
Pin
(
25
,
Pin
.
OUT
)
while
(
True
):
led
.
on
()
time
.
sleep
(
.2
)
led
.
off
()
time
.
sleep
(
.2
)
Don't forget, if you're looking for the book 'Raspberry Pi Pico Tips and Tricks'. You can download it for free (or donate if you wish) from here.
No comments:
Post a Comment