做智能网站系统下载软件,免费网站建设合同范本,苏州头条新闻,微网站开发要多少钱有时候需要重置树莓派 Pico#xff0c;一种方法是按住 Pico 上的“BOOTSEL”按钮再插入 USB#xff1b;或者用按钮连接“RUN”和“GND”针脚#xff0c;然后同时按下这个按钮和“BOOTSEL”按钮。这样就可以进入 USB 模式#xff0c;这样从一定程度进行了重置。
但是这种方…有时候需要重置树莓派 Pico一种方法是按住 Pico 上的“BOOTSEL”按钮再插入 USB或者用按钮连接“RUN”和“GND”针脚然后同时按下这个按钮和“BOOTSEL”按钮。这样就可以进入 USB 模式这样从一定程度进行了重置。
但是这种方法不一定适用所有情况一些外围设备可能用这种办法不能重置成功。比如说有时候放入让 LED 闪烁的blink.uf2之后上面的办法可能有时没有让 LED 不闪了。
如果出现了这种外围设备无法重置的情况那么就编译一个重置程序放入 Pico 来进行重置。这个重置程序在官方的 pico-examples 中也有这个例子叫做hello_reset。下面是我将其提炼出来因为原本是没有单独构建这个二进制执行文件的CMakeLists.txt文件。
首先是hello_reset.c的代码
#include stdio.h
#include pico/stdlib.h
#include hardware/resets.h/// \tag::hello_reset[]
int main() {stdio_init_all();printf(Hello, reset!\n);// Put the PWM block into resetreset_block(RESETS_RESET_PWM_BITS);// And bring it outunreset_block_wait(RESETS_RESET_PWM_BITS);// Put the PWM and RTC block into resetreset_block(RESETS_RESET_PWM_BITS | RESETS_RESET_RTC_BITS);// Wait for both to come out of resetunreset_block_wait(RESETS_RESET_PWM_BITS | RESETS_RESET_RTC_BITS);return 0;
}
/// \end::hello_reset[]然后是最重要的CMakeLists.txt如下
cmake_minimum_required(VERSION 3.12)include(pico_sdk_import.cmake)project(hello_reset)pico_sdk_init()add_executable(hello_reset
hello_reset.c
)target_link_libraries(hello_reset pico_stdlib)pico_add_extra_outputs(hello_reset)此外记得导入pico-sdk中的pico_sdk_import.cmake文件到这个目录下然后创建空目录build
$ cp $PICO_SDK_PATH/external/pico_sdk_import.cmake .
$ mkdir build
$ cd build这时就可以进行构建了
$ cmake ..
$ make -j4构建完成之后将hello_reset.uf2拖到 USB 模式下的 Pico 就行了。这时候你试一试就会发现 LED 不闪了。
如果你对构建有疑问还请移步我的另外一篇博客《如何使用Mac终端给树莓派pico构建C/C程序进行开发以及遇到各种问题该怎么处理不使用任何IDE或编辑器例如VS Code》
希望能帮到有需要的人