Upgrade to pico SDK 2.0.0

This commit is contained in:
AlexanderHD27
2024-09-11 23:32:55 +02:00
parent 29af5335f5
commit 0c1b8f4e86
7 changed files with 41 additions and 139 deletions

View File

@@ -50,7 +50,7 @@
"wready" "wready"
], ],
"cmake.sourceDirectory": "/home/alexander/Projects/gobot/motor-control/firmware", "cmake.sourceDirectory": "/home/alexander/Projects/gobot/motor-control/firmware",
"cmake.buildDirectory": "${workspaceFolder}/firmware/build", "cmake.buildDirectory": "${workspaceFolder}/build",
"cmake.configureOnOpen": true, "cmake.configureOnOpen": true,
"files.associations": { "files.associations": {
"timer.h": "c", "timer.h": "c",

View File

@@ -32,8 +32,9 @@
"cwd": "${workspaceRoot}" "cwd": "${workspaceRoot}"
}, },
"group": "test", "group": "test",
"dependsOn": [
"dependsOn": ["CMake: build main"], "CMake: build main"
],
"presentation": { "presentation": {
"echo": true, "echo": true,
"reveal": "always", "reveal": "always",
@@ -43,7 +44,6 @@
"clear": true "clear": true
} }
}, },
{ {
"type": "cmake", "type": "cmake",
"label": "CMake: build usb_test", "label": "CMake: build usb_test",
@@ -75,8 +75,9 @@
"cwd": "${workspaceRoot}" "cwd": "${workspaceRoot}"
}, },
"group": "test", "group": "test",
"dependsOn": [
"dependsOn": ["CMake: build usb_test"], "CMake: build usb_test"
],
"presentation": { "presentation": {
"echo": true, "echo": true,
"reveal": "always", "reveal": "always",
@@ -86,7 +87,6 @@
"clear": true "clear": true
} }
}, },
{ {
"type": "cmake", "type": "cmake",
"label": "CMake: build freeRTOS_test", "label": "CMake: build freeRTOS_test",
@@ -118,8 +118,9 @@
"cwd": "${workspaceRoot}" "cwd": "${workspaceRoot}"
}, },
"group": "test", "group": "test",
"dependsOn": [
"dependsOn": ["CMake: build freeRTOS_test"], "CMake: build freeRTOS_test"
],
"presentation": { "presentation": {
"echo": true, "echo": true,
"reveal": "always", "reveal": "always",
@@ -129,8 +130,6 @@
"clear": true "clear": true
} }
}, },
{ {
"type": "shell", "type": "shell",
"label": "Pico: launch openocd", "label": "Pico: launch openocd",
@@ -161,11 +160,22 @@
"type": "shell", "type": "shell",
"label": "Doxygen: Generate Docs", "label": "Doxygen: Generate Docs",
"command": [ "command": [
"doxygen ./docs/Doxyfile", "doxygen ./docs/Doxyfile"
], ],
"options": { "options": {
"cwd": "${workspaceRoot}" "cwd": "${workspaceRoot}"
} }
},
{
"type": "shell",
"label": "Nuke Build Directory",
"command": [
"rm -rf build"
],
"options": {
"cwd": "${workspaceRoot}"
},
"problemMatcher": []
} }
] ]
} }

View File

