量子隧道
发表于 2025-1-27 21:25:26
scoopydoo 发表于 2025-1-25 21:02
如果只是下载的话,对于 Pico 来说不需要任何 Link,只要把编译好的 .uf2 文件丢进烧录状态的 Pico 在电 ...
老兄试过把双核都转起来吗?我今天鼓捣了一两个小时,愣是在arduino下没让第二个核run起来。看来明天就要考虑去VSCode下run这个小玩具了。
scoopydoo
发表于 2025-1-28 13:40:44
本帖最后由 scoopydoo 于 2025-1-28 13:43 编辑
量子隧道 发表于 2025-1-27 21:25
老兄试过把双核都转起来吗?我今天鼓捣了一两个小时,愣是在arduino下没让第二个核run起来。看来明天就要 ...
在 VSCode 里面用 Pico-SDK 开发一个简单的双核程序还是很简单的,举个例子吧:
dual-core.c
#include <stdio.h>
#include "pico/stdlib.h"
#include "pico/multicore.h"
uint32_t counter = 0;
void core1_entry()
{
while(1)
{
printf("新年快乐!%d\n", counter++);
sleep_ms(1000);
}
}
int main()
{
stdio_init_all();
multicore_launch_core1(core1_entry);
while(1)
{
printf("恭喜发财!%d\n", counter++);
sleep_ms(1000);
}
}
CMakeList.txt
# Generated Cmake Pico project file
cmake_minimum_required(VERSION 3.13)
set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_STANDARD 17)
# Initialise pico_sdk from installed location
# (note this can come from environment, CMake cache etc)
set(PICO_SDK_PATH "/home/gamalot/pico-sdk")
set(PICO_BOARD pico CACHE STRING "Board type")
# Pull in Raspberry Pi Pico SDK (must be before project)
include(pico_sdk_import.cmake)
if (PICO_SDK_VERSION_STRING VERSION_LESS "1.4.0")
message(FATAL_ERROR "Raspberry Pi Pico SDK version 1.4.0 (or later) required. Your version is ${PICO_SDK_VERSION_STRING}")
endif()
project(dual-core C CXX ASM)
# Initialise the Raspberry Pi Pico SDK
pico_sdk_init()
# Add executable. Default name is the project name, version 0.1
add_executable(dual-core dual-core.c )
pico_set_program_name(dual-core "dual-core")
pico_set_program_version(dual-core "0.1")
pico_enable_stdio_usb(dual-core 1)
pico_enable_stdio_uart(dual-core 0)
# Add the standard library to the build
target_link_libraries(dual-core
pico_stdlib
pico_multicore
)
# Add the standard include files to the build
target_include_directories(dual-core PRIVATE
${CMAKE_CURRENT_LIST_DIR}
${CMAKE_CURRENT_LIST_DIR}/.. # for our common lwipopts or any other standard includes, if required
)
# Add any user requested libraries
target_link_libraries(dual-core
)
pico_add_extra_outputs(dual-core)
跑起来效果是这样婶儿滴 :lol
量子隧道
发表于 2025-1-28 14:23:38
scoopydoo 发表于 2025-1-28 13:40
在 VSCode 里面用 Pico-SDK 开发一个简单的双核程序还是很简单的,举个例子吧:
dual-core.c
谢谢老兄。我今天上午不甘心,求助deepseek,在arduino里搞定了。编了个小程序,是这样婶儿的:
不错,deepseek说的没错,照着一步步做就行了,比我自己上网搜到的好。之前是自己搜,然后照着一步步做,就是不转。
下一步,打算用vscode跑。
我目前唯一的问题,是没有项目。做这些玩意儿,没有正经项目,学过了,run起来了,很可能就放一边了。
量子隧道
发表于 2025-1-28 14:29:19
scoopydoo 发表于 2025-1-28 13:40
在 VSCode 里面用 Pico-SDK 开发一个简单的双核程序还是很简单的,举个例子吧:
dual-core.c
东施效颦一个:lol :
量子隧道
发表于 2025-2-5 20:14:41
这个小芯片真强大,比SIO更厉害的是PIO,把管脚们当做内部(接近硬核)状态机的输入输出口。学好了的话估计在很多场合可以实现CPU+PLD的效果。
scoopydoo
发表于 2025-2-5 20:59:29
量子隧道 发表于 2025-2-5 20:14
这个小芯片真强大,比SIO更厉害的是PIO,把管脚们当做内部(接近硬核)状态机的输入输出口。学好了的话估计 ...
这玩意儿除了没有内置 Flash 其他都挺好的! :lol