Чот накодил

This commit is contained in:
2025-12-11 21:14:27 +00:00
parent c71c7da2ff
commit abd77a885a
34 changed files with 2615 additions and 47 deletions
+18 -44
View File
@@ -1,54 +1,28 @@
#include <stdio.h>
#include <FreeRTOS.h>
#include <task.h>
#include <queue.h>
#include "FreeRTOS.h"
#include "task.h"
#include "pico/stdlib.h"
#include "pico/binary_info.h"
#include "boards/pico.h"
volatile QueueHandle_t queue = NULL;
const TickType_t ms_delay = 500 / portTICK_PERIOD_MS;
TaskHandle_t pico_task_handle = NULL;
void led_task_pico(void *unused_arg)
{
// Store the Pico LED state
uint8_t pico_led_state = 0;
// Configure the Pico's on-board LED
gpio_init(PICO_DEFAULT_LED_PIN);
gpio_set_dir(PICO_DEFAULT_LED_PIN, GPIO_OUT);
while (true)
{
pico_led_state = 1;
gpio_put(PICO_DEFAULT_LED_PIN, pico_led_state);
xQueueSendToBack(queue, &pico_led_state, 0);
vTaskDelay(ms_delay);
pico_led_state = 0;
gpio_put(PICO_DEFAULT_LED_PIN, pico_led_state);
xQueueSendToBack(queue, &pico_led_state, 0);
vTaskDelay(ms_delay);
}
}
#include "Led.h"
#include "SerialTx.h"
#include "SerialRx.h"
#include "Display.h"
int main()
{
stdio_init_all();
sleep_ms(2000);
printf("We have started\n");
BaseType_t pico_status = xTaskCreate(led_task_pico,
"PICO_LED_TASK",
128,
NULL,
1,
&pico_task_handle);
queue = xQueueCreate(4, sizeof(uint8_t));
if (pico_status == pdPASS)
{
vTaskStartScheduler();
}
Led led;
SerialTx serial_tx;
SerialRx serial_rx;
Display display;
led.start();
serial_tx.start();
serial_rx.start();
display.start();
vTaskStartScheduler();
while (true)
{