Ajout Launch.json + renomme log_usb -> com_usb

This commit is contained in:
Samuel 2025-09-27 10:13:59 +02:00
parent 2723febcf2
commit 402215bc80
7 changed files with 47 additions and 10 deletions

View File

@ -6,6 +6,7 @@
"${workspaceFolder}/build/generated/pico_base", "${workspaceFolder}/build/generated/pico_base",
"${env:PICO_SDK_PATH}/src/**/include", "${env:PICO_SDK_PATH}/src/**/include",
"${env:PICO_SDK_PATH}/lib/**/src", "${env:PICO_SDK_PATH}/lib/**/src",
"${env:PICO_SDK_PATH}/lib/tinyusb/hw",
"${workspaceFolder}/lib/FatFs/source", "${workspaceFolder}/lib/FatFs/source",
"${workspaceFolder}/lib/sd_driver" "${workspaceFolder}/lib/sd_driver"

24
.vscode/launch.json vendored Normal file
View File

@ -0,0 +1,24 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Pico Debug (Cortex-Debug with external OpenOCD)",
"cwd": "${workspaceRoot}",
"executable": "debug/Modele_RPiPico.elf",
"request": "launch",
"type": "cortex-debug",
"servertype": "external",
"gdbTarget": "localhost:3333",
"gdbPath": "gdb-multiarch",
"device": "RP2040",
"svdFile": "${env:PICO_SDK_PATH}/src/rp2040/hardware_regs/RP2040.svd",
"runToEntryPoint": "main",
// Fix for no_flash binaries, where monitor reset halt doesn't do what is expected
// Also works fine for flash binaries
"overrideLaunchCommands": [
"monitor reset init",
"load debug/Modele_RPiPico.elf"
]
},
]
}

View File

@ -22,7 +22,7 @@ target_sources(host_cdc_msc_hid PUBLIC
cdc_app.c cdc_app.c
diskio_USB.c diskio_USB.c
diskio_SDIO.c diskio_SDIO.c
log_usb.c com_usb.c
messagerie.c messagerie.c
lib/FatFs/source/ff.c lib/FatFs/source/ff.c
lib/FatFs/source/ffsystem.c lib/FatFs/source/ffsystem.c

View File

@ -27,7 +27,7 @@
#include "tusb.h" #include "tusb.h"
#include "bsp/board_api.h" #include "bsp/board_api.h"
#include "messagerie.h" #include "messagerie.h"
#include "log_usb.h" #include "com_usb.h"
#include <stdio.h> #include <stdio.h>
volatile bool in_transfert_cb = 0; volatile bool in_transfert_cb = 0;
@ -47,9 +47,9 @@ size_t get_console_inputs(uint8_t* buf, size_t bufsize) {
void traiter_les_messages(uint8_t idx, struct message_t message){ void traiter_les_messages(uint8_t idx, struct message_t message){
// Debug // Debug
/*char message_en_clair[1024]; char message_en_clair[1024];
message_to_string(message, message_en_clair); //message_to_string(message, message_en_clair);
printf("%s\n", message_en_clair);*/ //printf("%s\n", message_en_clair);
if(message.type == '>'){ if(message.type == '>'){
char message_en_clair[1024]; char message_en_clair[1024];
@ -64,6 +64,7 @@ void traiter_les_messages(uint8_t idx, struct message_t message){
for(int i=0; i<message.taille_donnees; i++){ for(int i=0; i<message.taille_donnees; i++){
log_buffer->tampon_echange[message.adresse_registre + i] = message.donnees[i]; log_buffer->tampon_echange[message.adresse_registre + i] = message.donnees[i];
} }
//printf(">d:%d\n",log_buffer->tampon_echange[0]);
} }
if(message.type == 'd'){ if(message.type == 'd'){
@ -122,8 +123,7 @@ void cdc_app_task(void) {
log_analyse(idx); log_analyse(idx);
while(message_disponible()){ while(message_disponible()){
message = get_message(); message = get_message();
traiter_les_messages(idx, message); traiter_les_messages(idx, message);
} }
} }

View File

@ -2,7 +2,7 @@
#include "pico/platform/panic.h" #include "pico/platform/panic.h"
#include "pico/stdlib.h" #include "pico/stdlib.h"
#include "messagerie.h" #include "messagerie.h"
#include "log_usb.h" #include "com_usb.h"
#include <stdio.h> #include <stdio.h>
@ -113,6 +113,12 @@ void augmente_index(unsigned int *index, unsigned int offset){
} }
void log_analyse(const char idx){ void log_analyse(const char idx){
//printf("log_analyse %d\n", idx);
static absolute_time_t current_time_us, start_time_us=0;
current_time_us = get_absolute_time();
//printf(">a:%lld\n", current_time_us-start_time_us);
start_time_us = current_time_us;
// Les données sont dans le tampon tournant // Les données sont dans le tampon tournant
// Nous les copions dans une seconde mémoire pour les analyser. // Nous les copions dans une seconde mémoire pour les analyser.
// Si un message est trouvé : // Si un message est trouvé :
@ -137,7 +143,12 @@ void log_analyse(const char idx){
index_chaine = 0; index_chaine = 0;
// Copie des données // Copie des données
while(index != p_log_bufffer->index_tampon_ecriture){ if(index != p_log_bufffer->index_tampon_ecriture){
while(index != p_log_bufffer->index_tampon_ecriture){
chaine[index_chaine] = p_log_bufffer->tampon[index];
index_chaine++;
increment_index(&index);
}
chaine[index_chaine] = p_log_bufffer->tampon[index]; chaine[index_chaine] = p_log_bufffer->tampon[index];
index_chaine++; index_chaine++;
increment_index(&index); increment_index(&index);
@ -213,4 +224,5 @@ void log_analyse(const char idx){
} }
augmente_index(&(p_log_bufffer->index_tampon_lecture), fin_message); augmente_index(&(p_log_bufffer->index_tampon_lecture), fin_message);
//printf("Fin log_analyse %d\n", idx);
} }

2
main.c
View File

@ -32,7 +32,7 @@
#include "tusb.h" #include "tusb.h"
#include "ff.h" #include "ff.h"
#include "f_util.h" #include "f_util.h"
#include "log_usb.h" #include "com_usb.h"
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
// MACRO CONSTANT TYPEDEF PROTYPES // MACRO CONSTANT TYPEDEF PROTYPES