@@ -8,8 +8,8 @@ else()
SET(PICO_SDK_PATH "${CMAKE_SOURCE_DIR}/lib/pico-sdk") SET(PICO_SDK_PATH "${CMAKE_SOURCE_DIR}/lib/pico-sdk")
endif() endif()
SET(PICO_TOOLCHAIN_PATH $PICO_SDK_PATH/cmake/preload/toolchains/) #SET(PICO_TOOLCHAIN_PATH "${PICO_SDK_PATH}/cmake/preload/toolchains/")
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "$<1:${CMAKE_BINARY_DIR}/bin>") set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin")
include(${PICO_SDK_PATH}/pico_sdk_init.cmake) include(${PICO_SDK_PATH}/pico_sdk_init.cmake)
@@ -47,12 +47,7 @@ target_include_directories(main PUBLIC
include/ include/
) )
# Add FreeRTOS include(${PROJECT_SOURCE_DIR}/cmake/tmc2209.cmake)
include(freeRTOS.cmake)
target_include_directories(FreeRTOS PUBLIC
${CMAKE_CURRENT_LIST_DIR}
)
# Adding PIO # Adding PIO
#pico_generate_pio_header(main ${CMAKE_CURRENT_LIST_DIR}/src/dac/dac.pio) #pico_generate_pio_header(main ${CMAKE_CURRENT_LIST_DIR}/src/dac/dac.pio)
@@ -61,11 +56,8 @@ target_include_directories(FreeRTOS PUBLIC
target_link_libraries(main target_link_libraries(main
pico_stdlib pico_stdlib
pico_multicore pico_multicore
hardware_pio
hardware_dma tmc2209_driver
hardware_timer
FreeRTOS
EEPROMDriver
) )

View File

@@ -1,100 +0,0 @@
#ifndef FREERTOS_CONFIG_H
#define FREERTOS_CONFIG_H
#define configUSE_PREEMPTION 1
#define configUSE_PORT_OPTIMISED_TASK_SELECTION 0
#define configUSE_TICKLESS_IDLE 0
#define configCPU_CLOCK_HZ 133000000
#define configSYSTICK_CLOCK_HZ 1000000
#define configTICK_RATE_HZ 1000
#define configMAX_PRIORITIES 4
#define configMINIMAL_STACK_SIZE 256
#define configMAX_TASK_NAME_LEN 16
#define configUSE_16_BIT_TICKS 0
#define configIDLE_SHOULD_YIELD 1
#define configUSE_TASK_NOTIFICATIONS 1
#define configTASK_NOTIFICATION_ARRAY_ENTRIES 3
#define configUSE_MUTEXES 0
#define configUSE_RECURSIVE_MUTEXES 0
#define configUSE_COUNTING_SEMAPHORES 1
#define configUSE_ALTERNATIVE_API 0 /* Deprecated! */
#define configQUEUE_REGISTRY_SIZE 10
#define configUSE_QUEUE_SETS 0
#define configUSE_TIME_SLICING 1
#define configUSE_NEWLIB_REENTRANT 0
#define configENABLE_BACKWARD_COMPATIBILITY 0
#define configNUM_THREAD_LOCAL_STORAGE_POINTERS 5
#define configSTACK_DEPTH_TYPE uint16_t
#define configMESSAGE_BUFFER_LENGTH_TYPE size_t
/* Memory allocation related definitions. */
#define configSUPPORT_STATIC_ALLOCATION 0
#define configSUPPORT_DYNAMIC_ALLOCATION 1
#define configTOTAL_HEAP_SIZE 50000
#define configAPPLICATION_ALLOCATED_HEAP 0
/* Hook function related definitions. */
#define configUSE_IDLE_HOOK 0
#define configUSE_TICK_HOOK 0
#define configCHECK_FOR_STACK_OVERFLOW 0
#define configUSE_MALLOC_FAILED_HOOK 0
#define configUSE_DAEMON_TASK_STARTUP_HOOK 0
/* Run time and task stats gathering related definitions. */
#define configGENERATE_RUN_TIME_STATS 0
#define configUSE_TRACE_FACILITY 0
#define configUSE_STATS_FORMATTING_FUNCTIONS 0
/* Co-routine related definitions. */
#define configUSE_CO_ROUTINES 0
#define configMAX_CO_ROUTINE_PRIORITIES 1
/* Software timer related definitions. */
#define configUSE_TIMERS 1
#define configTIMER_TASK_PRIORITY 3
#define configTIMER_QUEUE_LENGTH 10
#define configTIMER_TASK_STACK_DEPTH configMINIMAL_STACK_SIZE
/* Interrupt nesting behaviour configuration. */
#define configKERNEL_INTERRUPT_PRIORITY [dependent of processor]
#define configMAX_SYSCALL_INTERRUPT_PRIORITY [dependent on processor and application]
#define configMAX_API_CALL_INTERRUPT_PRIORITY [dependent on processor and application]
/* Define to trap errors during development. */
//#define configASSERT( ( x ) ) assert()
/* FreeRTOS MPU specific definitions. */
#define configINCLUDE_APPLICATION_DEFINED_PRIVILEGED_FUNCTIONS 0
#define configTOTAL_MPU_REGIONS 8 /* Default value. */
#define configTEX_S_C_B_FLASH 0x07UL /* Default value. */
#define configTEX_S_C_B_SRAM 0x07UL /* Default value. */
#define configENFORCE_SYSTEM_CALLS_FROM_KERNEL_ONLY 1
/* Optional functions - most linkers will remove unused functions anyway. */
#define INCLUDE_vTaskPrioritySet 1
#define INCLUDE_uxTaskPriorityGet 1
#define INCLUDE_vTaskDelete 1
#define INCLUDE_vTaskSuspend 1
#define INCLUDE_xResumeFromISR 1
#define INCLUDE_vTaskDelayUntil 1
#define INCLUDE_vTaskDelay 1
#define INCLUDE_xTaskGetSchedulerState 1
#define INCLUDE_xTaskGetCurrentTaskHandle 1
#define INCLUDE_uxTaskGetStackHighWaterMark 0
#define INCLUDE_xTaskGetIdleTaskHandle 0
#define INCLUDE_eTaskGetState 0
#define INCLUDE_xEventGroupSetBitFromISR 1
#define INCLUDE_xTimerPendFunctionCall 0
#define INCLUDE_xTaskAbortDelay 0
#define INCLUDE_xTaskGetHandle 0
#define INCLUDE_xTaskResumeFromISR 1
#define vPortSVCHandler isr_svcall
#define xPortPendSVHandler isr_pendsv
#define xPortSysTickHandler isr_systick
/* A header file that defines trace macro can be included here. */
#endif /* FREERTOS_CONFIG_H */

View File

@@ -0,0 +1,13 @@
add_library(tmc2209_driver STATIC
src/tmc2209/uart_interface.cpp
)
target_include_directories(tmc2209_driver PRIVATE
include/tmc2209/
)
target_link_libraries(tmc2209_driver
pico_stdlib
hardware_uart
)

View File

@@ -1,13 +0,0 @@
SET(FreeRTOS_DIR ${CMAKE_CURRENT_LIST_DIR}/lib/FreeRTOS-Kernel)
FILE(GLOB FreeRTOS_src ${FreeRTOS_DIR}/*.c)
add_library(FreeRTOS STATIC
${FreeRTOS_src}
${FreeRTOS_DIR}/portable/GCC/ARM_CM0/port.c
${FreeRTOS_DIR}/portable/MemMang/heap_4.c
)
target_include_directories(FreeRTOS PUBLIC
${FreeRTOS_DIR}/portable/GCC/ARM_CM0/
${FreeRTOS_DIR}/include/
)

Submodule motor-control/firmware/lib/pico-sdk updated: efe2103f9b...beb6f990a6