Size: a a a

🎄Embedded Group

2021 January 24

r

romanetz in 🎄Embedded Group
Тюлень Здоровенный
Товарищи, кто может намекнуть, как на ПЛИС реализовать управляемый генератор меандра с частотой 1-255 Гц с шагом в 1 Гц?
NCO?
источник

r

romanetz in 🎄Embedded Group
Регистр, к нёму каждый такт плюсуем не единицу, а fout/fsample*2^reg_bits
источник

r

romanetz in 🎄Embedded Group
Выход берём со старшего разряда
источник

r

romanetz in 🎄Embedded Group
По-правильному, надо ещё младшие разряды тоже учитывать, а то джиттер будет
источник

P

Ponytale 🇷🇺 in 🎄Embedded Group
счетчик от 0 до 511, делителями период счета подобрать = 1/512 сек, и сравнениями - первое сравнение(T1) - перекидываем уровень пина, второе сравнение(T2) - перекидываем пин и обнуляем счетчик. T2 = 2*T1 = 2*(256 - f)

как-то так по-простому если
источник

P

Ponytale 🇷🇺 in 🎄Embedded Group
uint8_t buf[22];
uint16_t aaa = *((uint16_t *) &buf[20]);

gcc: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]

а чего, как бы это по-красивше сделать чтобы он не ругался? union не хочется в этом месте
источник

Х

Х in 🎄Embedded Group
Alexander
Счетчик забубенить и на входе частоту задрать, например, на мегагерц?
А получится точно? мне кажется там у встроенных делителей частоты очень ограниченные величины числителя и знаменателя обычно. Типа не более 31, ну и смотреть какие промежуточные частоты при умножении.
А чтобы чисто счётчиками, то нужна частота равная наименьшему общему кратному всех чисел от 1 до 255, если не путаю, а это много.
источник

P

Ponytale 🇷🇺 in 🎄Embedded Group
не встроенными а собственными делителями...
источник

Х

Х in 🎄Embedded Group
А вообще да, задать тактовую мегагерц 200 и выбрать 255 констант для счётчика, которые максимально близко попадут. Если нет требований к точности.
источник

P

Ponytale 🇷🇺 in 🎄Embedded Group
вопрос погрешностей остается, но какая там вооще точность нужна чтобы сотни МГц в сотни Гц превратить???
источник

Х

Х in 🎄Embedded Group
Ponytale 🇷🇺
вопрос погрешностей остается, но какая там вооще точность нужна чтобы сотни МГц в сотни Гц превратить???
Ну может он часы делает...
источник

P

Ponytale 🇷🇺 in 🎄Embedded Group
Х
Ну может он часы делает...
с кукушкой? :)
источник

ТЗ

Тюлень Здоровенный... in 🎄Embedded Group
Х
Ну может он часы делает...
Не.)
источник

ТЗ

Тюлень Здоровенный... in 🎄Embedded Group
Просто ради интереса. Вот хочу понять как и в XILINX результат получить.
источник

s

shadowsoul in 🎄Embedded Group
Ponytale 🇷🇺
с кукушкой? :)
с поехавшей?
источник

P

Ponytale 🇷🇺 in 🎄Embedded Group
shadowsoul
с поехавшей?
я ждал😂
источник

Х

Х in 🎄Embedded Group
Тюлень Здоровенный
Просто ради интереса. Вот хочу понять как и в XILINX результат получить.
Какие требования то? Чем не устраивает вариант со счётчиком до заданного значения?
источник

S

Sven in 🎄Embedded Group
for this adapter for the jlink I once designed a 3D case to print.  https://github.com/JimKnopfIoT/j-link-JTAG-3D-printable-case  / Для этого адаптера для jlink я разработал 3d футляр для печати
источник

ТЗ

Тюлень Здоровенный... in 🎄Embedded Group
Х
Какие требования то? Чем не устраивает вариант со счётчиком до заданного значения?
Да нет особых требований. Просто интересно и все.)

Т.е. если тактовая частота 1 МГц, то мне нужно ставить 1 на выход, считать 1953 тактовых импульса и ставить `0`на выход и так по кругу?
А если управляющий сигнал восьмибитный, то тогда нужно запихивать массив из 256 значений?
Сильно не бить. Тюлешек нельзя бить.
источник

Х

Х in 🎄Embedded Group
Тюлень Здоровенный
Да нет особых требований. Просто интересно и все.)

Т.е. если тактовая частота 1 МГц, то мне нужно ставить 1 на выход, считать 1953 тактовых импульса и ставить `0`на выход и так по кругу?
А если управляющий сигнал восьмибитный, то тогда нужно запихивать массив из 256 значений?
Сильно не бить. Тюлешек нельзя бить.
Типа того. Только учти, что длинные счётчики, под 20+ бит работают медленно и надо внимательно смотреть потянет ли на нужной частоте. Но на 1 МГц точно потяет.
источник