ソースファイル[Pico_SDR_CIC]をARM GCC コンパイルしました。
プログラム内容は【ADC0】信号をデジタル変換それぞれ[SIN][COS]乗算
→【CICフイルタ】→[I][Q]→√(I²+Q²)計算、信号を復調し[PICO_PWM]からオーディオアンプに出力しています。
●ZEPエンジニアリング株式会社:
スーパーヘテロダイン接続 プログラム検波
ZEPエンジニアリング株式会社公開
プログラム書込・実行
●Pico Digital Boardプログラムダウンロード:【5_PicoStackSDR_program.zip】
5_PicoStackSDR_program>PicoStackSDR_program>bin
●プログラムの書込みは基板に電源が供給した状態で【BOOTSEL】ボタンを押したままUSBコネクタをRaspberry Pi Picoに接続しボタンを離すと【RPI-RP2】が現れます
「または、USBを接続した状態で【BOOTSEL】ボタンを押したまま【RUN】(リセット)ボタンを一度押して【BOOTSEL】ボタンを離す」
●【Pico_SDR_CIC.uf2】→【RPI-RP2】ドラッグ・アンド・ドロップすると書込・実行。タクトスイッチを操作すると周波数と音量を変更できます。
ソースファイルのコンパイルについて
●事前にSDKとサンプル・プログラムをインストールする。
同ブログ関連記事:【Raspberry Pi Pico開発環境 ( ARM GCC コンパイル)】
●PicoStackSDR_program>source中に3つのソースファイルがありますが、これだけではコンパイルできません。
[CMakeLists][Pico_SDR_CIC]ファイルがあります。
次に【pico-examples】フォルダの[pico_sdk_import]ファイルをコピーします。
[GCC 10.3.1 arm-none-eabi]クリック
【Pico_SDR_CIC】フォルダに
[pico_sdk_import]ファイルを貼付けます。
次にフォルダ内[CMakeLists]リストを編集します。
Pico_SDR_CIC>CMakeListsリスト
add_executable(Pico_SDR_CIC Pico_SDR_CIC.c)
# Pull in our pico_stdlib which aggregates commonly used features
target_link_libraries(Pico_SDR_CIC pico_stdlib pico_multicore hardware_gpio hardware_timer hardware_adc hardware_pwm hardware_i2c hardware_irq hardware_dma)
# enable usb output, disable uart output
pico_enable_stdio_usb(Pico_SDR_CIC 1)
pico_enable_stdio_uart(Pico_SDR_CIC 0)
# create map/bin/hex/uf2 file etc.
pico_add_extra_outputs(Pico_SDR_CIC)
pico-examples>CMakeLists リストの先頭から
↓
# Initialize the SDK
pico_sdk_init()
までコピーしてPico_SDR_CIC>CMakeListsリストの先頭に貼付
pico-examples>CMakeLists リスト追加部分
コンパイルエラーが発生するので
include(pico_extras_import_optional.cmake)先頭に#をつけてコメントアウトにする。
cmake_minimum_required(VERSION 3.12)
# Pull in SDK (must be before project)
include(pico_sdk_import.cmake)
# include(pico_extras_import_optional.cmake)
project(pico_examples C CXX ASM)
set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_STANDARD 17)
if (PICO_SDK_VERSION_STRING VERSION_LESS "1.3.0")
message(FATAL_ERROR "Raspberry Pi Pico SDK version 1.3.0 (or later) required. Your version is ${PICO_SDK_VERSION_STRING}")
endif()
set(PICO_EXAMPLES_PATH ${PROJECT_SOURCE_DIR})
# Initialize the SDK
pico_sdk_init()
Pico_SDR_CIC>CMakeLists 追加後のリスト
cmake_minimum_required(VERSION 3.12)
# Pull in SDK (must be before project)
include(pico_sdk_import.cmake)
# include(pico_extras_import_optional.cmake)
project(pico_examples C CXX ASM)
set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_STANDARD 17)
if (PICO_SDK_VERSION_STRING VERSION_LESS "1.3.0")
message(FATAL_ERROR "Raspberry Pi Pico SDK version 1.3.0 (or later) required. Your version is ${PICO_SDK_VERSION_STRING}")
endif()
set(PICO_EXAMPLES_PATH ${PROJECT_SOURCE_DIR})
# Initialize the SDK
pico_sdk_init()
add_executable(Pico_SDR_CIC Pico_SDR_CIC.c)
# Pull in our pico_stdlib which aggregates commonly used features
target_link_libraries(Pico_SDR_CIC pico_stdlib pico_multicore hardware_gpio hardware_timer hardware_adc hardware_pwm hardware_i2c hardware_irq hardware_dma)
# enable usb output, disable uart output
pico_enable_stdio_usb(Pico_SDR_CIC 1)
pico_enable_stdio_uart(Pico_SDR_CIC 0)
# create map/bin/hex/uf2 file etc.
pico_add_extra_outputs(Pico_SDR_CIC)
Windowsスタート・メニューから【すべてのアプリ >】【Visual Studio 2022】【Developer Command Prompt for VS 2022】起動。
【code】インプット
Visual Studio から
Pico>Pico_SDR_CICフォルダを開く
『Build finished....... 』
【build】フォルダと[Pico_SDR_CIC.uf2]実行ファイルが作成される。
0 件のコメント:
コメントを投稿