-
Постов
1 454 -
Зарегистрирован
-
Посещение
-
Победитель дней
2
Весь контент esaulenka
-
Работа с void указателем
esaulenka ответил jenya7 тема в Программирование
Коллега, внимательнее! Там вся структура из 8-битных переменных, паддинга между ними нет. А вот то, что гражданин "гуру" взял значения из uint8_t flimsw_state; uint8_t rlimsw_state; и двух последующих байт (которые случайно опять оказались нулевыми) и опять не понял, что произошло - ну, увы, тут половина тем таких... -
STM32H743ZI и VBAT Charging
esaulenka ответил BioWolf2000 тема в ARM, 32bit
Это означает, что они внедрили супер-интеллектуальную схему зарядки в виде резистора между Vdd и Vbat. Подключением резистора, вроде б, можно программно управлять. Можно ли на этот ваш аккумулятор подавать 3.3 вольта (пусть и через резистор) - надо думать. Кажется, нельзя. -
Вот он, голос разума! :-) https://en.cppreference.com/w/cpp/numeric/math/NAN https://en.cppreference.com/w/cpp/numeric/math/INFINITY
-
Непонятки с оператором if()...
esaulenka ответил khlenar тема в ARM, 32bit
Потому что он знает, что этот int никогда не может быть отрицательным, и нет никакой разницы, применять ASRS или LSRS. -
Помогите найти микросхему
esaulenka ответил Алекс__ тема в В помощь начинающему
У меня дурацкий вопрос (раз уж тема для начинающих). Как это читать? То есть одну строку я могу прочитать, вторую могу. Две сразу - не могу :-) Хотя, кажется, никому из отвечающих затруднений это не составило...- 9 ответов
-
- микросхема
- схемотехника
-
(и ещё 3 )
C тегом:
-
Непонятки с оператором if()...
esaulenka ответил khlenar тема в ARM, 32bit
Вот у одного меня возникает вопрос "что хотел сказать автор" ? Как мне кажется, if (! (ind & 0x01)) куда более читаемо (и компилируется сразу без ошибок). О том, что, например, ind & 0x04 понятнее, чем ind | 0xFB, вообще молчу... -
Придётся найти список движков скриптовых языков, и разобраться хотя бы в одном из них. Лучше уж свой велосипед бесконечно пилить...
-
Спирит, действительно, похоже весьма сложный (не доводилось использовать), а в целом Буст - очень качественная библиотека. Хорошая документация, примеры, продуманное API без побочных эффектов. Главное - внутрь не смотреть, там внутри действительно страшно :-)
-
Ну проверьте. Ставим level2, запускаем ст-линк, и... Ой! can't connect to target! Jtag-то мы своими руками отключили... Гадание на кофейной гуще, но, возможно, Вы не настроили (или настроили неправильно) тактирование LCD. Ему нужен медленный тактовый сигнал. Подробности - в reference'е (разделы RCC и LCD), и, вероятно, в кубе.
-
Ошибка в том, что я был невнимателен. Arlleex и компилятор правы, возвращать надо не сам указатель (конечно же), а значение, на которое он указывает.
-
Можно пример? Не могу сказать, что знаю всё, но всё, что я видел (и контроллеры, и отдельные м/с памяти) по команде "стереть" выставляют 0xff. Инвертировать внутри бит несложно (и даже иногда было б удобнее), но я ни разу с таким не сталкивался. Держите: uint8_t read_byte(uint32_t addr) { return (volatile uint8_t *)addr; }
-
TPS562200. Покритикуйте топологию.
esaulenka ответил zombi тема в В помощь начинающему
Осталось выяснить отличия switching current и switching voltage. Ну и вообще прояснить, зачем там C7. -
Да, исходное состояние бита флеш-памяти (любой) - единичка. На всякий случай напомню, что для NOR-памяти (используется в подавляющем большинстве контроллеров, в т.ч. и в этой ST'шке) в одну и ту же ячейку можно записывать только один раз. Потом - стирание. Для NAND памяти ограничение ещё жёстче - единовременно надо записывать целиком страницу.
-
О, спасибо. Не сильно задумывался (и не проверял, что будет, если его игнорировать), но требование, действительно, на первый взгляд, избыточное.
-
PIC16F690+MPU6050
esaulenka ответил R3M0ND тема в MCS51, AVR, PIC, STM8, 8bit
Было бы неплохо указывать, что "датчик" - это, по-вашему, некая отладочная плата. Большинство присутствующих под MPU6050 понимают соответствующую микросхему. У которой в даташите английским языком написано Vdd max 3.46V. И, к слову, в разделе absolute maximum ratings традиционное ограничение Input Voltage Level (CLKIN, AUX_DA, AD0, FSYNC, INT, SCL, SDA) -0.5V to VDD + 0.5V Впрочем, для I2C, если не ошибаться, это не очень страшно. -
Занимательная арифметика: 0x0800 0000 + 0х800*0x127 = 0х0809 3800 0x0800 0000 + 0х800*127 = 0х0803 F800 А в остальном всё верно.
-
Завести свою собственную переменную, назвать её "предыдущее значение счётчика". По какому-то событию взять текущее значение счётчика DMA, вычислить их разницу (не забыть, что он бегает "по кругу"), прочитать новые данные. Сохранить "новый" счётчик в переменную "старый счётчик". Да, события - это не только IDLE, но и заполнение (или даже половина заполнения) буфера, если пакет длинный. Никак. В кольцевом режиме оно "само" прыгнет на начало, когда надо. PS никогда не пользовался прерыванием IDLE. Это действительно событие "пришёл старт-бит после длинной паузы", как описано в референсе ? А если у меня между пакетами полчаса будет, все полчаса ждать? Как же всё у них через задницу...
-
Кейлы, иары, 100500 разных эклипсов, MSVS, VSC, QtC, силайон, нетбинс, кодеблокс... Неужели поиск совсем-совсем не работает?..
-
BlueNRG (order code BLUENRGQTR) и BlueNRG-MS (order code BLUNRG-MSQTR) - это, фактически, одно и то же. Второй пришёл на смену первому (поддержка протокола 4.1, какие-то багфиксы). Первый, кажется, уже не производят (мы три года назад (!) уже закладывали MS). Внутри Cortex-M0 с радиоканалом и своей собственной прошивкой, снаружи SPI-slave. Верхняя часть стека должна выполняться на внешнем контроллере. BlueNRG-1 и BlueNRG-2 - попытка ST'шников догнать и перегнать NRF51/52 и CC13xx. Можно написать и загрузить свой собственный софт, т.е. для простых приложений второй контроллер не нужен. Как оно работает, не знаю, даже отладку запускать не пробовал.
-
Разговор, напомню, начался с фразы "либы для хост-контроллера бинарные". Весь софт для хост-контроллера открыт. Основное можно посмотреть здесь: x-cube-ble1.zip\X-CUBE-BLE1\Middlewares\ST\STM32_BlueNRG Как скачать x-cube-ble1.zip, думаю, разберётесь. Да, прошивка самого чипа закрытая. Но и у TI, и у NRF точно такой же закрытый бинарник именно ядра протокола. Silabs никогда не смотрел, не знаю. Ну и открытый стек именно на этих BlueNRG вряд-ли кто-то сделает. Документация внутренностей отсутствует напрочь.
-
Если ВЫ заметили, речь о том, что API BlueNRG и BlueNRG-MS полностью открыт.
-
Продажники уже сколько-то там тыщщ устройств с этим BlueNRG уже напродавали, а я так и не разобрался, что же именно скачал. Спасибо, что открыли мне глаза.
-
Правда, что-ли? А каким образом я скачал их библиотеку с API в исходниках? И вообще, там по SPI бегает вполне стандартный протокол, описанный в спецификации блютус (в документации ST так и написано: команды такие-то - в официальной спецификации). Говорить за всех - крайне вредная привычка. Если лишний процессор на плате не пугает (судя по BlueNRG-1, не пугает), рекомендую нордик. У них куча примеров, и с требованиями "мне всё равно что, лишь бы байты переслать" сделать что-нибудь готовое можно очень быстро.
-
и снова CUSD
esaulenka ответил blox тема в Сотовая связь и ее приложения
dcs=8 - это корректно? TS 23.038 Alphabets and language-specific information в разделе Cell Broadcast Data Coding Scheme нам сообщает 0000 1111 - Language unspecified (т.е. похоже на значение по умолчанию, 15) 0000 1000 - Portuguese (фигня какая-то). При этом dcs=15 работает. Кодировка в модеме - UCS2. Почему на отправку не работает dcs=72 (0100 1000 - General Data Coding indication, UCS2, class 0), не понимаю. Принятые USSD приходят именно с таким dcs. Чёртов симком. Параметры этой команды в руководстве толком не расписаны. Извольте читать стандарты, о существовании которых вы можете узнать из интернетов или из чтения документации каких-то других производителей.