да, я это знаю собственно поэтому тот первый таймер и не делал с точностью до такта... а сейчас больше теоретические замашки... думаю, что 20кГц на выходе смогу достичь...
_________________ Просто не учи физику в школе, и вся твоя жизнь будет наполнена чудесами и волшебством Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
точность внутреннего генератора тут совершенно ни при чем - всегда можно поставить внешний кварц.
До того как написать, что tiny13 по-прежнему достаточно Ivanoff-iv также говорил, что будет в эту тиньку утрамбовываться код... Зачем его утрамбовывать, если не собираешься делать именно на ней? В протеусе смысла выбирать тиньку вообще никакого, если же собирать в реальном железе, то кварц не поставишь, а без него любая попытка измерений генерируемого сигнала будет упираться в нестабильный встроенный генератор...
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Вот Спойлер Измерьте желтый участокПримерСпойлер Частота МК 16МГц (точное значение 16252928 Гц) Частота сигнала 7981 Гц Частота прерывания таймера 262144 Гц Расчетный джиттер 1/262144 = 3,81 мкс, 1 прерывание таймера В данном примере используется 24 битный сумматор, шаг (шаг сумматора) перестройки 0,015625 Гц
Еще раз хочу напомнить NCO-модуль в PIC качается от 16МГц, а AD9833 от 25МГц. На stm32f030 (тактовая 72МГц) мне удалось выжать 3МГц (частота прерывания таймера).
Для сравнения, разгоняем протеус Частота МК 520МГц (точное значение 520093696 Гц) Частота сигнала та же, 7981 Гц Частота прерывания таймера 8388608 Гц (чуть больше 8 МГц) Расчетный джиттер 1/8388608 = 0,12 мкс, 1 прерывание таймера В данном примере используется 24 битный сумматор, шаг (шаг сумматора) перестройки 0,5 Гц
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Ээээ, меня за усы тянуть не надо! что такое джиттер я в курсе у меня где ты такой джиттер нашел?
Добавлено after 1 minute 43 seconds: тини13 - психологическая граница код не взорвётся, нсли я его в другой проект утяну...
_________________ Просто не учи физику в школе, и вся твоя жизнь будет наполнена чудесами и волшебством Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
_________________ Просто не учи физику в школе, и вся твоя жизнь будет наполнена чудесами и волшебством Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Ivanoff-iv, я изначально говорил, что это делительСпойлерс ростом частоты растет погрешностьмало того еще и господину Reflector говорил - заставьте таймер в stm32 работать в режиме сумматора. Ivanoff-iv, я могу синтезировать частотуСпойлерЧастота МК 16МГц (точное значение 16252928 Гц) Частота сигнала 7981 Гц Частота прерывания таймера 262144 Гц Расчетный джиттер 1/262144 = 3,81 мкс, 1 прерывание таймера В данном примере используется 24 битный сумматор, шаг (шаг сумматора) перестройки 0,015625 Гц от 0,015625 Гц до 131072 Гц с шагом 0,015625 Гц на всем протяжении диапазона. Помимо того еще и не только с генерировать синус но и любой другой сигнал (пилообразный, треугольный, пользовательский).
Да, соглашусь, это хоть и не простейший, но делитель... сейчас его переделываю... на С желаемых характеристик добиться не смог, не хочет содержимое прерывания гарантированно укладываться в 128 тактов МК... хотя там одно условие, одно суммирование и одно присвоение... (я знаю почему оно не влазит... можно не объяснять). по синтезу частоты: у МК остается время на что-то ещё?
_________________ Просто не учи физику в школе, и вся твоя жизнь будет наполнена чудесами и волшебством Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
да все там влазит, даже 20кГц вытягивает. Reflector хотел что бы я его от 72Мгц кочегарнул, вот кочегарнул, пусть смотритСпойлерСпойлерТестовый код Атмега168 Тактовая МК 16 МГц
unsigned long int tTim;//=12000000/Frq; //вычисляем период unsigned char tOst;//=tTim; //последний байт (до256)
void Calc(void) //вычисляем период и довесок { tTim=8000000UL/Frq; tOst=tTim; tOst>>=1; //делим на 2 tOst|=0x80; //прибавим 128 (вычисляем довесок) //у нас 2 довеска - сумма их как-раз и получится 1 полный оборот и остаток (но их пришлось делить на 2 т.к. трудно обработать 2 близко стоящих прерывания) tTim>>=8; //делим период на 256 cli(); Tim=tTim; //выводим в буфера Ost=tOst; sei(); };
ISR(TIMER2_COMPA_vect) // Шаг 0,0625 us { if (countS) {countS--;} else { countS=Tim; //взводим таймер обратно Out(); //работаем работу }; OCR2A=(countS<2)? Ost:0xff; //выбираем скорость таймера
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 46
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения