import time
import rp2
from machine import Pin
@rp2.asm_pio(set_init=rp2.PIO.OUT_LOW)
def blink():
wrap_target()
set(pins, 1)
set(pins, 0)
wrap()
sm = rp2.StateMachine(0, blink, freq=2500,set_base=Pin(28))
sm.active(1)
Вот пример на micropython 28 pin вывод чатсоты в зависимости от количества циклов
и тактовой частоты, на выходе 1250 Hz
Вариант 2 тактовая 125000000
import time
import rp2
from machine import Pin
@rp2.asm_pio(set_init=rp2.PIO.OUT_LOW)
def blink():
wrap_target()
set(pins, 1) [31]
set(pins, 0) [31]
wrap()
sm = rp2.StateMachine(0, blink, set_base=Pin(28))
sm.active(1)
На выходе
We are going to program a state machine so that it sets the output to its high state for 32 cycles or 256 ns (1 cycle = 1/125000000 Hz = 8 ns) and then it sets the output to its low state for 32 cycles as well. The square wave frequency will therefore be 1/0.000000512 s = 1.953 MHz.
Администратор запретил публиковать записи.
Синтезатор частоты на Raspberry Pi Pico
20 Дек 2023 14:15 #61478
В топике я предлагаю синтезатор частоты с диапазоном перестройки от 1 до 32 МГц и шагом установки частоты существенно менее 1 Гц.
Понятно, что есть разные, в том числе простые способы генерации определенных частот при помощи Pico на базе целочисленного деления тактовой частоты. Но нам требуются вполне определенные частоты в радиолюбительских участках, например 18106055 Гц. Простыми методами деления таких частот не получить.
//Роман
Администратор запретил публиковать записи.
Синтезатор частоты на Raspberry Pi Pico
20 Дек 2023 14:29 #61479
А есть функция, которая расчитывает автоматически, на сколько делить тактовую?
Просто в описаннии что я читал, написанно, что можно получить исходную частоту на выходе играясь количеством тактов и тактовой частотой, мне для теории.
Последнее редактирование: 20 Дек 2023 14:31 от ingfa.
Администратор запретил публиковать записи.
Синтезатор частоты на Raspberry Pi Pico
20 Дек 2023 23:21 #61482
Подготовил версию синтезатора 1.1 beta, в которой немало нововведений, реализованных по итогам сбора замечаний и предложений как на странице проекта github.com/RPiks/pico-hf-oscillator , так и в этой теме.
Что нового:
1. Макс. рабочая частота увеличена с 9.4 до 32.333 МГц. Шаг установки частоты остался прежним (23 милли-Герц, в терминале 1 Гц).
2. Реализована текстовая консоль для управления синтезатором. Теперь для тестирования нет необходимости компилировать исходный код проекта, можно просто загрузить на плату микроконтроллера .uf2 - файл из директории /bin/ проекта.
2.1. Включение/выключение режима коррекции частоты по GPS также реализовано в управляющей консоли.
Пример работы с консолью ниже:
//Роман
72!
Последнее редактирование: 24 Дек 2023 00:12 от R2BDY.
Администратор запретил публиковать записи.
Синтезатор частоты на Raspberry Pi Pico
24 Дек 2023 11:03 #61493