当前位置:   article > 正文

如何重置树莓派 Pico(重置外围设备失败的解决方案)_raspberry pico清空

raspberry pico清空

有时候需要重置树莓派 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 reset
    reset_block(RESETS_RESET_PWM_BITS);

    // And bring it out
    unreset_block_wait(RESETS_RESET_PWM_BITS);

    // Put the PWM and RTC block into reset
    reset_block(RESETS_RESET_PWM_BITS | RESETS_RESET_RTC_BITS);

    // Wait for both to come out of reset
    unreset_block_wait(RESETS_RESET_PWM_BITS | RESETS_RESET_RTC_BITS);

    return 0;
}
/// \end::hello_reset[]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

然后是最重要的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)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

此外记得导入pico-sdk中的pico_sdk_import.cmake文件到这个目录下,然后创建空目录build

$ cp $PICO_SDK_PATH/external/pico_sdk_import.cmake .
$ mkdir build
$ cd build
  • 1
  • 2
  • 3

这时就可以进行构建了:

$ cmake ..
$ make -j4
  • 1
  • 2

构建完成之后将hello_reset.uf2拖到 USB 模式下的 Pico 就行了。这时候你试一试就会发现 LED 不闪了。

如果你对构建有疑问还请移步我的另外一篇博客:《如何使用Mac终端给树莓派pico构建C/C++程序进行开发,以及遇到各种问题该怎么处理,不使用任何IDE或编辑器(例如VS Code)》

希望能帮到有需要的人~

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/468094
推荐阅读
相关标签
  

闽ICP备14008679号