Testing multicore

This commit is contained in:
Martin Brodbeck 2024-02-14 10:13:50 +01:00
parent 398016e81f
commit 6ea69df2fa
2 changed files with 24 additions and 3 deletions

View file

@ -52,6 +52,7 @@ target_link_libraries(raspi_keyer
hardware_exception hardware_exception
hardware_pwm hardware_pwm
pico_flash pico_flash
pico_multicore
) )
pico_add_extra_outputs(raspi_keyer) pico_add_extra_outputs(raspi_keyer)

View file

@ -1,6 +1,8 @@
#include <stdio.h> #include <stdio.h>
#include "pico/stdlib.h" #include "pico/stdlib.h"
#include "pico/multicore.h"
#include "pico/util/queue.h"
#include "settings.h" #include "settings.h"
#include "keyer.h" #include "keyer.h"
@ -15,6 +17,8 @@ extern const uint LEFT_PADDLE_PIN = 14;
extern const uint RIGHT_PADDLE_PIN = 15; extern const uint RIGHT_PADDLE_PIN = 15;
extern const uint BUZZER_PIN = 13; extern const uint BUZZER_PIN = 13;
queue_t keyerQueue;
void setup() void setup()
{ {
stdio_init_all(); stdio_init_all();
@ -33,6 +37,20 @@ void setup()
sleep_ms(1000); sleep_ms(1000);
} }
void core1_main()
{
Settings settings;
queue_remove_blocking(&keyerQueue, &settings);
Keyer keyer(settings.wpm, settings.mode);
while (true)
{
keyer.run();
}
}
int main() int main()
{ {
timer_hw->dbgpause = 0; // workaround for problem with debug and sleep_ms timer_hw->dbgpause = 0; // workaround for problem with debug and sleep_ms
@ -42,11 +60,13 @@ int main()
Settings settings{read_settings()}; Settings settings{read_settings()};
Keyer keyer(settings.wpm, settings.mode); /*Keyer keyer(settings.wpm, settings.mode);*/
queue_add_blocking(&keyerQueue, &settings);
while (true) while (true)
{ {
keyer.run(); sleep_ms(100);
} }
return 0; return 0;