add sddc source prototype + add new ATV decoder + fix windows builds

This commit is contained in:
AlexandreRouma
2025-04-23 04:49:45 +02:00
parent aa2b4b1c58
commit e75cc7be6f
24 changed files with 2412 additions and 310 deletions

View File

@ -0,0 +1,14 @@
cmake_minimum_required(VERSION 3.13)
project(sddc_rx)
# Get source files
file(GLOB_RECURSE SRC "src/*.cpp")
# Create executable
add_executable(${PROJECT_NAME} ${SRC})
# Link to librfnm
target_link_libraries(${PROJECT_NAME} PRIVATE sddc)
# Create install directive
install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR})

View File

@ -0,0 +1,38 @@
#include <stdio.h>
#include <sddc.h>
int main() {
// Set firmware image path for debugging
sddc_set_firmware_path("C:/Users/ryzerth/Downloads/SDDC_FX3 (1).img");
// Open the device
sddc_dev_t* dev;
sddc_error_t err = sddc_open("0009072C00C40C32", &dev);
if (err != SDDC_SUCCESS) {
printf("Failed to open device: %s (%d)\n", sddc_error_to_string(err), err);
return -1;
}
// Configure the device
sddc_set_samplerate(dev, 8e6);
// Start the device
sddc_start(dev);
// Continuous read samples
const int bufSize = 1e6;
int16_t* buffer = new int16_t[bufSize];
while (true) {
// Read
sddc_error_t err = sddc_rx(dev, buffer, bufSize);
printf("Samples received: %d\n", err);
}
// Stop the device
sddc_stop(dev);
// Close the device
sddc_close(dev);
return 0;
}