Ардуинщики всех стран - объединяйтесь! В этом форуме, конечно.
Ответить

MiniCore и разные кварцы

Чт сен 08, 2022 16:23:10

Как известно МиниКоре Гайвера позволяет выбрать кварцы, которым будет тактироваться МК. Не совсем укладывается у меня в голове этот процесс. Как я понимаю, омжет быть не верно, Среда ИДЕ должна пересчитать тайминги исходя из заявленного кварца. Т.е БЛИНК, что с кварцем 16мгц, 20, 12 должне моргать с одинаковой задержкой. Правильно ли я это понимаю?

Re: MiniCore и разные кварцы

Чт сен 08, 2022 16:30:28

Ну, это ведь ограничено возможностями делителей и умножителей, надо по каждому МК смотреть индивидуально.

Re: MiniCore и разные кварцы

Чт сен 08, 2022 16:32:38

olegue писал(а):ак известно МиниКоре Гайвера
А не логичней у всяких гайверов, касьянов и проч блохеров у них самих спрашивать про их поделки?

Re: MiniCore и разные кварцы

Чт сен 08, 2022 16:40:52

А кто такие, эти гайверы? Мы такого кушания не едали...
Там в коде есть некий дефайн или переменная, равная установленной частоте МК, и от нее через математические формулы завязаны коэффициенты в софтовых делеях или делителях таймеров.

Re: MiniCore и разные кварцы

Чт сен 08, 2022 17:28:24

Подключаете MK к выбранного кварцевого резонатора, подключаете к программатору, выбираете из меню все параметри, програмируете загрузчик. Записываете данные где-нибудь на листе бумаги -> должны установить эти параметры для каждой настройки. Все объявленные функции с отчетами о времени (delay(), millis(), micros(), tone() ...) автоматически пересчитываются к частоты выбранного нового кварцевого резонатора.
Вложения
q.jpg
(150.46 KiB) Скачиваний: 46

Re: MiniCore и разные кварцы

Чт сен 08, 2022 22:01:19

Правильно ли я это понимаю?

Правильно понимаете. Частота указывается в настойках. build.f_cpu=16000000L, например. Можете выбрать нестандартный кварц и изменить/добавить в настройках. Только тогда придётся писать программатором.

Re: MiniCore и разные кварцы

Пт сен 09, 2022 11:26:06

veso74, да именно эта картинка

OKF, программирую черз USBasp

Но тут косяк наверно в самом коде, скорее всего идет привязка конкретно к этой частоте.

Код:
#include <SPI.h>
#include <RF24Audio.h>
RF24 radio(7,8);
RF24Audio rfAudio(radio,0);

void setup() {     
  radio.begin();
  rfAudio.begin();
  rfAudio.receive();
}

void loop(){}


а вот собственно и сам "проблемный" , как я полагаю , код

RF24Audio.h

во вложении
Вложения
RF24Audio.h.txt
(24.54 KiB) Скачиваний: 38

Re: MiniCore и разные кварцы

Пт сен 09, 2022 11:59:55

"Сторонние библиотеки" рассчитываются на работу со "стандартными" платформами ардуинок.
Посему могут быть скрытые привязки к базовой частоте кварца на уровне аппаратных модулей МК
или чего еще неожиданного.
Если применяем модифицированные платформы - придется вычитывать и их особенности у их авторов...
:roll: :roll:

Re: MiniCore и разные кварцы

Пт сен 09, 2022 13:59:22

Все должно быть нормально и пересчитываться автоматически:
в nRF24/RF24Audio -> параметры через F_CPU
в MCUdude/MiniCore -> f_cpu через меню - выбранной частоты кварца

О Вашем коде (RF24Audio.h.txt): не знаю, нет возможности попробовать. Попробуйте, поделитесь результатом.

Re: MiniCore и разные кварцы

Пт сен 09, 2022 14:40:12

veso74, подскажите пож., вероятно вы можете сказать навскидку , на залазя делко в Даташиты. Атмега88, Атмега168, Атмега328 - отличаются только объемом ПЗУ?
или есть еще какие то отличия в плане производительности?

Re: MiniCore и разные кварцы

Пт сен 09, 2022 14:46:00

Так сравнивать их нельзя :), как например на рынке: какие помидоры зеленые, а какие красные ... :) (+ перевод). Вы решаете обратную задачу: есть идея, пишете/добавляете код, чтобы это работало с "меньшим" процессором. Инженерная работа - "наоборот": у Вас есть задача, выбираете комплектующие (MCU и др.) по функции и требуемым параметрам.

Конечно, MCU различаются, и чем именно, Вам подскажет обзор их документации.
на первой странице поисковика: AVR095: Migrating between ATmega48, ATmega88 and ATmega168
Последний раз редактировалось veso74 Пт сен 09, 2022 14:50:08, всего редактировалось 2 раз(а).

Re: MiniCore и разные кварцы

Пт сен 09, 2022 14:48:17

я прикинул, что этот скечть вполне можно запихнуть в 88 Атмегу, тем более что она у меня была

Скетч использует 5470 байт (71%) памяти устройства. Всего доступно 7680 байт.
Глобальные переменные используют 235 байт (22%) динамической памяти, оставляя 789 байт для локальных переменных. Максимум: 1024 байт.


но я при этом обнаружил что с битрейтом 24000 и скоростью RF_SPEED RF24_1MBPS звука проктически нет - одно похрипывание.
При переходе на sr 16000 и RF24_250кBPS получил нормальный звук.

А вот на китайском аналоге ардуино НАНО - Lgt8f328 - результат на sr24000 и скорости RF_SPEED RF24_1MBPS результат был хороший.

Вот у меня и закралось сомнение нет ли отличить в прозиводительности Атмега88 и Атмега328.

Re: MiniCore и разные кварцы

Сб сен 10, 2022 08:31:34

Lgt8f328 даже от классической 328й отличается...
8)
Ответить