scifi
Свой-
Постов
3 085 -
Зарегистрирован
-
Посещение
-
А чем LDRD лучше? Всё равно регистры будут читаться по очереди.
-
Как-то так: uint32_t low, high, high2; high = ETH->PTPTSHR; do { high2 = high; low = ETH->PTPTSLR; high = ETH->PTPTSHR; } while (high != high2); См. тут, например: https://electronics.stackexchange.com/questions/3849/reading-a-16-bit-timer-on-an-8-bit-mcu
-
Прямо как партизан. Даже под пытками не выдаёт информацию. 1) Какая переменная? 2) В каких файлах? 3) Какое сообщение об ошибке? Дословно.
-
Может, лампочкой подмигнуть и фотодатчиком поймать?
-
Какие же претензии к компилятору? Уж он тем более запутается Этот 8051 - древнее г. мамонта. Он и так кривой сам по себе, а этот сайпресс сделал его ещё немного кривее. Давно я с ним работал, подзабылось. Вспоминать совсем не хочется...
-
Нельзя ли сделать функцию (с асм-вставками?), которая пишет что надо и куда надо? Уж это компилятор точно не сможет пресечь.
-
Идите на сайт Murata. Они на огромное множество своих конденсаторов выкладывают кучу графиков, в том числе C(V). Кстати, ещё одну страшилку расскажу. У керамических конденсаторов (не у всех) ёмкость уменьшается со временем по логарифмическому закону. Погуглите, будет интересно.
-
6,3 В - это тоже жадность. Конечно, 25 В лучше. Типоразмер имеет значение на гигагерцах или сотнях МГц . Раньше вообще только выводные компоненты были - и ничего.
-
Ёмкость на входе чем больше - тем лучше. Ограничивают только из жадности. Ёмкость на выходе может повлиять на стабильность, там надо внимательно изучать рекомендации производителя.
-
У меня сложилось ощущение, что ТС почему-то решил, что конденсаторы у кварца - это то же самое, что и конденсаторы у ножек питания. Отсюда и непонятки.
-
Заглянул, никаких правил не увидел. Может быть, не туда смотрел. Нет никакой мистики в трассировке кварца. По-всякому можно делать, лишь бы не совсем безобразно. Если место поджимает, то да, 0402 более лучше, чем 0603. А если место есть, можно вынести кварц чуть подальше, и пусть хоть 0805. Про вычисление номинала конденсаторов там всё написано, читайте. Ну и да, NP0 более лучше, чем X7R.
-
Если есть возможность перевести МК в режим заводского загрузчика и подцепить к нему снаружи хитрую штуку, то эта хитрая штука сможет проделывать вот это всё, даже не трогая старую прошивку.
-
Это прекрасно. Но имелось в виду "надо поменять порядок инициализации". Очевидно, здесь тоже надо поменять порядок инициализации. Сначала COMP, а затем, после завершения переходных процессов при его включении, настраиваем прерывание.
-
Очевидно, нужно сначала 1) COMP_CSR_EN, затем 2) задержка на переходные процессы, затем 3) сконфигурировать 57 ногу как Alternate Function.
-
На кортексах есть core_cmInstr.h, оч. помогает. Кстати, у gcc есть __builtin_clz(). Для тех, кто любит разгонять, советую изучить опцию gcc -mslow-flash-data. По моим измерениям ускорило на несколько процентов. Интересно, в яре есть такая штука?